docs: terminology sweep - add missing terms and unify patrol templates

Missing terms added:
- Stranded Convoy: convoy with ready work but no polecats (convoy.md)
- Shiny Workflow: canonical polecat formula (molecules.md)
- Health Check Commands: gt deacon health-check/health-state (reference.md)
- MQ Commands: gt mq list/submit/retry/etc (reference.md)

Patrol template fixes:
- Unified wisp spawn commands to use bd mol wisp consistently
- Fixed Refinery incorrect bd mol spawn --wisp (command does not exist)
- Fixed Deacon status=pinned to status=hooked
- Standardized startup protocol header naming
- Added Working Directory section to Witness and Refinery templates

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
furiosa
2026-01-20 19:39:45 -08:00
committed by beads/crew/emma
parent 9b412707ab
commit 2b56ee2545
6 changed files with 49 additions and 10 deletions

View File

@@ -51,6 +51,7 @@ so you can see when it lands and what was included.
|---------|-------------|-----|-------------|
| **Convoy** | Yes | hq-cv-* | Tracking unit. What you create, track, get notified about. |
| **Swarm** | No | None | Ephemeral. "The workers currently on this convoy's issues." |
| **Stranded Convoy** | Yes | hq-cv-* | A convoy with ready work but no polecats assigned. Needs attention. |
When you "kick off a swarm", you're really:
1. Creating a convoy (the tracking unit)

View File

@@ -25,6 +25,7 @@ Protomolecule (frozen template) ─── Solid
| **Molecule** | Active workflow instance with trackable steps |
| **Wisp** | Ephemeral molecule for patrol cycles (never synced) |
| **Digest** | Squashed summary of completed molecule |
| **Shiny Workflow** | Canonical polecat formula: design → implement → review → test → submit |
## Common Mistake: Reading Formulas Directly

View File

@@ -545,6 +545,24 @@ gt stop --all # Kill all sessions
gt stop --rig <name> # Kill rig sessions
```
### Health Check
```bash
gt deacon health-check <agent> # Send health check ping, track response
gt deacon health-state # Show health check state for all agents
```
### Merge Queue (MQ)
```bash
gt mq list [rig] # Show the merge queue
gt mq next [rig] # Show highest-priority merge request
gt mq submit # Submit current branch to merge queue
gt mq status <id> # Show detailed merge request status
gt mq retry <id> # Retry a failed merge request
gt mq reject <id> # Reject a merge request
```
## Beads Commands (bd)
```bash

View File

@@ -152,7 +152,7 @@ gt mail inbox
gt mol attach-from-mail <mail-id>
# Step 3: Still nothing? Create patrol wisp (two-step: create then hook)
bd mol wisp create mol-deacon-patrol
bd mol wisp mol-deacon-patrol
bd update <wisp-id> --status=hooked --assignee=deacon
```
@@ -238,8 +238,8 @@ Then squash and decide:
bd mol squash <wisp-id> --summary="Patrol complete: checked inbox, scanned health, no issues"
# Option A: Loop (low context)
bd mol wisp create mol-deacon-patrol
bd update <wisp-id> --status=pinned --assignee=deacon
bd mol wisp mol-deacon-patrol
bd update <wisp-id> --status=hooked --assignee=deacon
# Continue to first step...
# Option B: Exit (high context)

View File

@@ -80,6 +80,14 @@ queue for your rig, merging polecat work to main one at a time with sequential r
**The Scotty Test**: Before proceeding past any failure, ask yourself:
"Would Scotty walk past a warp core leak because it existed before his shift?"
## Working Directory
**IMPORTANT**: Always work from `{{ .WorkDir }}` directory.
Identity detection (for mail, mol status, etc.) depends on your current working
directory. The refinery operates on the main branch worktree, so all commands work
from this directory.
## 🔧 ZFC Compliance: Agent-Driven Decisions
**You are the decision maker.** All merge/conflict decisions are made by you, the agent,
@@ -153,8 +161,9 @@ Then check your hook:
gt hook # Shows hooked work (if any)
bd list --status=in_progress --assignee=refinery
# Step 2: If no patrol, spawn one
bd mol spawn mol-refinery-patrol --wisp --assignee=refinery
# Step 2: If no patrol, spawn one (two-step: create then hook)
bd mol wisp mol-refinery-patrol
bd update <wisp-id> --status=hooked --assignee={{ .RigName }}/refinery
```
**No thinking. No "should I?" questions. Hook → Execute.**
@@ -290,7 +299,8 @@ Then squash and decide:
bd mol squash <wisp-id> --summary="Patrol: merged 3 branches, no issues"
# Option A: Loop (low context, more branches)
bd mol spawn mol-refinery-patrol --wisp --assignee=refinery
bd mol wisp mol-refinery-patrol
bd update <wisp-id> --status=hooked --assignee={{ .RigName }}/refinery
# Continue to inbox-check...
# Option B: Exit (high context OR queue empty)
@@ -335,7 +345,8 @@ gt mail send {{ .RigName }}/<worker> -s "Rebase needed" \
### Patrol
- `gt hook` - Check for hooked patrol
- `bd mol spawn <mol> --wisp` - Spawn patrol wisp
- `bd mol wisp <mol>` - Create patrol wisp
- `bd update <wisp-id> --status=hooked --assignee=...` - Hook the wisp
- `bd mol squash <id> --summary="..."` - Squash completed patrol
### Git Operations

View File

@@ -111,6 +111,14 @@ Your job:
- Close issues for work you didn't do
- Skip mol steps or hallucinate completion
## Working Directory
**IMPORTANT**: Always work from `{{ .WorkDir }}` directory.
Identity detection (for mail, mol status, etc.) depends on your current working
directory. The witness monitors polecats in this rig, so all commands work
from this directory.
## Tools Overview
### Polecat Inspection
@@ -151,9 +159,9 @@ bd list --status=in_progress # Active work in rig
---
## 🚀 PROPULSION: The Universal Law
## Startup Protocol: Propulsion
> **If you find something on your hook, YOU RUN IT.**
> **The Universal Gas Town Propulsion Principle: If you find something on your hook, YOU RUN IT.**
There is no decision logic. No "should I?" questions. Check your hook, execute:
@@ -170,7 +178,7 @@ gt mail inbox
gt mol attach-from-mail <mail-id>
# Step 4: Still nothing? Create patrol wisp
bd mol wisp create mol-witness-patrol
bd mol wisp mol-witness-patrol
bd update <wisp-id> --status=hooked --assignee={{ .RigName }}/witness
```