Dryforge
Install
Dryforge

Just explain it.
We'll take the rest.

Your agent works like a senior developer.

From the first messy idea through the last line of code — one plugin, the whole thread.

/plugin marketplace add fn-opt/dryforge
/plugin install dryforge

Don't stack code on a guess

Ask properly up front and you spend less time building the wrong thing and tearing it down. A few questions now beat a big rewrite later.

Start with the outcome

The behavior you want, the edge cases, the rules that have to hold — none of that is in the code. Those get asked until they're clear.

How to build it can wait

The agent researches the implementation. It only stops to show trade-offs when the choice actually changes the result.

If the code already knows, it doesn't ask

Answers it can read from the codebase, or choices that don't change the outcome, it handles on its own.

If a bad assumption only shows up at the last check, you asked too late.

More process does not mean better work

More checks look safer. Then the agent works to clear the checklist, and the thing you wanted built comes second. Dryforge draws the lines that must hold and leaves judgment inside them. When models get better, an old procedure does not hold them back.

01
Only the scope you approved

If it has to step outside that scope, it does not go ahead on its own. It asks again.

02
Results, not claims

“Done” is not evidence. What counts is a command that actually ran.

03
Decisions that stay in the project

What you decided and why is written into the project. The next conversation starts by reading it.

Just explain it. /ready will take it from there.

Install the plugin, then write one line about what you want.

Two commands. One loop.

/ready
The missing decisions
/go
Then it runs what you approved
Project docs
The calls and the reasons stay

The next task starts here

If the project already has code, run /migration once at the start.

/ready takes unfinished thoughts

A one-line idea, a spec another tool dumped, scattered notes — put any of it in. Whatever the code can answer, it fills in. It only asks you what the code cannot.

Claude Code / Codex /ready <INPUT>
✓ One-line idea · spec · scattered notes
✓ Treated as material, not as the answer
✓ Only the missing calls, then you confirm
Waiting for your command...

/go does not treat every job the same

A small edit does not get the heavy process. Every result is checked. Work that's hard to undo gets split and checked more carefully.

Claude Code / Codex /go
> Executing task...
✓ Approved scope and order, checked
✓ Simple work straight through, risky work split
✓ Results confirmed by commands that actually ran
Task completed successfully!

/migration reads the project you already have

This is not a greenfield-only tool. It reads the code you have, lays out the structure and the rules, and confirms only what the code cannot settle.

your-project/
├── CLAUDE.md              What Claude Code reads first
├── AGENTS.md              What Codex reads first
└── docs/
    ├── architecture.md    Structure and flow
    ├── business-rules.md  How the product is supposed to behave
    ├── security.md        Security policy
    ├── standards.md       Rules that have to hold
    ├── operations.md      Install, build, deploy
    ├── contracts.md       What we send and receive
    └── tracking/          Decisions and progress
The documents stay in the project. You decide when to commit.

Questions

When does it run?

Only when you type /ready, /go, or /migration. It does not jump into ordinary chat or other work.

Does it change the setup I already have?

No. It attaches as a plugin on Claude Code or Codex. No extra server, no extra account. Work stays in the folder and git you already use. Remove the plugin and the documents stay in the project.

Do I have to use it for everything?

No. If the change is small and already clear, just do it. Dryforge fits the work where a wrong call is expensive to undo.