Reference

CLI

The CLI runs the same capabilities as the API, with the same ids and the same refusal names. Operator commands sit beside it for the steps a person owns.

Run a capability

node src/ticket16/cli.mjs <capabilityId> [jsonPayload]. The key comes from TRUMPET_API_KEY in the environment. The payload is one JSON object as the second argument.

shell
export TRUMPET_API_KEY=trk_...

node src/ticket16/cli.mjs ticket6:readLedger '{}'

A success prints the result as one JSON line and exits 0.

stdout
{"balanceMinor":3000,"currency":"USD","entries":[...]}

A refusal prints one code on stderr and exits 1. There is no message, because a message can quote a connection string or a key.

stderr
{"error":"ACCESS_REFUSED"}
  • Exit 0 means the capability ran.
  • Exit 1 means a refusal. The code is on stderr.
  • Exit 2 means the arguments were wrong, or the payload was not a JSON object.

Operator commands

These run in process with the runtime environment. Each one is a person at a terminal, not an agent.

npm run migrate
Applies the migrations. It takes a separate owner connection in TRUMPET_MIGRATION_DATABASE_URL, because migrations create roles and policies that the runtime role must not be able to create.
npm start
Runs the poller and the served listener. It reads TRUMPET_DATABASE_URL, STRIPE_RESTRICTED_KEY, TRUMPET_WORKSPACE and TRUMPET_PROGRAM, plus TRUMPET_API_KEY_PEPPER for the served surface.
npm run held
list, replay <evt_id> and close <evt_id> --reason <text> --correction <ref>. Replay and close are human gates. The operator identity comes from TRUMPET_OPERATOR and is recorded on each row the command resolves.
npm run approvals
list, approve <request_id> and reject <request_id> --reason <text>. The operator approval channel. It runs as a human actor on the cli surface. No served key, MCP key or partner read can produce that actor.
npm run workspace:create
Creates a workspace and prints its first service key once. It refuses the runtime connection and demands a separate least privilege operator connection in TRUMPET_OPERATOR_DATABASE_URL.
npm run golive:check
A read only preflight. It writes nothing.

Capabilities on the cli surface

93 capabilities declare the cli surface. The CLI lists only the automation safe ones as commands. A human gate still refuses an agent and creates an approval request.

Generated from shyftai/trumpet at cbc30f1 by scripts/gen-reference.mjs.

approvals

6 capabilities

CapabilityAccessWho runs itSurfacesServed
approvals:approveRequestWritesHuman gateapi cli webNo
approvals:getApprovalRequestReadsAgentapi cli mcpYes
approvals:listApprovalRequestsReadsAgentapi cli mcpYes
approvals:rejectRequestWritesHuman gateapi cli webNo
approvals:requestApprovalWritesAgentapi cli mcpYes
approvals:withdrawRequestWritesAgentapi cli mcpYes

campaigns

7 capabilities

CapabilityAccessWho runs itSurfacesServed
campaigns:approveCampaignWritesHuman gateapi cli mcp webYes
campaigns:draftCampaignWritesAgentapi cli mcpYes
campaigns:getAdapterReadsAgentapi cli mcpYes
campaigns:getCampaignReadsAgentapi cli mcpYes
campaigns:launchCampaignWritesHuman gateapi cli mcp webYes
campaigns:listCampaignsReadsAgentapi cli mcpYes
campaigns:setupAdapterWritesHuman gateapi cli mcp webYes

discovery

3 capabilities

CapabilityAccessWho runs itSurfacesServed
discovery:getResultPageReadsAgentapi cli mcpNo
discovery:listCreatorRecordsReadsAgentapi cli mcpNo
discovery:listRunsReadsAgentapi cli mcpNo

partners

3 capabilities

CapabilityAccessWho runs itSurfacesServed
partners:grantAccessWritesHuman gateapi cli mcpYes
partners:revokeGrantWritesAgentapi cli mcpYes
partners:setGuardrailWritesAgentapi cli mcpYes

runtime

3 capabilities

CapabilityAccessWho runs itSurfacesServed
runtime:closeHeldEventWritesHuman gateapi cli mcpYes
runtime:listHeldEventsReadsAgentapi cli mcpYes
runtime:replayHeldEventWritesHuman gateapi cli mcpYes

ticket1

1 capability

CapabilityAccessWho runs itSurfacesServed
ticket1:getWorkspaceConfigReadsAgentapi cli mcpYes

ticket10

3 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket10:ingestStripeEventWritesAgentapi cli mcpYes
ticket10:invokeStripeWritesAgentapi cli mcpYes
ticket10:queryIngestionStateReadsAgentapi cli mcp readYes

ticket11

1 capability

CapabilityAccessWho runs itSurfacesServed
ticket11:queryPartnerBalanceReadsAgentapi cli mcp readYes

ticket12

1 capability

CapabilityAccessWho runs itSurfacesServed
ticket12:queryReconciliationReportReadsAgentapi cli mcp readYes

ticket13

2 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket13:commitCutoverWritesHuman gateapi cli mcpYes
ticket13:queryCutoverStateReadsAgentapi cli mcp readYes

