Pipeline Reflection UX Use this skill to keep pipeline/reflection output concise, explicit, and low-noise. Workflow Make Step 0 visible in router narration. Emit Step 0 completion before TaskList() . Emit a one-line reflection outcome with report path. Batch late post-pipeline notifications into one summary. Keep guardrail semantics unchanged ( block stays block ). Required Checks Add/adjust tests before behavior changes. Confirm no regression in routing/taskupdate/read-safety tests. Verify debug-log counts improve for repeated violations/noise. Iron Laws ALWAYS emit Step 0 narration (pending reflections count) before any TaskList() call — omitting the narration makes reflection spawning invisible to the user and breaks the pipeline audit trail. NEVER batch reflection spawns with tool calls that depend on their results — reflection agents must complete before the router proceeds to routing; mixing them creates race conditions. ALWAYS emit a one-line reflection outcome (report path + summary) after reflection-agent completes — without this, the user cannot distinguish a completed reflection from a skipped one. NEVER emit one status message per late-completing background agent — per-agent late notifications create noise storms; batch all late completions into one summary after drain gate passes. ALWAYS preserve existing block semantics when modifying pipeline narration — changing guardrail modes while fixing UX copy conflates two concerns and masks the behavioral impact of either change. Anti-Patterns Anti-Pattern Why It Fails Correct Approach Omitting Step 0 narration Reflection spawning invisible to user; pipeline audit trail broken Always emit "Step 0: N pending reflections..." before spawning reflection agents Missing one-line reflection outcome User cannot distinguish completed reflection from skipped one Emit report path + one-line summary after every reflection-agent completion One status message per late-completing agent Creates noise storms; clutters pipeline output Batch all late completions into one summary message after drain gate passes Changing guardrail modes while fixing UX copy Conflates two changes; behavioral impact of each masked in review Separate UX copy changes from guardrail mode changes in distinct commits Emitting Step 0 completion after TaskList() Violates router output contract; narration out of sequence Emit "Step 0 complete." before calling TaskList(), not after Memory Protocol (MANDATORY) Before starting: Read .claude/context/memory/learnings.md After completing: New pattern → .claude/context/memory/learnings.md Issue found → .claude/context/memory/issues.md Decision made → .claude/context/memory/decisions.md ASSUME INTERRUPTION: If it's not in memory, it didn't happen. References Detailed UX review: references/ui-reflection-review.md Troubleshooting runbook: .claude/docs/TROUBLESHOOTING.md Task tracking protocol: .claude/docs/@TASK_TRACKING_GUIDE.md
pipeline-reflection-ux
安装
npx skills add https://github.com/oimiragieo/agent-studio --skill pipeline-reflection-ux