About pipeline-reflection-ux
A skill for keeping pipeline and reflection output concise and auditable. It specifies narration order, completion reporting, notification batching, and checks that guardrail behavior remains unchanged.
Key features
- 01Make Step 0 narration visible
- 02Report reflection completion and outcome
- 03Batch late-agent notifications
- 04Preserve guardrail semantics
- 05Check tests and debug-log counts
Use cases
- 01Make reflection spawning visible in routing
- 02Report reflection results with a path
- 03Reduce noise from late background agents
- 04Verify pipeline changes preserve guardrails
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ oimiragieo/ agent-studio --skill pipeline-reflection-uxAfter installing, type/pipeline-reflection-uxin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
commands/pipeline-reflection-ux.mdhooks/post-execute.cjspre-execute.cjsreferences/research-requirements.mdrules/pipeline-reflection-ux.mdschemas/input.schema.jsonoutput.schema.jsonscripts/main.cjstemplates/implementation-template.mdDetails
From the project READMEPipeline 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 (
blockstaysblock).
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
blocksemantics 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
Comments
Markdown supported