ticket15

5 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket15:assignReferralCodeWritesHuman gateapi cli mcpYes
ticket15:publishReferralLinkWritesAgentapi cli mcpYes
ticket15:queryReferralClicksReadsAgentapi cli mcp readYes
ticket15:resolveAndRecordClickWritesAgentapi cli mcpYes
ticket15:revokeReferralLinkWritesAgentapi cli mcpYes

ticket16

3 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket16:createApiKeyWritesHuman gateapi cli webYes
ticket16:listApiKeysReadsAgentapi cli mcp readYes
ticket16:revokeApiKeyWritesAgentapi cli mcpYes

ticket17

2 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket17:invitePartnerFromCrispyWritesAgentapi cli mcpYes
ticket17:readPartnerEarningsReadsAgentapi cli mcpYes

ticket18

4 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket18:createWorkspaceWritesHuman gatecliYes
ticket18:getWorkspaceReadsAgentapi cli mcp readYes
ticket18:issueWorkspaceKeyWritesHuman gateapi cli webYes
ticket18:listWorkspacesReadsAgentapi cli mcp readYes

ticket19

8 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket19:bindReferrerWritesAgentapi cli mcpYes
ticket19:compareShadowCreditsReadsAgentapi cli mcp readYes
ticket19:issueCustomerCodeWritesAgentapi cli mcpYes
ticket19:queryReferralStateReadsAgentapi cli mcp readYes
ticket19:recordCustomerIdentityWritesAgentapi cli mcpYes
ticket19:recordCustomerPaymentWritesAgentapi cli mcpYes
ticket19:recordCustomerRefundWritesAgentapi cli mcpYes
ticket19:recordInvoicePaymentLinkWritesAgentapi cli mcpYes

ticket4

7 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket4:acceptStandardTermsWritesHuman gateapi cli mcp webYes
ticket4:completeOnboardingWritesAgentapi cli mcpYes
ticket4:configureProgramWritesAgentapi cli mcpYes
ticket4:createProgramWritesAgentapi cli mcpYes
ticket4:getProgramReadsAgentapi cli mcpYes
ticket4:getRelationshipReadsAgentapi cli mcpYes
ticket4:invitePartnerWritesAgentapi cli mcpYes

ticket5

6 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket5:evaluateAttributionReadsAgentapi cli mcpYes
ticket5:issueCouponWritesAgentapi cli mcpYes
ticket5:issueReferralLinkWritesAgentapi cli mcpYes
ticket5:queryCouponReadsAgentapi cli mcpYes
ticket5:queryReferralLinkReadsAgentapi cli mcpYes
ticket5:readReferralProjectionReadsAgentapi cli mcp readYes

ticket6

20 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket6:activatePartnerOverrideWritesHuman gateapi cli mcp webNo
ticket6:activateRulebookVersionWritesHuman gateapi cli mcp webYes
ticket6:applyPartnerGroupTermsWritesAgentapi cli mcpNo
ticket6:approveCommissionWritesHuman gateapi cli mcp webYes
ticket6:approveCommissionsWritesHuman gateapi cli mcp webYes
ticket6:changePartnerGroupMembersWritesAgentapi cli mcpNo
ticket6:configureCommissionPolicyWritesHuman gateapi cli mcp webYes
ticket6:createPartnerGroupWritesAgentapi cli mcpNo
ticket6:draftPartnerOverrideWritesAgentapi cli mcpNo
ticket6:draftRulebookVersionWritesAgentapi cli mcpYes
ticket6:ingestSourceEventWritesAgentapi cli mcpYes
ticket6:queryCommissionPoliciesReadsAgentapi cli mcp readYes
ticket6:queryPartnerGroupsReadsAgentapi cli mcp readNo
ticket6:queryPartnerOverrideReadsAgentapi cli mcp readNo
ticket6:queryPendingAccrualsReadsAgentapi cli mcp readYes
ticket6:queryRulebookReadsAgentapi cli mcp readYes
ticket6:readLedgerReadsAgentapi cli mcp readYes
ticket6:readPartnerProgressReadsAgentapi cli mcp readNo
ticket6:rejectCommissionWritesHuman gateapi cli mcp webYes
ticket6:rejectCommissionsWritesHuman gateapi cli mcp webYes

ticket7

8 capabilities

CapabilityAccessWho runs itSurfacesServed
ticket7:createManualCorrectionWritesHuman gateapi cli mcp webYes
ticket7:explainEntriesReadsAgentapi cli mcp readYes
ticket7:queryBalancesReadsAgentapi cli mcp readYes
ticket7:queryPayoutStatementReadsAgentapi cli mcp readYes
ticket7:recordCarriedDebtRecoveryWritesHuman gateapi cli mcp webYes
ticket7:recordDisputeTransitionWritesHuman gateapi cli mcp webYes
ticket7:recordPayoutReceiptWritesHuman gateapi cli mcp webYes
ticket7:recordStatementPayoutWritesHuman gateapi cli mcp webYes

Partner programs on Stripe, run by agents. People approve the money.

Get started