Skip to Content
kusaw docsv1.0.0

Provider capabilities

Generated from `runner.Matrix()`. Do not edit by hand.

Provider capabilities

Generated from runner.Matrix(). Do not edit by hand.

Each capability has one of four levels per provider: enforced (the provider's own controls stop it), guarded (the runner detects a breach after the step and fails it with repo_modified), partial (it works with a documented gap), or not_supported. A step that requires a not_supported capability is refused before it starts, with dependency_missing. guarded and partial satisfy a requirement.

Matrix

CapabilityClaude CodeCursor
headlessenforcedenforced
interactiveenforcednot_supported (PRD §6 decision 5)
read_onlyenforced (tool deny list, GF-18)guarded (--mode ask plus the git-tree guard (PRD §6 decision 1). Ignored files and files outside the worktree are not covered.)
editenforcedenforced (--force)
no_commitenforced (deny list)guarded (ref guard (W19))
no_pushenforced (deny list)guarded (push guard (W20): GIT_CONFIG_* pushInsteadOf plus a refs/remotes check)
tool_allowlistenforcednot_supported (PRD §6 decision 1; not emulated)
system_promptenforcedpartial (inlined into the prompt (GF-57 W14))
modelenforcedenforced
mcpenforced (enforced when the GF-27 probe passes (V55))enforced (enforced when the W21 check passes, else refused)
skillsenforced (GF-27)partial (inlined into the prompt (PRD §6 decision 2))
project_instructionsenforced (CLAUDE.md as Claude Code loads it)enforced (AGENTS.md, CLAUDE.md and .cursor/rules at the worktree root)
os_sandboxenforced (per GF-88)enforced (enforced by GF-88's kusaw sandbox: --sandbox disabled when it wraps the step, no --sandbox flag otherwise (W23, GF-88 X135))
networknot_supported (enforced when the factory sandbox runs in allowlist mode (GF-132))not_supported (enforced when the factory sandbox runs in allowlist mode (GF-132); Cursor's own sandbox settings are unused)
reported_costenforcednot_supported (GF-59: computed or unknown)
token_usageenforcedpartial (GF-57 W24: unknown if not reported)
no_cloud_handoffn/aenforced (GF-57 W15)
secret_store_deniedenforced (permission deny rules (X120))partial (per-attempt .cursor/cli.json (X122); Read does not cover Grep/Glob)
git_control_protectedguarded (control-file guard (X141))guarded (control-file guard (X141))
resumeenforced (Probe reports enforced when --help lists --resume)enforced (Probe reports enforced when --help lists --resume)
forkenforced (Probe reports enforced when --help lists --fork-session (used with --resume))not_supported (no fork flag)
live_steeringnot_supported (enforced when steer.live is on and Probe finds streaming input)not_supported (stdin stays closed (GF-57))

Built-in requirements

Built-inPresetRequires
buildeditedit; no commit, reset or checkout; no push; declared MCP and skills if any
review, write-spec, retro, deliver (summary text), classify, score, atlas-mapread_onlyread-only; declared MCP and skills if any
grillinterviewinteractive (Claude Code only in v3)

Built-in steps

StepInteractiveDescription
atlas-mapnoWrite Atlas map pages from the redacted snapshot
bench-finishnoRecord the diff and run held-out benchmark checks
buildnoTest-first implementation in the worktree
classifynoEstimate the size of a change
contract-reviewnoReviews the combined milestone diff against the contract
contract-testsnoMap JUnit tests tagged [A] onto contract assertions
delivernoSquash the branch into one commit and write SUMMARY.md
evidencenoTake screenshots of local pages as evidence
grillyesInteractive intake interview
plannoSplit the task spec into owned, dependency-ordered subtasks
plan-checknoCheck the Work order plan files
retronoPropose factory improvements from the run
reviewnoReviews the diff against standards or the spec
scorenoScore the run against configured criteria
spec-checknoCheck the task spec structure
triage-assessnoAssess each triage group and assign roles
triage-groupnoGroup triage items by shared root cause
verifynoRun the spec's verification commands
write-plannoWrite the Work order contract, features, and milestones
write-specnoWrite the task spec from the intake notes

MCP tools

ToolDescription
kusaw_addCheck a spec and queue it. Pass spec_path or spec_text, not both. workflow is optional.
kusaw_approveApprove a waiting gate. note is optional.
kusaw_rejectReject a waiting gate. note is required.
kusaw_requeueStart a new run from that run's branch. note and workflow are optional.
kusaw_statusShow the kusaw status JSON (schema 1). Pass run for one run.
kusaw_take_overStop a queued, running, or waiting run and keep its worktrees.
route_taskRoute a waiting task to a named workflow.

On this page