Skip to content

commit

Run the full commit gate — the only sanctioned path to a git commit.

This is the single entry point for turning staged work into a commit — nothing in codeArbiter calls git commit any other way. Invoking it hands control to a multi-phase check that reads the repository’s current state itself (what’s staged, what changed, whether the test suite is green) rather than taking your word for it, then walks through verification, a behavioral check, and a diff review before anything is written to history.

/ca:commit

Takes no arguments — everything it needs comes from the current git state.

> commit this
Branch: feat/export-csv (not protected — OK).
Classification: feat, scope export.
Running tests... 214 passed. Running lint... clean. Scanning staged files for secrets... clean.
Behavioral proof: re-running the export endpoint against the spec's acceptance criterion — a saved
search with zero results returns a header-only CSV. Confirmed by fresh output.
Reviewing the staged diff... no unexpected files, no TODO markers, nothing out of scope.
Staged set matches intended files exactly.
Commit message drafted:
feat(export): add CSV export for saved searches
CHANGELOG: Saved searches can now be exported as CSV from the search list.
Committed a1b2c3d. git status: clean.

Reach for /ca:commit once staged work is ready to persist. /ca:pr builds on the same gate to check PR readiness, dispatching additional reviewers the diff’s path demands.

GateWhenEffect
verificationevery invocationtest, lint, and secret-scan results must all come back clean before anything else runs
behavioral proof + diff reviewafter verification passesthe change must demonstrate the behavior it claims, and the diff is reviewed line by line before staging
Source — plugins/ca/commands/commit.md (v2.9.1)
---
description: Run the full commit gate — the only sanctioned path to a git commit.
argument-hint: (none)
---
# /ca:commit — commit gate
The only path to a commit. The orchestrator issues no `git commit` without the `commit-gate` skill
clearing first. "It looks good" is not authorization. No arguments — the skill reads current git
state (staged files, diff, test results) and decides whether every gate is green.
## Routes to
The `commit-gate` skill (`${CLAUDE_PLUGIN_ROOT}/skills/commit-gate/SKILL.md`) — all phases. The skill
is canonical for its phases, gates, and output format.
## When NOT to use
- Before writing code → `/ca:feature` or `/ca:fix` first.
- To check PR readiness → `/ca:pr` (dispatches additional BLOCK-level reviewers).
- To run tests without committing → run the test command from `tech-stack.md` directly.
## Hard gate
MUST NOT commit without `commit-gate` clearing. MUST NOT commit if the project test suite is not
green.

View in repo