Skip to content

feat(cli): add vercel integration guide command#15108

Merged
bhrigu123 merged 9 commits intomainfrom
cli/marketplace-getting-started-guides
Feb 19, 2026
Merged

feat(cli): add vercel integration guide command#15108
bhrigu123 merged 9 commits intomainfrom
cli/marketplace-getting-started-guides

Conversation

@bhrigu123
Copy link
Copy Markdown
Contributor

@bhrigu123 bhrigu123 commented Feb 18, 2026

Summary

Adds a new vercel integration guide subcommand that displays getting started guides, code snippets, and resource links for marketplace integrations directly in the terminal.

MKT-2684: command to return snippets and getting started guides

  • If the product slug is not provided for the multi-product integrations, or if the framework option is not provided when there are multiple frameworks, we will show an interactive product / framework selection on TTY, since the guides can be too long.
  • We can provide the product ([integration]/[product]) and also the framework (--framework) directly.

Follow ups:

  • Suggest this command upon provisioning complete

Usage

# Single-product integration
vercel integration guide neon

# Multi-product integration (specify product)
vercel integration guide aws/aws-dynamodb

# Select a specific framework guide non-interactively (useful for CI/agents)
vercel integration guide neon --framework nextjs

Features

  • Single-product auto-selection: When an integration has only one product, it's automatically selected
  • Multi-product support: Interactive product selection in TTY mode; explicit <integration>/<product> slug in non-TTY mode
  • --framework / -f flag: Selects a framework guide without interactive prompt — enables one-shot usage for CI pipelines and coding agents (e.g., --framework nextjs, --framework remix, --framework astro, --framework nuxtjs, --framework sveltekit)
  • Resource links: Displays documentation and resource links as clickable terminal hyperlinks (with fallback for unsupported terminals)

Examples

1. aws: No product provided

Screenshot 2026-02-18 at 7 45 28 AM

2. sanity: No framework provided (when multiple exist)

Screenshot 2026-02-18 at 7 46 31 AM

3. sanity: framework provided

Screenshot 2026-02-18 at 10 46 53 AM

4. Incorrect framework option provided

node ~/workspace/cli/vercel/packages/cli/dist/vc.js integration guide sanity --framework sveltekit
Vercel CLI 50.18.2
Error: Framework "sveltekit" not found for "Sanity".
> Available frameworks:
>   nextjs  Next.js
>   astro  Astro
>   svelte  SvelteKit
>   nuxtjs  Nuxt
>   react-router  React Router

Test plan

  • All 15 new guide tests pass
  • All 197 integration command tests pass (no regressions)
  • Manual test: vercel integration guide neon shows formatted guide with interactive framework selection
  • Manual test: vercel integration guide neon --raw outputs raw markdown with no interactive framework selection
  • Manual test: vercel integration guide neon --framework nextjs selects Next.js guide
  • Manual test: vercel integration guide aws/aws-dynamodb shows specific product guide
  • Manual test: vercel integration guide aws prompts for product selection in TTY
  • Manual test: non-TTY without product slug shows error with available products

🤖 Generated with Claude Code

Note

Low Risk Change

This PR adds a new read-only CLI subcommand for displaying integration guides with no changes to authentication, authorization, data handling, or security controls.

  • New vercel integration guide subcommand with framework selection options
  • Type definitions added for guide/snippet/resource link structures
  • Comprehensive unit tests covering error handling and telemetry

Risk assessment for commit 8d81333.

Adds a new subcommand to display getting started guides, code snippets,
and resource links for marketplace integrations directly in the terminal.

Supports single-product (e.g., neon) and multi-product (e.g., aws/aws-dynamodb)
integrations with interactive product selection for TTY environments.

Options:
- --raw: Output raw markdown without terminal formatting (useful for piping)
- --framework / -f: Select a framework guide non-interactively (useful for CI/agents)

New dependencies: marked@15.0.12, marked-terminal@7.3.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bhrigu123 bhrigu123 requested review from a team as code owners February 18, 2026 15:38
@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Feb 18, 2026

🦋 Changeset detected

Latest commit: 8d81333

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
vercel Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 18, 2026

📦 CLI Tarball Ready

The Vercel CLI tarball for this PR is now available!

Quick Test

You can test this PR's CLI directly by running:

npx https://vercel-jlppa3yim.vercel.sh/tarballs/vercel.tgz --help

Use in vercel.json

To use this CLI version in your project builds, add to your vercel.json:

