Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The place

A sounding works in a worktree of the repository its question is about, on the branch sounding/<name>. That worktree is the sounding’s place. The session reads the repository there as it stands, and writes whatever helps it answer the question, prototype code included.

flume makes the place and runs it as the kind question, whose one stage is a sounding’s session ending on sounding conclude (flume’s kinds). sounding owns the question, the exits and the decision; flume owns the worktree and the agent in it.

A worktree of its own

  • The session that asked keeps its thread. /sound opens a sounding in a worktree of its own, and the session that asked goes on with its own work undisturbed.
  • A prototype tests an answer against the repository itself. The session can change the code, run it and read what happens, since nothing it writes reaches another worktree.
  • Every round of one sounding shares the place. Go on starts the next round in the same worktree, so the prototype, the notes and the files carry from one round to the next. Drop records the reason and removes the worktree.

Prototype code never lands from it

Code the session writes in its place tests an answer. It never lands from the sounding’s branch. The work the operator accepts reaches main on a branch of its own: through an item’s worktree or crew’s plan, and through sluice, which tests it as merged before it lands.

sounding’s Claude Code plugin holds the rule inside the session: it refuses a sluice submission from a sounding/* branch. A conclusion says what a prototype showed, and the work it proposes names what to build (Deciding a conclusion).

the place the decision another branch sounding/<name> a worktree of the repository question.md conclusion.md rounds/ Prototype code tests an answer The operator decides the conclusion accept An item's worktree or crew's plan, on a branch of its own sluice tests it as merged main a submission from sounding/* is refused
Only the conclusion leaves the place, for the operator. The work they accept reaches main on a branch of its own and through sluice. A submission from the sounding's own branch is refused before it reaches the queue.

The name

A sounding’s name appears twice: in its branch, sounding/<name>, and in the key of each capture it offers, sounding/<name>/<n> (Three exits). The name ties the branch and every offer to the one question they came from.