norn review runs the review pipeline without a graphical or terminal UI. It
prints Markdown by default and supports JSON output for automation.
Review scopes
Working tree
Review staged, unstaged, and eligible untracked text files:
norn review --repo-path . --scope working-tree
Potentially sensitive untracked filesāsuch as environment, credential, and private-key materialāare skipped with a warning.
Branch
Review committed changes from the merge base through HEAD:
norn review --repo-path . --scope branch
Override the destination when necessary:
norn review --repo-path . --scope branch --base origin/main
Uncommitted changes are not included in branch scope. Run a separate working-tree review when both kinds of changes exist.
Pull request
Review a provider-hosted pull request:
norn review \
--scope pr \
--provider github \
--workspace delaudio \
--repo norn \
--pr 198
--workspace and --repo must be supplied together and must match the selected
local checkout when one is used.
Provider and model
Select Claude or Codex explicitly:
norn review --repo-path . --scope branch --ai-provider codex
Use --model and --effort to override configured defaults for one run.
Output and exit behavior
Write structured JSON to stdout:
norn review --repo-path . --scope branch --format json
Write the result to a file:
norn review --repo-path . --scope branch --output norn-review.md
By default, findings do not fail the process. Turn the command into a gate with:
norn review \
--repo-path . \
--scope branch \
--fail-on-findings \
--min-severity high
Profiles and analyzers
Select a repository profile with --profile <name>. Local analyzers are
skipped by default; opt in for a standalone review with --run-analyzers.
Required organization-policy analyzers can still run automatically.
norn review \
--repo-path . \
--scope working-tree \
--profile frontend-strict \
--run-analyzers
Headless review never publishes comments to the remote pull request.