{
  "build": {
    "env": {
      "VERCEL_CLI_VERSION": "vercel@https://vercel-jlppa3yim.vercel.sh/tarballs/vercel.tgz"
    }
  }
}

Python Runtime Wheel

A Python runtime wheel was also built for this PR.
To use in your Python project builds, also set this environment variable:

VERCEL_RUNTIME_PYTHON="vercel-runtime @ https://vercel-jlppa3yim.vercel.sh/tarballs/vercel_runtime-0.5.0.dev1771533101+8d81333-py3-none-any.whl"

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 18, 2026

🧪 Unit Test Strategy

Comparing: f5764de8d81333 (view diff)

Strategy: Affected packages only

✅ Only testing packages that have been modified or depend on modified packages.

Affected packages - 1 (3%)
  1. vercel
Unaffected packages - 39 (98%)
  1. @vercel-internals/get-package-json
  2. @vercel/backends
  3. @vercel/build-utils
  4. @vercel/cervel
  5. @vercel/cli-auth
  6. @vercel/client
  7. @vercel/config
  8. @vercel/detect-agent
  9. @vercel/edge
  10. @vercel/elysia
  11. @vercel/error-utils
  12. @vercel/express
  13. @vercel/fastify
  14. @vercel/firewall
  15. @vercel/frameworks
  16. @vercel/fs-detectors
  17. @vercel/functions
  18. @vercel/gatsby-plugin-vercel-builder
  19. @vercel/go
  20. @vercel/h3
  21. @vercel/hono
  22. @vercel/hydrogen
  23. @vercel/koa
  24. @vercel/nestjs
  25. @vercel/next
  26. @vercel/node
  27. @vercel/oidc
  28. @vercel/oidc-aws-credentials-provider
  29. @vercel/python
  30. @vercel/python-analysis
  31. @vercel/redwood
  32. @vercel/related-projects
  33. @vercel/remix-builder
  34. @vercel/routing-utils
  35. @vercel/ruby
  36. @vercel/rust
  37. @vercel/static-build
  38. @vercel/static-config
  39. examples

Results

  • Unit tests: Only affected packages will run unit tests
  • E2E tests: Running in parallel via E2E Tests workflow
  • Type checks: Only affected packages will run type checks

This comment is automatically generated based on the affected testing strategy

@bhrigu123 bhrigu123 marked this pull request as draft February 18, 2026 15:51
- Add minor changeset for the new `integration guide` command
- Update help snapshots to include guide subcommand in integration help
- Add guide subcommand help snapshot test

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The marked-terminal package does not ship type declarations.
Add a custom .d.ts file following the existing pattern in packages/cli/types/.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@tonypan2 tonypan2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some comments

- Remove marked/marked-terminal deps and --raw flag; always output raw markdown
- Write guide content to stdout via client.stdout.write() so output is pipeable
- Track integration slug as known after successful fetch (not always redacted)
- Update changeset, tests, and help snapshots

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
No new dependencies are added, so the lockfile should not have changes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bhrigu123 bhrigu123 merged commit 8453e5e into main Feb 19, 2026
225 of 227 checks passed
@bhrigu123 bhrigu123 deleted the cli/marketplace-getting-started-guides branch February 19, 2026 21:06
tknickman pushed a commit that referenced this pull request Feb 19, 2026
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## vercel@50.22.0

### Minor Changes

