Review, revise & trust
A coding agent earns trust with its diff viewer. A writing agent earns it with version comparison - seeing what was tried, what changed, and why the committed draft won.
Version snapshots - git for writing
Section titled “Version snapshots - git for writing”Every generated draft is saved under <project>/versions/: divergent variants
(labeled with their temperature), each revision round, the committed final, and every
revise output. They survive cleanup.
versions # list all snapshotsversions --chapter 3 # one unit's historyread --chapter 3 --v 2 # read a specific draft versionRevising a finished piece
Section titled “Revising a finished piece”revise rewrites one committed unit of a completed work to your instruction -
write → critique (with the same context the pipeline critic had: watch-list, your
intake requirements, prior-unit context, length target) → optional fix pass →
humanize - then patches both the section file and the assembled manuscript:
revise --chapter 3 --instruction "make the middle more technical, add a worked example"Before anything is applied you see a semantic diff (Added / Removed / Improved, written by a flash model) plus a colored unified diff, and accept or reject with one key. Rejecting touches nothing. In chat, “make section 3 more technical” maps to this command.
Table read - a skeptical cold read
Section titled “Table read - a skeptical cold read”tableread # default: a skeptical target-audience readertableread --as "a tired editor who has read 100 pitches today"A whole-piece cold read reporting where a real reader gets bored, loses trust, gets
confused, or wants something that isn’t there. Report-only - it feeds revise.
Eval - the quality scorecard
Section titled “Eval - the quality scorecard”evalCombines deterministic metrics (word counts, AI-tell sentence scan using the
humanizer’s lexicon, structural metrics, citation-vs-source coverage) with a
pro-model 5-dimension rubric - insight, clarity, structure, evidence,
persuasiveness - whose strengths and weaknesses must quote the text. Calibrated
against published work, not other AI output. Writes eval_report.md; weaknesses are
designed to feed straight into revise.
Rewrite in a different voice
Section titled “Rewrite in a different voice”revise changes what a unit says. To change how the whole piece sounds without touching
the argument, restyle it - a one-call flash rewrite into a target style (register), persona,
or emotion that preserves structure, citations, and facts. It writes restyled/<combo>.md and
leaves the original alone. The web dashboard’s Export tab exposes it
as Rewrite; see Exporting → restyle.
What the pipeline dropped
Section titled “What the pipeline dropped”Figures the reconciler didn’t place and items the pipeline skipped aren’t lost - they’re logged
to rejected.jsonl and reviewable in the web dashboard’s Rejected tab, so you can see what
was left on the floor and why.
Escalations during a run
Section titled “Escalations during a run”When manual-mode writing stalls, review --chapter N --instruction "..." answers the
escalation, and the next run resumes by revising the exact draft you reviewed -
your instruction survives every later revision round, merged ahead of the critic’s
notes.