The product contract
Features.
The current public install is a Claude Code plugin. The product contract is a role-distributed workflow layer: plan, brief, dispatch, verify, and local state. No invisible state. No self-attestation.
What operators kept rewriting into prompts now has a workflow surface.
The contract
The disciplined
loop.
- 01
Orchestration Plan.
For complex work, the plan comes before the brief. Nogra names the topology: single, chunks, continue, verify-only, or direct/native.
The plan holds lane, role, evidence, GO boundary, next owner, and join rules. It prevents mixed work from turning into one vague run.
Plan the topology before writing the contract.
- 02
Brief.
A run contract written before Nogra execution. Scope, success criteria, stop criteria, evidence shape. Stored as markdown in .nogra/briefs/.
The work gets judged against what was approved, not against what the model later says it meant.
The prompt asks. The brief binds.
- 03
Dispatch.
Runs an approved brief after GO in an executor role inside Claude Code. The run gets a receipt, a run id, and local transport records.
The Manager chat does not quietly become the executor. The executor gets the job. The user gets the receipt.
A goal is not a green light.
- 04
Verify.
Checks the result against the brief and evidence in a separate pass. It can verify a Nogra run or ordinary Claude work after the fact.
The model that did the work does not sign off on it. Missing evidence is not a green claim.
Done is a claim. Verification is the check.
- 05
Workspace state.
Everything Nogra writes lives under .nogra/ in the project. Briefs, run receipts, evidence, checkpoints, decisions, current tasks. Plain markdown and JSON.
A new session reads files instead of pretending the old conversation is still alive.
Conversations end. Files stay.
Where Nogra enters
Where Nogra
enters.
Nogra is invoked infrastructure. Routine agent work stays in the normal path. Nogra enters when the user asks for setup, a brief, dispatch, verification, status, or project state.
- 06
Role-distributed work.
Inside the installed workflow surface, planning, execution, verification, and operator judgment are separate responsibilities.
This does not mean Nogra routes work outside Claude Code. The current public install is Claude Code; another surface would need its own explicit install path and contract.
Separate the roles before the work starts.
- 07
Thin router.
Nogra has a small command map: setup, adapt, brief, dispatch, verify, status, settings, update, help. If no Nogra route matches, the agent remains in the normal path.
No prompt scoring, keyword ladder, or background offer engine. The router exists so explicit Nogra intent lands on the right surface.
Routing is a map, not a judgment layer.
- 08
Lifecycle hooks.
Lifecycle and convergence hooks maintain substrate: boot context, continuity pointer, session anchor, workspace focus, and permanent-risk intent checks.
They do not score prompts, draft briefs, dispatch, verify, spawn agents, or replace Claude Code's native permission model.
Hooks hold state and ask at hard boundaries. Skills do the work.
- 09
Agent guide.
nogra.ai/agent is a fetchable guide for Claude Code and agent-readable tooling. It explains the public Nogra workflow without forcing the agent to guess from marketing copy.
It is an extended llms.txt: routing, commands, boundaries, and verification meaning in one canonical place.
If the agent asks how Nogra works, there is one answer.
The command map
Commands shipped today.
Commands are the product surface. Hooks maintain local continuity and permanent-risk boundaries; skills execute the workflow.
/nogra:setupCreate local .nogra/ workspace state./nogra:adaptMap an existing project without touching app files./nogra:createCreate a project under a workspace hub./nogra:briefTurn accepted intent into an approved brief./nogra:dispatchRun an approved brief after explicit GO./nogra:verifyCheck a claim or run against scope and evidence./nogra:statusShow workspace state, versions, records, and freshness./nogra:settingsSet language and executor/verifier runtime preferences./nogra:updateRefresh installed Nogra guidance on demand./nogra:watchInspect recent local hook events when you need visibility./nogra:helpExplain Nogra and choose the right flow.
Local state
Files you can inspect.
Nogra's memory is not a promise in chat. It is a set of files in the workspace.
- .nogra/config.json
- .nogra/briefs/
- .nogra/transport/
- .nogra/evidence/
- .nogra/state/SESSION-CHECKPOINT.md
- .nogra/state/DECISIONS.md
- .nogra/state/CURRENT-TASKS.md
If it matters, it should survive the session.