The hallucinations end before the code

strainr gives your coding agent context in three stages, then makes it audit its own plan. Any model builds. Claude Code drives.

Early build. Plan checks, the state file, and strainr doctor work today. The pipeline is on the way.

Coding agents guess when they lack context.

A model that has not read your code invents the file, the function, and the number it needs. The result compiles and sounds sure. strainr removes the guess before the first line is written. Then it makes the plan prove itself.

Fig 1 · Map
Stage 1

Map the project

Graphify turns your codebase into a graph. The agent follows real paths through your code and does not rely on memory.

  • Answers come as graph paths with file and line citations
  • Only changed files are indexed again
  • The graph builds on your machine
Fig 2 · Ask
Stage 2

Ask only what the code cannot say

The graph answers first. Claude Code asks you the rest and turns your answers into a rough plan.

  • About seven questions, mostly multiple choice
  • A pulsing tower waits for you, not for a guess
  • No plan starts until every question has an answer
Fig 3 · Audit
Stage 3

Force the plan to audit itself

A second model family reads the draft with full project context. Claude Code must answer every finding.

  • Each finding carries severity and file and line evidence
  • Claude accepts or rejects it and writes a reason
  • Two rounds at most, so the loop always ends
Fig 4 · Build
Then build

Any model builds. Claude Code drives.

The approved plan splits into tasks. Each task names its files and a check command. Agents run in separate git worktrees on the model you pick.

  • Swap a model and keep the plan
  • No two parallel tasks touch the same file
  • A task is done only when its check passes

strainr needs Claude Code to run the interview and write the plan. After the plan, every agent can run on a different model.

Eight stages. One folder of state.

Plain code runs the order. Models do the work inside each stage, and no model controls the flow. Every run saves to .strainr/, so it can resume after a crash.

  1. IndexGraphify maps the project.
  2. InterviewClaude asks what the graph cannot answer.
  3. DraftClaude writes the rough plan.
  4. AuditCodex finds problems. Claude rules on each one.
  5. ApproveYou read the plan and the cost, then say go.
  6. BuildParallel agents in git worktrees.
  7. VerifyTask checks run, then the full test suite.
  8. WalkPlaywright tests the code it just pushed.

Honest status

strainr is at version 0.0.1. This is what exists today.

  • Plan checks built
  • State file in .strainr/ built
  • strainr doctor built
  • Graphify index planned
  • Interview and draft planned
  • Audit loop planned
  • Build and verify planned
  • Walk with Playwright planned
strainr doctor
$ strainr doctor
ok      git (worktrees for build agents)
ok      ollama (local models)
ok      claude (interview and plan)
ok      codex (plan audit)
missing graphify (project graph)
plan check
Two tasks, no dependency, one shared file:
Tasks a and b can run in parallel but both change x.ts

The plan is rejected before any agent starts.

Runs on your machine

The graph, the models, and the agents run locally. strainr hosts nothing and sends your project nowhere.

Your own sign-ins

Claude Code and Codex use your accounts. strainr has no account of its own and no billing.

State in plain files

Read and edit any file in .strainr/. Stop a run, change the plan, and resume.

Make your agent show its work.