// COMMANDS

CLI Commands

Every command exposed by the summonaikit binary, plus the slash commands installed into your AI CLIs.

The summonaikit binary has two surfaces: an interactive flow (the default) for the codebase pass, and a programmatic flow (workflow ..., kit ...) consumed by slash commands running inside Claude Code, Cursor, or Codex.

You'll only ever type the interactive commands. The programmatic ones are invoked by the AI inside chat, but they're documented here so you can debug what /saikit-workflows is doing.

//Top-Level Commands

summonaikit

Starts the interactive codebase-analysis wizard.

code
summonaikit

What happens:

  1. Auth check. Opens a browser if needed.
  2. Preflight. Detects Claude Code / Cursor / Codex and verifies each is authenticated.
  3. Target selection. You pick which AI CLI runs the analysis (Sonnet for Claude Code, Opus for Cursor, Codex 5.3 for Codex, picked automatically per CLI) and which directories receive output.
  4. Mode selection. Analyze (auto-detect stack) or Manual (one focused skill).
  5. Generation. CLAUDE.md, per-stack skills, and subagents are generated in parallel with live per-skill progress.
  6. Summary. End-of-run summary with cost broken down by model (Haiku / Sonnet / Opus).

Use arrow keys to navigate, Space to toggle, Enter to confirm.

login

Force a fresh device-flow login. Useful when tokens have rotated or you've switched accounts.

code
summonaikit login

logout

Clear stored credentials from the keychain (or fallback file). Doesn't touch generated artifacts.

code
summonaikit logout

whoami

Show the signed-in user's email and plan tier (solo, founder, pro). The plan tier is what gates which workflow categories you see.

code
summonaikit whoami

update

Fetch the latest binary and replace the one on disk. Idempotent, does nothing if you're already on the latest.

code
summonaikit update

The CLI also runs an update check at startup and prints a one-line note when a new version is out.

//workflow Subcommands

These are invoked by the /saikit-workflows slash command. You can run them by hand to debug, but the slash command orchestrates them.

workflow run

Returns the next instruction in the workflow state machine as JSON. The slash command calls this in a loop.

code
summonaikit workflow run --json [--state=<BASE64>] [--targets=claude,cursor,codex]

| Flag | Required | Notes | | --- | --- | --- | | --json | Yes | All workflow subcommands emit JSON only. | | --state=<base64> | After first call | The nextStateBase64 from the previous response. Opaque. | | --targets=<csv> | Yes | Which AI CLIs to install into. |

Response shape:

code
{ "ok": true, "data": { "instruction": { "kind": "ask" | "free-text" | "bash" | "write" | "message" | "done" | "error", ... }, "nextStateBase64": "..." } }

workflow detect

Scans the repo for tools across one or more categories. No auth required, runs locally.

code
summonaikit workflow detect --categories=ticketing,payments,error-tracking --json
summonaikit workflow detect --all --json

Detection signals: package.json deps (exact + prefix), env var names, files / globs, and a small set of content substrings (e.g. fbq( in HTML for Meta Pixel).

workflow install-skill

Downloads a premade ops skill from the catalog, substitutes the user's answers into its {{placeholders}}, and writes it into each target's skills directory.

code
summonaikit workflow install-skill \
  --category=payments \
  --tool=stripe \
  --answers='{"primary_workflow":"...","webhook_events":"...","test_mode_policy":"..."}' \
  --targets=claude,cursor \
  --json

The skill bundle is fetched from R2 over the auth-gated catalog endpoint, so plan-tier gating is enforced server-side.

//kit update

Re-runs the codebase pass against an existing project, refreshes CLAUDE.md, regenerates updated skills, refreshes subagents and slash commands. Invoked by the /saikit-update slash command.

code
summonaikit kit update --json [--selection=installed|detected|all] [--scope=instructions,skills,subagents,hooks,slash-commands]

--scope is comma-separated. Default is everything. Use --scope=skills to refresh only skills, etc.

//Slash Commands Installed

When summonaikit runs, it installs two slash commands into every selected target:

| Command | Where | Purpose | | --- | --- | --- | | /saikit-workflows | .claude/commands/, .cursor/commands/, ~/.codex/prompts/ | Run the workflow pass, categories → tools → questions → skills + MCPs + playbook + commands + hooks | | /saikit-update | same | Re-run the codebase pass to refresh skills / subagents / CLAUDE.md |

/saikit-workflows may then install three more cross-tool commands if you opt in:

  • /start-task <TICKET>, branch + ticket transition + kickoff comment
  • /ship, open PR with your team's title format, link the ticket, watch CI
  • /post-merge, close ticket + post to comms + update narrative docs

See Slash Commands for the full anatomy.

//Common Flags

| Flag | Used by | Notes | | --- | --- | --- | | --json | All workflow / kit subcommands | Required. Emits one JSON object on stdout. | | --targets=<csv> | workflow run, workflow install-skill, kit update | claude, cursor, codex, or any comma-separated combo. | | --repo-root=<path> | workflow detect, workflow run | Defaults to process.cwd(). Useful for nested invocations. | | --state=<base64> | workflow run | Opaque, never decode or modify. |