Skip to content

[CLI] Add connex list command#16018

Merged
bhrigu123 merged 3 commits into
mainfrom
bhrigu/connex-list
Apr 17, 2026
Merged

[CLI] Add connex list command#16018
bhrigu123 merged 3 commits into
mainfrom
bhrigu/connex-list

Conversation

@bhrigu123

@bhrigu123 bhrigu123 commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds vercel connex list — lists Connex clients for the current team. CLI buildout (gated behind FF_CONNEX_ENABLED).

Design notes

  • No default --limit set client-side. API defaults to 50
  • No project filtering yet. Plan is to add an optional --include-projects flag later once the API can enrich list responses with project links in a single batched call. For now, this is a flat team-wide list. MKT-3634
  • --next name follows Vercel CLI convention for "next page" flags (matching vercel ls, vercel env ls, etc.), even though the value is a cursor rather than a timestamp.

Test plan

  • npx vitest run packages/cli/test/unit/commands/connex/list.test.ts — 6 passing tests: success, empty, 404, JSON, pagination hint, query param forwarding
  • tsc --noEmit clean
  • FF_CONNEX_ENABLED=1 vercel connex --help shows list under Commands
  • Manually
    • vercel connex list with several clients → table renders
    • vercel connex list --format=json → valid JSON, UID first
    • vercel connex list --limit 2 with >2 clients → next-page hint appears
    • vercel connex list --next <cursor> → fetches the next page

🤖 Generated with Claude Code

Adds `vercel connex list` to list Connex clients for the current team.

- Table columns: UID | ID | Name | Type | Created (UID first since it
  works as a first-class alias for the `scl_` id on most endpoints)
- `--limit` and `--next <cursor>` for cursor-based pagination (prints a
  next-page hint when the API returns a cursor)
- `--format=json` for scripting
- Empty state suggests `vercel connex create <type>`
- 404 surfaces as "Connex is not enabled for this team", matching the
  `create` subcommand behavior
- Gated behind `FF_CONNEX_ENABLED` alongside the rest of `connex`
- 6 unit tests: table, empty, 404, JSON, pagination hint, query params

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Apr 16, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 831a3ee

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

github-actions Bot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📦 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-81ctxce07.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-81ctxce07.vercel.sh/tarballs/vercel.tgz"
    }
  }
}

Python Runtime Wheel

A vercel-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-81ctxce07.vercel.sh/tarballs/vercel_runtime-0.14.0.dev1776384005+831a3ee-py3-none-any.whl"

Python Workers Wheel

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

VERCEL_WORKERS_PYTHON="vercel-workers @ https://vercel-81ctxce07.vercel.sh/tarballs/vercel_workers-0.1.0.dev1776384005+831a3ee-py3-none-any.whl"

@vercel

vercel Bot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

Low Risk — New CLI subcommand with tests — feature-flagged, read-only list operation.

  • .changeset/cli-connex-list.md: added changeset for minor version bump
  • packages/cli/src/commands/connex/list.ts: new list command fetching /v1/connex/clients with pagination support
  • packages/cli/test/unit/commands/connex/list.test.ts: added 6 unit tests covering success, empty, 404, JSON, pagination

Assessed at 831a3ee.

@github-actions

github-actions Bot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

🧪 Unit Test Strategy

Comparing: 2a6344e831a3ee (view diff)

Strategy: Code changed outside of a package - running all unit tests

⚠️ All unit tests will run because global code changes could impact all packages.

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

Results

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

This comment is automatically generated based on the affected testing strategy

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bhrigu123 bhrigu123 marked this pull request as ready for review April 16, 2026 22:40
@bhrigu123 bhrigu123 requested review from a team as code owners April 16, 2026 22:40
@bhrigu123 bhrigu123 requested a review from dvoytenko April 16, 2026 22:40
Adds a new snapshot test for the `list` subcommand help output and
updates the parent `connex` snapshot to include the new example.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bhrigu123 bhrigu123 merged commit 89b7d46 into main Apr 17, 2026
190 checks passed
@bhrigu123 bhrigu123 deleted the bhrigu/connex-list branch April 17, 2026 00:28
mehulkar pushed a commit that referenced this pull request Apr 17, 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@51.6.0