- feat(cli): add `vercel integration guide` command
([#15108](#15108))

Adds a new `vercel integration guide` subcommand that displays getting
started guides,
code snippets, and resource links for marketplace integrations directly
in the terminal.

Supports single-product and multi-product integrations with interactive
product and
framework selection. Includes `--framework` flag for non-interactive
framework
selection (useful for CI/agents). Output is raw markdown written to
stdout for easy
    piping to files or other tools.

### Patch Changes

- fix(cli): fix missing planId in non-subscription plan web fallback
([#15152](#15152))

-   [services]([#15093](#15093))
- consolidate `workspace` and `entrypoint` from `experimentalServices`
`vercel.json` schema
- make `framework` config in service optional -- infer framework from
service workspace when not explicitly provided

- Updated dependencies
\[[`09b3540742ac86b768de9775929fef1ef36db412`](09b3540),
[`fc56fb91b4dafabe0f68f86efeabbaf98b2642bc`](fc56fb9)]:
    -   @vercel/build-utils@13.4.3
    -   @vercel/python@6.15.0
    -   @vercel/backends@0.0.36
    -   @vercel/elysia@0.1.39
    -   @vercel/express@0.1.48
    -   @vercel/fastify@0.1.42
    -   @vercel/go@3.4.1
    -   @vercel/h3@0.1.48
    -   @vercel/hono@0.2.42
    -   @vercel/hydrogen@1.3.5
    -   @vercel/koa@0.1.22
    -   @vercel/nestjs@0.2.43
    -   @vercel/next@4.15.31
    -   @vercel/node@5.6.6
    -   @vercel/redwood@2.4.9
    -   @vercel/remix-builder@5.5.10
    -   @vercel/ruby@2.3.1
    -   @vercel/rust@1.0.5
    -   @vercel/static-build@2.8.40

## @vercel/python@6.15.0

### Minor Changes

- Optimize cold starts for lambdas >250MB
([#15080](#15080))

1. Remove `uv pip install` and replace it with `uv sync --inexact
--frozen`
2. Pack the lambda zip with dependencies up to 245MB then only install
the remaining ones at runtime

### Patch Changes

- Updated dependencies
\[[`fc56fb91b4dafabe0f68f86efeabbaf98b2642bc`](fc56fb9)]:
    -   @vercel/python-analysis@0.6.0

## @vercel/python-analysis@0.6.0

### Minor Changes

- Optimize cold starts for lambdas >250MB
([#15080](#15080))

1. Remove `uv pip install` and replace it with `uv sync --inexact
--frozen`
2. Pack the lambda zip with dependencies up to 245MB then only install
the remaining ones at runtime

## @vercel/backends@0.0.36

### Patch Changes

- Updated dependencies
\[[`09b3540742ac86b768de9775929fef1ef36db412`](09b3540)]:
    -   @vercel/build-utils@13.4.3

## @vercel/build-utils@13.4.3

### Patch Changes

-   [services]([#15093](#15093))
- consolidate `workspace` and `entrypoint` from `experimentalServices`
`vercel.json` schema
- make `framework` config in service optional -- infer framework from
service workspace when not explicitly provided
- Updated dependencies
\[[`fc56fb91b4dafabe0f68f86efeabbaf98b2642bc`](fc56fb9)]:
    -   @vercel/python-analysis@0.6.0

## @vercel/cervel@0.0.23

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/backends@0.0.36

## @vercel/client@17.2.45

### Patch Changes

- Updated dependencies
\[[`09b3540742ac86b768de9775929fef1ef36db412`](09b3540)]:
    -   @vercel/build-utils@13.4.3

## @vercel/elysia@0.1.39

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/express@0.1.48

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6
    -   @vercel/cervel@0.0.23

## @vercel/fastify@0.1.42

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/fs-detectors@5.8.9

### Patch Changes

-   [services]([#15093](#15093))
- consolidate `workspace` and `entrypoint` from `experimentalServices`
`vercel.json` schema
- make `framework` config in service optional -- infer framework from
service workspace when not explicitly provided

## @vercel/gatsby-plugin-vercel-builder@2.0.138

### Patch Changes

- Updated dependencies
\[[`09b3540742ac86b768de9775929fef1ef36db412`](09b3540)]:
    -   @vercel/build-utils@13.4.3

## @vercel/h3@0.1.48

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/hono@0.2.42

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/koa@0.1.22

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/nestjs@0.2.43

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.6.6

## @vercel/node@5.6.6

### Patch Changes

- Updated dependencies
\[[`09b3540742ac86b768de9775929fef1ef36db412`](09b3540)]:
    -   @vercel/build-utils@13.4.3

## @vercel/static-build@2.8.40

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/gatsby-plugin-vercel-builder@2.0.138

## @vercel/python-runtime@0.5.0

### Minor Changes

- Optimize cold starts for lambdas >250MB
([#15080](#15080))

1. Remove `uv pip install` and replace it with `uv sync --inexact
--frozen`
2. Pack the lambda zip with dependencies up to 245MB then only install
the remaining ones at runtime


<!-- VADE_RISK_START -->
> [!NOTE]
> Low Risk Change
>
> This PR is an automated Changesets release that only updates version
numbers in package.json files and CHANGELOG.md files across multiple
packages, with no logic changes.
> 
> - Version bumps across ~25 packages (patch and minor versions)
> - CHANGELOG.md updates documenting previous changes
> - Deleted changeset markdown files consumed by release process
>
> <sup>Risk assessment for [commit
f054c83](https://github.com/vercel/vercel/commit/f054c83041bfd8d833afeb59bac76918875f980e).</sup>
<!-- VADE_RISK_END -->

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants