-
Notifications
You must be signed in to change notification settings - Fork 0
Workflow
How a review flows: from launching the surface, through the annotate and apply loop, to ending the session.
Browser (the reviewer) Review server Agent
────────────────────── ───────────── ─────
read rendered .md ─────────────────────────────────────── /speckit.axi.review
select text, add notes start <feature-dir>
◄─── opens browser ────────────
click Send ──────────────► queue flushed
poll returns queue (TOON) ───► edit canonical .md
reply "<summary>"
page live-reloads ◄───── fs.watch detects edit ──────────
read the change, repeat ───────────────────────────────► poll for next round
end session in browser ──► ended state
poll returns ended ─────────► stop
The reviewer drives the loop from the browser. The agent never edits anything on its own; it only acts on the queue you send.
-
Launch. The agent resolves the feature directory and runs the server's
start. Your browser opens at a127.0.0.1address. Every.mdfile in the feature shows up as a tab. - Read and annotate. Select any phrase to attach a note, or type a general comment in the composer. Notes collect in the Notes panel, where you can edit or remove them.
-
Send. One click hands the whole queue to the agent. The agent's
pollwas blocking on it and now receives the notes as TOON. See Annotation Format. -
Apply. The agent edits the canonical
.mdfiles in place, thenreplyposts a one-line summary to the browser. - Live-reload. The server watches the feature directory and pushes a reload, so the rendered document updates in place.
-
Repeat or end. Keep reviewing, or end the session from the browser. The
agent's next
pollreturns the ended state and it runsstop.
The agent picks the feature directory in this order:
- The path you named, if any.
- The
specs/subdirectory matching the current git branch. - The one
specs/*directory, if there is exactly one. - The most recently modified
specs/*directory. - Otherwise it asks you.
The server discovers every .md file under the feature directory, recursively,
skipping dotfiles and node_modules. Known names sort first in this order:
spec.md, plan.md, tasks.md, constitution.md, research.md, data-model.md, quickstart.md
Everything else follows alphabetically. Nested files such as contracts/
appear as their own tabs.
The feature's .md files are canonical. The agent edits them in place, only as
your notes direct, and never writes a derived copy. The annotation queue lives
under .speckit-axi/ in your project and stays local. When the session ends
and the server stops, your markdown is left updated, nothing else touched.
End it from the browser, or ask the agent to stop. If you end it in the
browser, the agent's next poll sees the ended state and runs stop. If you
ask the agent to stop instead, it runs end first so the browser shows the
session as ended, then stop to shut the server down.