### Minor Changes

- Add `vercel connex list` command
([#16018](#16018))

### Patch Changes

- Add OpenAPI-driven subcommand fallback behind `VERCEL_AUTO_API=1`.
([#15989](#15989))

When the env var is set, unrecognized CLI tokens are matched against
OpenAPI tags and operation IDs from `openapi.vercel.sh`. This enables
`vercel <tag> <operationId>` (e.g. `vercel user getAuthUser`) at the top
level, and per-command fallthrough (e.g. `vercel projects getProject`)
when a token doesn't match a native subcommand.

When `x-vercel-cli.displayColumns` is present in the OpenAPI response
schema, results render as a card (single object) or table (array)
instead of raw JSON.

- [experimental-services] add new job service type support
([#15944](#15944))

- Add naming and formatting utilities for OpenAPI CLI integration.
([#16010](#16010))

Introduces `foldNamingStyle` for case-insensitive matching across
camelCase/kebab-case/snake_case, `humanReadableColumnLabel` for
converting schema property paths to readable headers, and
`inferCliSubcommandAliases` for auto-generating CLI aliases from HTTP
methods.

- Updated dependencies
\[[`44d519b8660185754d8280517adbe0ab7268f540`](44d519b),
[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/detect-agent@1.2.3
    -   @vercel/build-utils@13.17.2
    -   @vercel/python@6.33.3
    -   @vercel/backends@0.0.64
    -   @vercel/elysia@0.1.67
    -   @vercel/express@0.1.77
    -   @vercel/fastify@0.1.70
    -   @vercel/go@3.5.0
    -   @vercel/h3@0.1.76
    -   @vercel/hono@0.2.70
    -   @vercel/hydrogen@1.3.6
    -   @vercel/koa@0.1.50
    -   @vercel/nestjs@0.2.71
    -   @vercel/next@4.16.8
    -   @vercel/node@5.7.9
    -   @vercel/redwood@2.4.12
    -   @vercel/remix-builder@5.7.2
    -   @vercel/ruby@2.3.2
    -   @vercel/rust@1.1.1
    -   @vercel/static-build@2.9.17

## @vercel/backends@0.0.64

### Patch Changes

- Updated dependencies
\[[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/build-utils@13.17.2

## @vercel/build-utils@13.17.2

### Patch Changes

- [experimental-services] add new job service type support
([#15944](#15944))

## @vercel/cervel@0.0.51

### Patch Changes

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

## @vercel/client@17.3.6

### Patch Changes

- Updated dependencies
\[[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/build-utils@13.17.2

## @vercel/config@0.2.1

### Patch Changes

- [experimental-services] add new job service type support
([#15944](#15944))

## @vercel/detect-agent@1.2.3

### Patch Changes

- Add v0 to detect-agent supported agents
([#16016](#16016))

## @vercel/elysia@0.1.67

### Patch Changes

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

## @vercel/express@0.1.77

### Patch Changes

-   Updated dependencies \[]:
    -   @vercel/node@5.7.9
    -   @vercel/cervel@0.0.51

## @vercel/fastify@0.1.70

### Patch Changes

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

## @vercel/fs-detectors@5.18.2

### Patch Changes

- [experimental-services] add new job service type support
([#15944](#15944))

- Updated dependencies
\[[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/build-utils@13.17.2

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

### Patch Changes

- Updated dependencies
\[[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/build-utils@13.17.2

## @vercel/h3@0.1.76

### Patch Changes

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

## @vercel/hono@0.2.70

### Patch Changes

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

## @vercel/koa@0.1.50

### Patch Changes

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

## @vercel/nestjs@0.2.71

### Patch Changes

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

## @vercel/node@5.7.9

### Patch Changes

- Updated dependencies
\[[`2a6344e205910dafc05cb74a80f98165d95322d7`](2a6344e)]:
    -   @vercel/build-utils@13.17.2

## @vercel/python@6.33.3

### Patch Changes

- [experimental-services] add new job service type support
([#15944](#15944))

## @vercel/static-build@2.9.17

### Patch Changes

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
mehulkar added a commit that referenced this pull request Apr 17, 2026
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.

2 participants