Skip to content

CLI reference

This reference is generated from the command tree, so it lists exactly the commands and flags this version of rowshape accepts. If a flag is missing here, it does not exist.

CommandWhat it does
rowshape annotateRender a JSON verdict as GitHub PR annotations + a check summary
rowshape explainExplain a finding code (docs + remediation), agent-readable
rowshape hydrateReconstruct a deterministic disposable database from rowshape.yaml
rowshape initScaffold rowshape config in the current repo (offline detection only)
rowshape inspectAudit a committed fixture
rowshape mcpRun rowshape as an MCP server (stdio) for agents
rowshape planDry-run diff of a migration against a live target (read-only, applies nothing)
rowshape pullRead a database’s shape (read-only) and emit rowshape.yaml
rowshape validateValidate a migration against production-shaped data; return a verdict
rowshape verifyRead-only check that a live target matches the intended schema (drift)

These work on every command.

FlagDefaultDescription
--log-levelinfolog verbosity on stderr: debug | info | warn | error

Every command maps its outcome onto one contract:

CodeMeaning
0PASS — the check ran and found nothing blocking
1FAIL — the check ran and the migration is unsafe
2WARN-only — findings worth reading, not blocking
3Tool error — the check could NOT run

3 is distinct on purpose: “the tool could not produce a verdict” must never be mistaken for “the migration is unsafe”. A tool error carries "error": "tool_error" and a category rather than a verdict field.