CLI Reference
CLI Reference
Section titled “CLI Reference”Public Topogram commands are organized around init, copy, extract, adopt, generate, emit, query, and policy workflows.
Status: current Audience: CLI users and agents executing Topogram commands Use when: you need public command syntax, options, or examples.
Run topogram help <command> for command-specific help. This page gives the
current command map.
Setup and health
Section titled “Setup and health”topogram versiontopogram doctortopogram setup package-authtopogram setup catalog-authProject creation
Section titled “Project creation”topogram inittopogram init . --adopt-sdlctopogram init ./existing-app --jsontopogram template listtopogram copy --listtopogram copy hello-web ./my-apptopogram catalog listtopogram catalog show <id>topogram copy <id> <target>Use topogram init first for existing or maintained repos. Use topogram copy
when you want to copy a starter template and generate an app/runtime bundle.
Successful init output includes a Scaffolded: summary; JSON output includes
scaffold[] entries with each path, kind, status, and purpose.
Remote catalog and GitHub reads are size-limited before parsing. Override the
default only when you have reviewed the source. These can be set in the
environment or in topogram.config.json under limits.
TOPOGRAM_REMOTE_FETCH_MAX_BYTESTOPOGRAM_CATALOG_FETCH_MAX_BYTESTOPOGRAM_GITHUB_FETCH_MAX_BYTES
Validation and output
Section titled “Validation and output”topogram checktopogram generatetopogram generate ./topo --out ./apptopogram emit <target> ./topo --jsontopogram emit <target> ./topo --write --out-dir ./artifactstopogram emit glossary ./topo --write --out-dir docs/conceptstopogram emit glossary ./topo --check docs/concepts/glossary.mdAgent and query
Section titled “Agent and query”topogram agent brief --jsontopogram query list --jsontopogram query show <name> --jsontopogram query slice ./topo --task <task-id> --jsontopogram query slice ./topo --task <task-id> --detail compact --format markdowntopogram query slice ./topo --journey journey_greenfield_start_from_template --jsontopogram query sdlc-grooming ./topo --jsontopogram query sdlc-backlog ./topo --jsontopogram query sdlc-available ./topo --jsontopogram query sdlc-ready ./topo --jsontopogram query sdlc-claimed ./topo --actor actor_coding_agent --jsontopogram query sdlc-blockers ./topo --task <task-id> --jsontopogram query sdlc-proof-gaps ./topo --task <task-id> --jsontopogram query verification-runs ./topo --task <task-id> --jsontopogram query sdlc-metrics ./topo --jsontopogram query sdlc-stale-work ./topo --jsontopogram sdlc policy explain --jsontopogram sdlc start <task-id> . --actor actor_coding_agent --jsontopogram sdlc start <task-id> . --actor actor_coding_agent --write --jsontopogram sdlc verify record <verification-id> . --task <task-id> --actor actor_coding_agent --command "<command you ran>" --status pass --write --jsontopogram sdlc complete <task-id> . --verification <verification-id> --actor actor_coding_agent --writetopogram sdlc prep commit . --base origin/main --head HEAD --jsontopogram sdlc gate . --base origin/main --head HEAD --require-adopted --jsonsdlc start is read-only by default. It returns the implementation packet for a
task; --write claims and starts the task through command-owned history.
Widgets
Section titled “Widgets”topogram widget check ./topo --projection proj_web_surfacetopogram widget behavior ./topo --projection proj_web_surface --jsontopogram emit ui-widget-contract ./topo --widget widget_data_grid --jsontopogram emit glossary ./topo --jsonBrownfield extract/adopt
Section titled “Brownfield extract/adopt”topogram extract ./existing-app --out ./imported-topogramtopogram extract ./existing-cli --out ./imported-topogram --from cli --extractor @topogram/extractor-node-clitopogram extract ./react-router-app --out ./imported-topogram --from ui --extractor @topogram/extractor-react-routertopogram extract ./prisma-app --out ./imported-topogram --from db --extractor @topogram/extractor-prisma-dbtopogram extract ./express-api --out ./imported-topogram --from api --extractor @topogram/extractor-express-apitopogram extract ./drizzle-app --out ./imported-topogram --from db --extractor @topogram/extractor-drizzle-dbtopogram extract ./xstate-app --out ./imported-topogram --from workflows --extractor @topogram/extractor-xstate-workflowstopogram extractor listtopogram extractor recommend ./existing-app --from db,api,ui,cli,workflowstopogram extractor show @topogram/extractor-prisma-dbtopogram extractor show @topogram/extractor-xstate-workflowstopogram extractor show topogram/ui-extractorstopogram extractor check @topogram/extractor-prisma-dbtopogram extractor check ./extractor-packagetopogram extractor init ./extractor-package --track cli --package @scope/extractor-packagetopogram extractor policy inittopogram extractor policy pin @topogram/extractor-prisma-db@1topogram extractor policy pin @topogram/extractor-xstate-workflows@1topogram extractor policy checktopogram extract check ./imported-topogramtopogram extract plan ./imported-topogramtopogram adopt --list ./imported-topogramtopogram query extract-plan ./imported-topogram/topo --jsontopogram query single-agent-plan ./imported-topogram/topo --mode extract-adopt --jsontopogram query multi-agent-plan ./imported-topogram/topo --mode extract-adopt --jsontopogram query work-packet ./imported-topogram/topo --mode extract-adopt --lane adoption_operator --jsontopogram adopt <selector> ./imported-topogram --dry-runtopogram adopt <selector> ./imported-topogram --writetopogram extract status ./imported-topogramtopogram extract history ./imported-topogram --verifytopogram extractor init also reports a Scaffolded: summary and returns
scaffold[] in JSON mode so extractor authors can see the generated package
shape and why each file exists.
Extractor command safety: extractor list, extractor show, and
extractor recommend, and extractor policy do not load package adapter code.
extractor recommend <source> only reads local source evidence and reports
likely bundled/package-backed extractors plus install, pin, check, and extract
commands. extractor check and extract --extractor do load package adapter
code. Extractor packages write review-only candidates; adopt --dry-run should
precede any canonical --write. Extractor package output distinguishes manifest
version, npm package version, compatible CLI range, and policy pin state so
humans and agents can choose the exact install or pin command before execution.
Policies and trust
Section titled “Policies and trust”topogram trust statustopogram trust difftopogram trust templatetopogram template policy checktopogram generator listtopogram generator show @topogram/generator-react-webtopogram generator check ./generator-packagetopogram generator policy checktopogram generator policy pin @scope/topogram-generator-web@1topogram extractor listtopogram extractor policy checktopogram sdlc policy explainGenerator command safety: generator list and generator show read manifests
only. generator check and topogram generate load generator package code.
Topogram does not install generator packages; install them with npm, pin their
manifest version through topogram.generator-policy.json, run topogram check,
then verify generated output with the stack’s own commands.
Maintainers
Section titled “Maintainers”topogram release statustopogram release status --stricttopogram release roll-consumers --latesttopogram package update-cli --latesttopogram release roll-consumers --latest --watch is the maintainer command for
rolling first-party consumers after a CLI publish. Human output includes a
recovery summary, and progress is printed to stderr so JSON output stays
machine-readable. Use --no-watch to push consumer commits without waiting for
CI, then run topogram release status --strict.
topogram release status --strict requires the current checkout to match the
current package version’s remote release tag. If new commits have landed after
the latest topogram-v* tag, strict mode fails until a new patch release is
cut or the checkout is moved back to the released commit.
topogram release status --strict also checks public proof repositories in a
separate proof-consumer section. Those repos are not rolled by
roll-consumers; they are tutorial/product proof repos, so release status
checks their configured proof baseline, proof:audit and verify scripts, and
Proof Verification workflow state separately from package rollout consumers.
Proof repos do not need to move on every patch release; refresh them when a
workflow meaning changes, a breaking change lands, or a proof would teach stale
behavior.