Skip to content

feat(cli): add clients command to list supported AI agent clients#9

Merged
appleboy merged 3 commits intomainfrom
feat/clients-command
Apr 7, 2026
Merged

feat(cli): add clients command to list supported AI agent clients#9
appleboy merged 3 commits intomainfrom
feat/clients-command

Conversation

@appleboy
Copy link
Copy Markdown
Member

@appleboy appleboy commented Apr 7, 2026

Summary

  • Add agent-scanner clients subcommand that lists all supported AI agent clients with platform availability (macOS/Linux/Windows)
  • Support --json flag for machine-readable output and --current-os flag to filter by current platform
  • Add cross-platform client catalog (clients_all.go) with bidirectional sync tests to catch drift against platform-specific registries

Closes #8

Test plan

  • make lint passes with 0 issues
  • make test passes all tests including new ones
  • agent-scanner clients shows correct table output
  • agent-scanner clients --json outputs valid JSON
  • agent-scanner clients --current-os filters correctly
  • Sync tests verify catalog matches platform-specific client lists

🤖 Generated with Claude Code

- Add `agent-scanner clients` subcommand with platform availability table
- Support --json flag for machine-readable output
- Support --current-os flag to filter by current platform
- Add cross-platform client catalog independent of build tags
- Add bidirectional sync tests to catch catalog drift

Closes #8

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 7, 2026 08:34
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new agent-scanner clients CLI subcommand to improve discoverability of supported AI agent clients and their OS availability.

Changes:

  • Introduces a cross-platform client catalog (GetAllSupportedClients) including per-OS availability flags.
  • Adds agent-scanner clients command with --json and --current-os output modes (table/JSON + current-platform filtering).
  • Adds tests for catalog/platform sync and CLI formatting/filtering helpers.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
internal/discovery/clients_all.go Adds the canonical cross-platform catalog of supported clients and platform availability.
internal/discovery/clients_all_test.go Adds sync/consistency tests between the catalog and the platform-specific registries.
internal/cli/root.go Registers the new clients subcommand on the root CLI.
internal/cli/flags.go Adds ClientsFlags and a global clientsFlags instance for the new command.
internal/cli/clients.go Implements agent-scanner clients output (table/JSON) and --current-os filtering.
internal/cli/clients_test.go Tests platform filtering and table/JSON formatting helpers.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Reject unexpected positional args in clients command
- Use Cobra OutOrStdout instead of hardcoded os.Stdout

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Use make() instead of nil var so empty results encode as [] not null

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@appleboy appleboy merged commit b1c57f5 into main Apr 7, 2026
16 checks passed
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.

Add clients command to list supported AI agent clients

2 participants