Skip to content

Document command structure conventions and restructure commands to match - #28

Open
dennis-chen-vanta wants to merge 2 commits into
mainfrom
dennis-chen-vanta/cli-command-structure
Open

dennis-chen-vanta wants to merge 2 commits into
mainfrom
dennis-chen-vanta/cli-command-structure

Conversation

@dennis-chen-vanta

@dennis-chen-vanta dennis-chen-vanta commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Two commits:

  1. AGENTS.md: document conventions for how we name and structure commands.
  2. Commands: brings every API command in line with those conventions.

Command changes

Each line is a full command with its flags; optional flags are in []. --page-size and --page-cursor are left out because they didn't change.

people (1 command)
- people list [--tasks-summary-status-matches-any <status>] [--task-type-matches-any <type>] [--task-status-matches-any <status>]
+ people list [--tasks-summary-status-matches-any <status>] [--task-type-matches-any <type>] [--task-status-matches-any <status>] [--email-and-name-filter <name>] [--group-ids-matches-any <id>] [--employment-status <status>]
contracts (1 command)
- contracts upload --file <path> [--executed-date <date>] [--account-id <id>]
+ contracts upload --file <path> [--executed-date <date>] [--account-id <id>] [--external-id <id>]
risk-scenarios (1 command)
- risk-scenarios list [--include-ignored <bool>] [--owner-matches-any <owner>] [--search-string <query>] [--category-matches-any <category>] [--inherent-score-group-matches-any <group>] [--residual-score-group-matches-any <group>] [--review-status-matches-any <status>] [--type <type>] [--order-by <field>]
+ risk-scenarios list [--include-ignored <bool>] [--owner-matches-any <owner>] [--search-string <query>] [--category-matches-any <category>] [--cia-category-matches-any <category>] [--treatment-type-matches-any <type>] [--inherent-score-group-matches-any <group>] [--residual-score-group-matches-any <group>] [--review-status-matches-any <status>] [--type <type>] [--order-by <field>]
integrations (4 commands)
- integrations list-resources --id <id> --resource-kind <kind> [--connection-id <id>] [--has-description <bool>] [--has-owner <bool>] [--is-in-scope <bool>]
+ integrations list-resource-kind-resources --id <id> --resource-kind <kind> [--connection-id <id>] [--has-description <bool>] [--has-owner <bool>] [--is-in-scope <bool>]
- integrations get-resource --id <id> --resource-kind <kind> --resource-id <id>
+ integrations get-resource-kind-resource --id <id> --resource-kind <kind> --resource-id <id>
- integrations update-resource --id <id> --resource-kind <kind> --resource-id <id> [--json <json>] [--file <path>]
+ integrations update-resource-kind-resource --id <id> --resource-kind <kind> --resource-id <id> [--json <json>] [--file <path>]
- integrations update-resources --id <id> --resource-kind <kind> [--json <json>] [--file <path>]
+ integrations update-resource-kind-resources --id <id> --resource-kind <kind> [--json <json>] [--file <path>]
customer-trust (25 commands)
- customer-trust accounts list [--search-string <query>] [--is-auto-approval-enabled <bool>] [--custom-fields-filter <text>]
+ customer-trust list-accounts [--search-string <query>] [--is-auto-approval-enabled <bool>] [--custom-fields-filter <text>]
- customer-trust accounts get --id <id>
+ customer-trust get-account --account-id <id>
- customer-trust accounts create [--json <json>] [--file <path>]
+ customer-trust create-account [--json <json>] [--file <path>]
- customer-trust accounts update --id <id> [--json <json>] [--file <path>]
+ customer-trust update-account --account-id <id> [--json <json>] [--file <path>]
- customer-trust accounts delete --id <id>
+ customer-trust delete-account --account-id <id>
- customer-trust deletion-requests create [--json <json>] [--file <path>]
+ customer-trust create-deletion-request [--json <json>] [--file <path>]
- customer-trust questionnaires list [--q <query>] [--status-matches-any <status>] [--type-matches-any <type>] [--created-after <timestamp>] [--created-before <timestamp>] [--owner-id-matches-any <id>] [--approver-id-matches-any <id>]
+ customer-trust list-questionnaires [--q <query>] [--status-matches-any <status>] [--type-matches-any <type>] [--created-after <timestamp>] [--created-before <timestamp>] [--owner-id-matches-any <id>] [--approver-id-matches-any <id>]
- customer-trust questionnaires get --id <id>
+ customer-trust get-questionnaire --questionnaire-id <id>
- customer-trust questionnaires create-file --file <path> --display-name <name> [--owner-assignment <json>] [--approver-assignment <json>] [--description <text>] [--company-url <url>] [--due-date <timestamp>] [--customer-trust-account-id <id>] [--include-untagged-entities-for-category-ids <ids>] [--metadata <json>] [--tag-and-category-ids <json>]
+ customer-trust upload-questionnaire-file --file <path> --display-name <name> [--owner-assignment <json>] [--approver-assignment <json>] [--description <text>] [--company-url <url>] [--due-date <timestamp>] [--customer-trust-account-id <id>] [--include-untagged-entities-for-category-ids <ids>] [--metadata <json>] [--tag-and-category-ids <json>]
- customer-trust questionnaires create-website [--json <json>] [--file <path>]
+ customer-trust create-questionnaire-website [--json <json>] [--file <path>]
- customer-trust questionnaires update --id <id> [--json <json>] [--file <path>]
+ customer-trust update-questionnaire --questionnaire-id <id> [--json <json>] [--file <path>]
- customer-trust questionnaires delete --id <id>
+ customer-trust delete-questionnaire --questionnaire-id <id>
- customer-trust questionnaires approve --id <id> [--json <json>] [--file <path>]
+ customer-trust approve-questionnaire --questionnaire-id <id> [--json <json>] [--file <path>]
- customer-trust questionnaires complete --id <id> [--json <json>] [--file <path>]
+ customer-trust complete-questionnaire --questionnaire-id <id> [--json <json>] [--file <path>]
- customer-trust questionnaires assignable-users list [--role <role>] [--q <query>]
+ customer-trust list-questionnaire-assignable-users [--role <role>] [--q <query>]
- customer-trust questionnaires exports create [--json <json>] [--file <path>]
+ customer-trust create-questionnaire-export [--json <json>] [--file <path>]
- customer-trust questionnaires exports get --id <id>
+ customer-trust get-questionnaire-export --id <id>
- customer-trust questionnaires responses list --questionnaire-id <id> [--q <query>]
+ customer-trust list-questionnaire-responses --questionnaire-id <id> [--q <query>]
- customer-trust questionnaires responses get --questionnaire-id <id> --id <id>
+ customer-trust get-questionnaire-response --questionnaire-id <id> --response-id <id>
- customer-trust questionnaires responses update-content --questionnaire-id <id> --id <id> [--json <json>] [--file <path>]
+ customer-trust update-questionnaire-response --questionnaire-id <id> --response-id <id> [--json <json>] [--file <path>]
- customer-trust questionnaires responses update-owner --questionnaire-id <id> --id <id> [--json <json>] [--file <path>]
+ customer-trust update-questionnaire-response-owner --questionnaire-id <id> --response-id <id> [--json <json>] [--file <path>]
- customer-trust tag-categories list [--product-context-ids-matches-any <product>]
+ customer-trust list-tag-categories [--product-context-ids-matches-any <product>]
- customer-trust tag-categories get --id <id>
+ customer-trust get-tag-category --tag-category-id <id>
- customer-trust tag-categories product-contexts add --tag-category-id <id> [--json <json>] [--file <path>]
+ customer-trust create-tag-category-product-context --tag-category-id <id> [--json <json>] [--file <path>]
- customer-trust tag-categories product-contexts delete --tag-category-id <id> --product-context-id <product>
+ customer-trust delete-tag-category-product-context --tag-category-id <id> --product-context-id <product>
knowledge-base (15 commands)
- knowledge-base answer-library list [--q <query>] [--last-updated-after <timestamp>] [--last-updated-before <timestamp>] [--matches-tags <json>] [--expires-before <timestamp>] [--expires-after <timestamp>]
+ knowledge-base list-answer-library [--q <query>] [--last-updated-after <timestamp>] [--last-updated-before <timestamp>] [--matches-tags <json>] [--expires-before <timestamp>] [--expires-after <timestamp>]
- knowledge-base answer-library create [--json <json>] [--file <path>]
+ knowledge-base create-answer-library [--json <json>] [--file <path>]
- knowledge-base answer-library get --id <id>
+ knowledge-base get-answer-library --id <id>
- knowledge-base answer-library update --id <id> [--json <json>] [--file <path>]
+ knowledge-base update-answer-library --id <id> [--json <json>] [--file <path>]
- knowledge-base answer-library delete --id <id>
+ knowledge-base delete-answer-library --id <id>
- knowledge-base answer-library verify --id <id> [--json <json>] [--file <path>]
+ knowledge-base verify-answer-library --id <id> [--json <json>] [--file <path>]
- knowledge-base resources list [--q <query>] [--type-matches-any <type>] [--last-updated-after <timestamp>] [--last-updated-before <timestamp>] [--matches-tags <json>] [--expires-before <timestamp>] [--expires-after <timestamp>]
+ knowledge-base list-resources [--q <query>] [--type-matches-any <type>] [--last-updated-after <timestamp>] [--last-updated-before <timestamp>] [--matches-tags <json>] [--expires-before <timestamp>] [--expires-after <timestamp>]
- knowledge-base resources get --id <id>
+ knowledge-base get-resource --id <id>
- knowledge-base resources delete --id <id>
+ knowledge-base delete-resource --id <id>
- knowledge-base resources verify --id <id> [--json <json>] [--file <path>]
+ knowledge-base verify-resource --id <id> [--json <json>] [--file <path>]
- knowledge-base resources create-document --file <path> --title <title> [--description <text>] [--owner-assignment <json>] [--customer-visibility <visibility>] [--download-permission <permission>] [--is-used-in-questionnaires <bool>] [--expiration-date <timestamp>] [--tags <json>] [--category-id <id>]
+ knowledge-base upload-resource-document --file <path> --title <title> [--description <text>] [--owner-assignment <json>] [--customer-visibility <visibility>] [--download-permission <permission>] [--is-used-in-questionnaires <bool>] [--expiration-date <timestamp>] [--tags <json>] [--category-id <id>]
- knowledge-base resources update-document --id <id> [--json <json>] [--file <path>]
+ knowledge-base update-resource-document --id <id> [--json <json>] [--file <path>]
- knowledge-base resources replace-document-file --id <id> --file <path>
+ knowledge-base replace-resource-document-file --id <id> --file <path>
- knowledge-base resources create-webpage [--json <json>] [--file <path>]
+ knowledge-base create-resource-webpage [--json <json>] [--file <path>]
- knowledge-base resources update-webpage --id <id> [--json <json>] [--file <path>]
+ knowledge-base update-resource-webpage --id <id> [--json <json>] [--file <path>]
trust-centers (78 commands)
- trust-centers access-requests list --slug-id <slug>
+ trust-centers list-access-requests --slug-id <slug>
- trust-centers access-requests get --slug-id <slug> --id <id>
+ trust-centers get-access-request --slug-id <slug> --access-request-id <id>
- trust-centers access-requests approve --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers approve-access-request --slug-id <slug> --access-request-id <id> [--json <json>] [--file <path>]
- trust-centers access-requests deny --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers deny-access-request --slug-id <slug> --access-request-id <id> [--json <json>] [--file <path>]
- trust-centers activity list --slug-id <slug> [--event-types-matches-any <type>] [--after-date <timestamp>] [--before-date <timestamp>]
+ trust-centers list-activity --slug-id <slug> [--event-types-matches-any <type>] [--after-date <timestamp>] [--before-date <timestamp>]
- trust-centers chatbot conversations list --slug-id <slug> [--search-string <query>]
+ trust-centers list-chatbot-conversations --slug-id <slug> [--search-string <query>]
- trust-centers chatbot conversations get-messages --slug-id <slug> --id <id>
+ trust-centers get-chatbot-conversation --slug-id <slug> --conversation-id <id>
- trust-centers compliance-frameworks list --slug-id <slug>
+ trust-centers list-compliance-frameworks --slug-id <slug>
- trust-centers compliance-frameworks create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-compliance-framework --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers compliance-frameworks update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-compliance-framework --slug-id <slug> --framework-id <id> [--json <json>] [--file <path>]
- trust-centers compliance-frameworks delete --slug-id <slug> --id <id>
+ trust-centers delete-compliance-framework --slug-id <slug> --framework-id <id>
- trust-centers compliance-frameworks upload-badge --slug-id <slug> --id <id> --file <path>
+ trust-centers upload-compliance-framework-badge --slug-id <slug> --framework-id <id> --file <path>
- trust-centers control-categories list --slug-id <slug>
+ trust-centers list-control-categories --slug-id <slug>
- trust-centers control-categories get --slug-id <slug> --id <id>
+ trust-centers get-control-category --slug-id <slug> --category-id <id>
- trust-centers control-categories create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-control-category --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers control-categories update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-control-category --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
- trust-centers control-categories delete --slug-id <slug> --id <id>
+ trust-centers delete-control-category --slug-id <slug> --category-id <id>
- trust-centers control-categories set-order --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers set-control-category-order --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers control-categories controls update --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
+ trust-centers update-control-category-controls --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
- trust-centers control-categories controls set-order --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
+ trust-centers set-control-category-control-order --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
- trust-centers controls list --slug-id <slug>
+ trust-centers list-controls --slug-id <slug>
- trust-centers controls get --slug-id <slug> --id <id>
+ trust-centers get-control --slug-id <slug> --control-id <id>
- trust-centers controls create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-control --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers controls delete --slug-id <slug> --id <id>
+ trust-centers delete-control --slug-id <slug> --control-id <id>
- trust-centers controls add-tags --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers add-control-tags --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers controls remove-tags --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers remove-control-tags --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers data-collected list --slug-id <slug>
+ trust-centers list-data-collected --slug-id <slug>
- trust-centers data-collected set --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers set-data-collected --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers faq-categories list --slug-id <slug>
+ trust-centers list-faq-categories --slug-id <slug>
- trust-centers faq-categories create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-faq-category --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers faq-categories update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-faq-category --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
- trust-centers faq-categories delete --slug-id <slug> --id <id>
+ trust-centers delete-faq-category --slug-id <slug> --category-id <id>
- trust-centers faqs list --slug-id <slug>
+ trust-centers list-faqs --slug-id <slug>
- trust-centers faqs get --slug-id <slug> --id <id>
+ trust-centers get-faq --slug-id <slug> --faq-id <id>
- trust-centers faqs create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-faq --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers faqs update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-faq --slug-id <slug> --faq-id <id> [--json <json>] [--file <path>]
- trust-centers faqs delete --slug-id <slug> --id <id>
+ trust-centers delete-faq --slug-id <slug> --faq-id <id>
- trust-centers historical-access-requests list --slug-id <slug>
+ trust-centers list-historical-access-requests --slug-id <slug>
- trust-centers resource-categories list --slug-id <slug>
+ trust-centers list-resource-categories --slug-id <slug>
- trust-centers resource-categories create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-resource-category --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers resource-categories update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-resource-category --slug-id <slug> --category-id <id> [--json <json>] [--file <path>]
- trust-centers resource-categories delete --slug-id <slug> --id <id>
+ trust-centers delete-resource-category --slug-id <slug> --category-id <id>
- trust-centers resource-categories set-order --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers set-resource-category-order --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers resources list --slug-id <slug>
+ trust-centers list-resources --slug-id <slug>
- trust-centers resources get --slug-id <slug> --id <id>
+ trust-centers get-resource --slug-id <slug> --resource-id <id>
- trust-centers resources create --slug-id <slug> --file <path> --title <title> --is-public <bool> [--description <text>]
+ trust-centers upload-resource --slug-id <slug> --file <path> --title <title> --is-public <bool> [--description <text>]
- trust-centers resources update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-resource --slug-id <slug> --resource-id <id> [--json <json>] [--file <path>]
- trust-centers resources delete --slug-id <slug> --id <id>
+ trust-centers delete-resource --slug-id <slug> --resource-id <id>
- trust-centers resources get-media --slug-id <slug> --id <id> [--output <path>]
+ trust-centers get-resource-media --slug-id <slug> --resource-id <id> [--output <path>]
- trust-centers subprocessors list --slug-id <slug>
+ trust-centers list-subprocessors --slug-id <slug>
- trust-centers subprocessors get --slug-id <slug> --id <id>
+ trust-centers get-subprocessor --slug-id <slug> --subprocessor-id <id>
- trust-centers subprocessors create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-subprocessor --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers subprocessors update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-subprocessor --slug-id <slug> --subprocessor-id <id> [--json <json>] [--file <path>]
- trust-centers subprocessors delete --slug-id <slug> --id <id>
+ trust-centers delete-subprocessor --slug-id <slug> --subprocessor-id <id>
- trust-centers subscriber-groups list --slug-id <slug>
+ trust-centers list-subscriber-groups --slug-id <slug>
- trust-centers subscriber-groups get --slug-id <slug> --id <id>
+ trust-centers get-subscriber-group --slug-id <slug> --subscriber-group-id <id>
- trust-centers subscriber-groups create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-subscriber-group --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers subscriber-groups update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-subscriber-group --slug-id <slug> --subscriber-group-id <id> [--json <json>] [--file <path>]
- trust-centers subscriber-groups delete --slug-id <slug> --id <id>
+ trust-centers delete-subscriber-group --slug-id <slug> --subscriber-group-id <id>
- trust-centers subscribers list --slug-id <slug> [--customer-trust-account-id <id>]
+ trust-centers list-subscribers --slug-id <slug> [--customer-trust-account-id <id>]
- trust-centers subscribers get --slug-id <slug> --id <id>
+ trust-centers get-subscriber --slug-id <slug> --subscriber-id <id>
- trust-centers subscribers create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-subscriber --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers subscribers delete --slug-id <slug> --id <id>
+ trust-centers delete-subscriber --slug-id <slug> --subscriber-id <id>
- trust-centers subscribers groups set --slug-id <slug> --subscriber-id <id> [--json <json>] [--file <path>]
+ trust-centers set-subscriber-groups --slug-id <slug> --subscriber-id <id> [--json <json>] [--file <path>]
- trust-centers updates list --slug-id <slug>
+ trust-centers list-updates --slug-id <slug>
- trust-centers updates get --slug-id <slug> --id <id>
+ trust-centers get-update --slug-id <slug> --update-id <id>
- trust-centers updates create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-update --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers updates update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-update --slug-id <slug> --update-id <id> [--json <json>] [--file <path>]
- trust-centers updates delete --slug-id <slug> --id <id>
+ trust-centers delete-update --slug-id <slug> --update-id <id>
- trust-centers updates notify-all-subscribers --slug-id <slug> --id <id>
+ trust-centers notify-update-all-subscribers --slug-id <slug> --update-id <id>
- trust-centers updates notify-specific-subscribers --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers notify-update-specific-subscribers --slug-id <slug> --update-id <id> [--json <json>] [--file <path>]
- trust-centers videos set --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers set-videos --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers viewers list --slug-id <slug> [--include-removed <bool>]
+ trust-centers list-viewers --slug-id <slug> [--include-removed <bool>]
- trust-centers viewers get --slug-id <slug> --id <id>
+ trust-centers get-viewer --slug-id <slug> --viewer-id <id>
- trust-centers viewers create --slug-id <slug> [--json <json>] [--file <path>]
+ trust-centers create-viewer --slug-id <slug> [--json <json>] [--file <path>]
- trust-centers viewers update --slug-id <slug> --id <id> [--json <json>] [--file <path>]
+ trust-centers update-viewer --slug-id <slug> --viewer-id <id> [--json <json>] [--file <path>]
- trust-centers viewers delete --slug-id <slug> --id <id>
+ trust-centers delete-viewer --slug-id <slug> --viewer-id <id>
- trust-centers viewers send-invite-reminder --slug-id <slug> --id <id>
+ trust-centers send-viewer-invite-reminder --slug-id <slug> --viewer-id <id>

Test plan

Had agent test each command against staging with the new binary

🤖 Generated with Claude Code

dennis-chen-vanta and others added 2 commits October 21, 2026 00:30
Describe how REST paths map to `<group> <verb>-<noun>` commands, how
inputs become flags, and where help text comes from.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Flatten trust-centers, customer-trust, and knowledge-base subgroups into
  verb-noun commands (`trust-centers list-faqs`)
- Name deep paths by joining their resources
  (`integrations list-resource-kind-resources`)
- Add flags for spec inputs the commands didn't expose yet
- Register all API groups from src/commands/index.ts

Request paths are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.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.

1 participant