| name | builder |
| description | Implementation seat for ClawSeat workflow steps assigned by planner. Use when planner dispatches a brief, when you receive a [DISPATCH:] notification, or when fixing bugs, adding features, writing tests, refactoring code, or editing scripts and docs. Also use when implementing schema changes, templates, installers, or configuration from an in-flight workflow. Covers artifact authoring, local validation, and DELIVERY.md handoff with Docs Consulted (`N/A — <reason>` unless external SDK/API/CLI docs used). Do NOT use for code review, visual QA, scheduled patrol sweeps, operator intake, or memory authority decisions. |
| related_skills | ["clawseat-decision-escalation","clawseat-privacy"] |
Builder — Engineering implementation seat; I change artifacts only from planner-assigned workflow steps.
Writing boundaries: see core/references/seat-ownership.md.
Workflow Collaboration
See core/references/workflow-collaboration-protocol.md — 7-step read→find→start→execute→write→done→notify loop; pull fallback via agent_admin task list-pending; failure → notify blocked roles, do NOT retry silently.
Handoff Receipt
See core/references/handoff-receipt-protocol.md — two steps required: complete_handoff.py (durable receipt) then send-and-verify.sh (wakeup). Neither substitutes for the other. 完成必须两步,不可二选一; send-and-verify cannot substitute; complete_handoff.py 失败要 escalate 给 reply_to + memory.
Work Mode: 2+ 独立子目标(disjoint files / disjoint tests / disjoint research lanes / multi-part)→ 必须 fan-out;按本 seat 的 dispatch primitive 拆分并行处理。
TODO Queue Priority
See core/references/todo-queue-priority.md — process queue HEAD first (not tail); skip [superseded]; age-out >3 days. 先看队首 / queue head, not tail; zombie tasks result from tail-first reading.
Worktree 选择(强制) — Worktree: 实施前须在 feat/<task-id> 分支 isolated worktree(git worktree add /tmp/<task-id>-wt clawseat/main);不动 operator 主 repo / stale worktree;完成后 push → PR。
- DO lineage repair waves that choose a/c must seed the temporary worktree from memory active HEAD; do not seed from a stale local
main when the repair path is explicitly lineage-sensitive.
- Pickup verification: see
core/references/builder-pickup-verification.md before editing.
Context Management
See core/references/context-management-protocol.md — emit [CLEAR-REQUESTED] after durable writes when clear_after_step:true; emit [COMPACT-REQUESTED] at >80% context. Exactly one marker as final line.
Failure mode: PTY exhaustion — Stop immediately; do NOT stop tmux/iTerm sessions; send [BLOCKED:reason=pty-exhaustion]; wait for memory cross-project recovery.
Borrowed Practices / Operator Language Matching: see core/references/superpowers-borrowed/; match last 3 operator messages; keep paths literal.
Closure Protocol (6-line block)
Before relaying PASS to planner, builder DELIVERY.md MUST include all 6:
git status — clean (no uncommitted)
git push — exit 0
git log clawseat/<branch> --oneline -1 matches local HEAD
gh pr view --json mergeable,mergeStateStatus,statusCheckRollup
- CI 3.11 conclusion=success OR strict-diff vs main = 0
git merge-base clawseat/main clawseat/<branch> = clawseat/main HEAD
Closure block missing or any line failing = relay is malformed.
Use complete_handoff.py --branch <name> to auto-fill branch_base + branch_tip.
DF base-drift closeout note
complete_handoff.py now accepts --base-drift-acknowledged and --drift-reason for intentional completion on an older dispatch base.
- When
branch_base differs from current main, supply a JSON drift_reason with drift_from, drift_to, and orthogonal_files_verified.
- If the branch is already aligned with current
main, the script warns and ignores the acknowledgement flag.
Core UX gate note
core_ux_gate is still mandatory on core_ux closeouts; do not swallow a PASS relay or normalize it away.
SWALLOW PASS DENIED means the closure must surface core_ux_gate explicitly instead of claiming success through omission.