docs(agents): add rolling HUD protocol for session-scoped status display

The HUD is an ephemeral status block (active ticket, done items, current
work, queued items, user action items) shown after significant responses.
Written to .crush/hud.md on disk to save context tokens; never committed.
Redmine/Discourse/git remain the durable systems of record.

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
This commit is contained in:
2026-08-11 20:35:08 -05:00
parent 28b0019d2e
commit 9cf15f1258
+40
View File
@@ -143,6 +143,46 @@ docker run --rm --env-file ~/.creds/discourse.env \
- Clear WORKING.md (to "all done") before responding to the user. - Clear WORKING.md (to "all done") before responding to the user.
- **The human decides when the work is done and when to deploy.** Never declare "done" unilaterally. - **The human decides when the work is done and when to deploy.** Never declare "done" unilaterally.
## Rolling HUD (session-scoped, NOT persisted)
The rolling HUD is a **live status display** the agent maintains throughout
the session to help the human follow along. It is NOT a system of record —
Redmine, Discourse, and git are the durable systems. The HUD exists purely
for the human's situational awareness during the session.
- **Format:** a compact block shown at the end of each significant response
(after completing a step, hitting a blocker, or pivoting). Example:
```
┌─ SESSION HUD ────────────────────────────────────────
│ Active: #NNN (ticket subject)
│ Done: ✓ first completed item this session
│ ✓ second completed item
│ Now: what the agent is actively doing right now
│ Next: → #NNN next queued ticket
│ → #NNN another queued item (BLOCKED: what's needed)
├─ USER ACTION ITEMS ──────────────────────────────────
│ • Action only the user can take (unblocks #NNN)
│ • Another user action (unblocks #NNN)
└──────────────────────────────────────────────────────
```
- **Placement:** may be written to `.crush/hud.md` on disk to keep context
window smaller (re-read and update rather than hold in memory). Never
committed to git. Wiped at session end.
- **Sections:**
- **Active:** current ticket number + one-line description
- **Done:** ✓ items completed this session (append as work progresses)
- **Now:** what the agent is actively doing
- **Next:** the queued items (per handoff priority or user direction)
- **User action items:** things ONLY the user can do (populate creds,
physical work, manual deploys) with the tickets they unblock
- **When to show it:** after each logical unit of work, at blockers, and
when pivoting between tickets. Not every trivial response — use judgment.
- **NOT a substitute for Redmine/Discourse/git.** The HUD is ephemeral. When
work completes, update the durable systems (ticket notes, Discourse wiki,
commits). The HUD just tracks the live narrative for the human.
## Questions ## Questions
- **NEVER use a harness "question"/"ask user" tool** (structured prompts, - **NEVER use a harness "question"/"ask user" tool** (structured prompts,