Critique Code writes the change, runs the checks, and keeps going until the evidence says stop. Same class as Codex and Claude Code, not a comment bot on top of them. It happens to be lethal at review because it is a full coding loop, not a reviewer pretending to code.
Then critique-code or critique-code web in the repo you want to edit. Separate from @critiquedotsh/cli.
t+0repo.boundworking tree, base SHA, limits
t+1edit.loopmodel turns through governed tools
t+ntest.focusedCheckRequest, not a model shell
stopship.when.provenor keep writing
Any model. Your providers or ours.
Point Critique Code at the keys you already pay for. Or route through Critique Inference and skip the provider wrangling. The harness does not care which logo sits on the model.
Critique Code
OpenAI
Anthropic
DeepSeek
Google
Qwen
Kimi
Mistral
MiniMax
Z.AI
NVIDIA
OpenRouter
Critique Code
OpenAI
Anthropic
DeepSeek
Google
Qwen
Kimi
Mistral
MiniMax
Z.AI
NVIDIA
OpenRouter
The test spine
A coding harness that skips tests is guessing.
Critique Code is a general coding agent. It implements, refactors, and patches. Cheap checks spend first. Focused tests try to break the change. Review is not a separate product. It is what happens when the same harness refuses to call the job done on vibes.
PASStrust.preflightsecrets, digest, redaction map
PASStypecheckzero agent cost
PASSlintdeterministic delta
PASSsecrets.deltano new credential material
PASScontract.breakpublic surface still holds
RUNtest.focusedCheckRequest, not a model shell
FAILreproducecandidate state still breaks
PASSnearby.testschanged lines executed
KILLadjudicatefresh session, no specialist chat
PROVENfindingor it stays HYPOTHESIS
A coding harness with a controller, not a chat wrapper.
Codex-class loops wrap a model and keep writing. Critique Code still writes. It also owns what may run, which repository state was examined, whether an observation is evidence, and whether the job is actually done. The agent kernel is replaceable. The controller is not.
Critique decides what may be executed, which commit was examined, how tools are provisioned, and which CPU, memory, process, network, and time limits apply. A model turn cannot widen that envelope.
owns
execution, state, provenance, limits
kernel
model turns through provided tools
moat
proof architecture, not the wrapper
02
Requests are not commands
The model names a capability, a target, and a purpose. The harness resolves the binary, arguments, working directory, timeout, network, and write policy. Shell operators, path escapes, and unknown capabilities are rejected.
asks
CheckRequest: capability + target
runs
ResolvedCheck: argv, cwd, budget
never
model-authored shell strings
03
Observation is not a finding
A tool fact is an observation. Evidence is that fact bound to repository state and tool identity. A hypothesis is a falsifiable claim. A finding is promoted only after a fresh adjudicator tries to kill it. Agreement is never proof.
objects
observation, evidence, hypothesis, finding
status
PROVEN, SUPPORTED, HYPOTHESIS, REFUTED, STALE
ladder
E0 assertion through E5 resistant proof
04
Write when the evidence says so.
The loop can inspect, patch, and re-verify. Specialists do not debate the adjudicator. Candidates are selected by evidence. A blind verifier sees the defect, the patch, and the workspace, not the repair chat.
inspect
read-only until you ask to write
patch
explicit intent, evidence-selected
verify
fresh, blind, no repair chat
Same org. Two binaries.
Critique Code is @critiquedotsh/harness, binary critique-code. Critique CLI is @critiquedotsh/cli, binary critique. The CLI will not become Code. Other agents can call the sidecar, or you can run critique-code yourself.
From your agent
Critique CLI as a teammate
Wire Critique CLI into Codex, Claude Code, Cursor, or OpenCode. The managed runtime other agents already know. Local working tree, optional cloud, finish.v1.
cliteammate · v0.1.3
$critique integrate --agent all
critique finish --intent "add retries and cover them"
As the agent
Use it like Claude Code or Codex
critique-code is the first-class agent command. Same kernel in the TTY or in a local browser via critique-code web. It writes, tests, repairs, and reviews inside the same harness.
critique-code web serves the same author session in a browser on 127.0.0.1. Composer, transcript, Review, Repair, Ship. The process still owns CAS writes, user-gated runs, and the /review gate. The tab can close. The kernel cannot move to Critique Cloud or to someone else's web app.
Recorded on critique-code web: write src/health.ts, approve git status, then Review. Loopback only. Author output is not Evidence.
In a critique-code session, type / or /help for a selectable picker. critique-code web exposes the same lines as buttons. Lines that start with / never go to the model. Spoken review, repair, ship, and exit match the typed commands when voice is on. An empty clip after /voice on returns to the keyboard.
critique-codeslash never reaches the model
Session
Voice
Proof
Config
End
↑↓ move↵ copy/help
Same class as Codex and Claude Code.
A general coding harness. The split is who owns the shell, what counts as done, and whether a test log is evidence. Snapshot numbers are the supplied DeepSeek V4 Flash slice, not a Critique evaluation.
Critique Code
Controller-owned harness
Job
Write, repair, and ship. Review is part of the same loop.
Who runs tests
Named capability. Harness resolves argv, cwd, timeout, network.
Stop condition
A finding status bound to evidence
What counts as proof
PROVEN or SUPPORTED, else it stays a hypothesis
30-task snapshot
20 passed
Cost per success
$0.028
Median time
132.2s, mid-pack, not a speed claim
Claude Code
Coding agent harness
Job
Long autonomous implementation
Who runs tests
The agent types a command and reads the log
Stop condition
Session goal reached
What counts as proof
Files written and checks the agent chose to run
30-task snapshot
16 passed
Cost per success
$0.195
Median time
122.7s, slightly quicker on this slice
Codex
Coding agent harness
Job
Create a diff and keep going unattended
Who runs tests
Sandbox plus whatever the model authored
Stop condition
Task complete, usable diff
What counts as proof
A diff you can accept
30-task snapshot
16 passed
Cost per success
$0.081
Median time
245.0s
Trial the harness on Verify.
Hosted Critique Code, free to measure. Fair-use and abuse safeguards still apply. Model availability can change as the beta evolves.
UnlimitedDeepSeek V4 Flash on Verify for the CritiqueCode beta.
100B+DeepSeek V4 Pro tokens to test the latest Pro route on real jobs.
On the supplied DeepSeek V4 Flash snapshot, CritiqueCode passed 20 of 30 tasks. Claude Code and Codex passed 16. Cost per success was $0.028 against $0.195 for Claude Code and $0.081 for Codex. Median time was 132.2s, between Claude Code at 122.7s and Codex at 245.0s. Latency is mid-pack, not a wall-clock miracle.
Pass rate
DeepSeek V4 Flash, 30-task slice
CritiqueCode66.7%
Claude Code53.3%
Codex53.3%
OpenCode46.7%
0%25%50%75%100%
Tasks passed
DeepSeek V4 Flash, 30-task slice
CritiqueCode20 / 30
Claude Code16 / 30
Codex16 / 30
OpenCode14 / 30
08152330
Cost per successful task
Lower bar is the spend. Longer fill is cheaper.
CritiqueCode$0.028
OpenCode$0.073
Codex$0.081
Claude Code$0.195
0cheaper →
Median time per task
DeepSeek V4 Flash. CritiqueCode is not the fastest.
Claude Code122.7s
OpenCode129.7s
CritiqueCode132.2s
Codex245.0s
0faster →
This is an externally supplied snapshot, recreated from the introducing-CritiqueCode post. Pass rates for Claude Code, Codex, and OpenCode are the 16/30, 16/30, and 14/30 task counts from that slice. It is useful context for why harness design changes cost and pass rate. It is not a Critique evaluation, and it is not a guarantee on your repository. CritiqueCode will be promoted on our own corpus: same task, same model, same plan, same verifier.
Questions
What is Critique Code?
An agentic coding harness. Same class as Codex and Claude Code: it writes code, runs tools, tests the change, and patches until the evidence says stop. It is also unusually good at review, because review is the same loop, not a sidecar. It is not a model, not a comment bot, and not Critique CLI.
How is Critique Code different from Critique CLI?
Critique CLI is @critiquedotsh/cli, binary critique. Critique Code is @critiquedotsh/harness, binary critique-code. Other agents can call the CLI, or you can run critique-code yourself. The CLI will not become Code.
How do I run it locally?
npm install --global @critiquedotsh/harness, then run critique-code or critique-code web in the repository you want to edit. The web UI binds 127.0.0.1 only. Run critique-code login and approve on the website to use Critique Inference with no pasted key. Interactive sessions keep stdout quiet; pass --json for the machine envelope. Keep @critiquedotsh/cli if other agents should call critique integrate --agent all or critique finish. OpenRouter Activity attributes Critique Code to critique.sh.
What is critique-code web?
A local browser client of the CritiqueCode author process. Run critique-code web in the repo you mean to edit. It binds 127.0.0.1 only. Same /review, /repair, and /ship as the TTY. It is not OpenCode's web UI, not the Critique CLI sidecar, and not a hosted session.
Which models can I use?
Default is Critique Inference (critique/auto) after website approval. You can still paste OpenAI, OpenRouter, Anthropic, Google, Qwen, and other keys. The harness is not locked to one lab.
How does Critique Code compare to Claude Code and Codex?
Same category: coding agent harnesses. On the supplied DeepSeek V4 Flash 30-task snapshot, CritiqueCode passed 20 of 30. Claude Code and Codex passed 16 of 30. Cost per success was $0.028 against $0.195 for Claude Code and $0.081 for Codex. Median time was 132.2s, between Claude Code at 122.7s and Codex at 245.0s. That snapshot is not a Critique evaluation. Critique Code is a general coding loop that also happens to be lethal at review.
Is Critique Code a replacement for Codex, Claude Code, or OpenCode?
You can run it instead of those loops. You can also keep them and have them call Critique CLI. Those are the two local options. Critique Code itself is not a PR comment bot sitting on top of someone else's agent.
How do I try it without installing?
Open Verify, pick CritiqueCode (Beta), and run a real job. For the beta, DeepSeek V4 Flash is free and unlimited. We are also offering over 100 billion DeepSeek V4 Pro tokens. Fair-use and abuse safeguards still apply.
Does Critique Code have voice mode?
Yes. In a critique-code session, /voice records one prompt and transcribes it with Qwen3 ASR 0.6B. /voice on keeps listening after each reply. Spoken review, repair, ship, and exit still run as commands. critique-code --voice starts already listening. Transcription bills $0.000003 per second of audio on the Inference API. The recorder is bundled ffmpeg; you do not need a system sox install.
What slash commands work in a session?
Type / or /help for a picker. Slash lines never go to the model. /login connects Critique Inference. /voice, /voice on, and /voice off handle speech. /review, /review all, /repair, and /ship run the evidence loop. /settings, /models, /keys, and /skills configure the session. /done ends after a review. /exit leaves. Unknown /foo is rejected, not forwarded as chat.