| name | loopany-capture |
| description | Auto-capture after substantive work concludes. Routes events (PR shipped, incident resolved, decision made, problem noticed) to the right loopany artifact kind with a quality gate. Should run proactively โ check this skill at the end of every user-requested task. Triggers: after any substantive work, 'record this', 'log this outcome', PR shipped, incident resolved, decision made, problem noticed but deferred. |
loopany-capture โ event-triggered artifact capture
After substantive work concludes, check whether to record it as a
loopany artifact. "Substantive" = produced evidence or a decision a
future reader would need to find.
Event โ Kind routing
| Event | Target kind | Read |
|---|
| PR shipped / merged | task | ../loopany-core/kinds/task.md |
| Incident resolved | task | ../loopany-core/kinds/task.md |
| Problem noticed, not acting now | signal | ../loopany-core/kinds/signal.md |
| Existing task outcome observed | append ## Outcome | ../loopany-core/kinds/task.md ยง Playbook |
| Decision made with rationale | note or task --status done | see flowchart below |
Decision flowchart
- Resolved a pending signal? โ
task --status done + addressed edge
- Produced something shippable? โ
task --status done with ## Outcome
- Reasoned preference / principle? โ
note titled "decided: X over Y because Z"
- Belief from โฅ 2 data points? โ
learning via loopany-reflect
Default note when unsure.
Quality gate
Skip capture when:
- Not observable โ feeling, not fact.
- Already captured โ
loopany artifact list --contains "<phrase>". Match? Append.
- Too small โ typo fix, whitespace, one-liner.
- Speculation โ at most a
signal, only if concrete.
- Internal agent work โ grepping, reading, answering. Not a capture event.
Quick test: if you can't write a one-sentence ## Outcome, skip the task.
Subagent dispatch
Don't capture inline โ it breaks focus and produces weaker artifacts:
- Filter โ main session runs the quality gate.
- Compose context (3-5 sentences): what happened, why it matters,
any numbers or artifact IDs in scope.
- Dispatch: "Record this via loopany. Read
loopany-core to pick
the right kind. Return the artifact ID."
- Subagent writes the artifact, returns ID.
- Main session continues โ no context switch.
If the host has no subagent primitive, capture inline but keep it tight.
Anti-patterns
- โ Trigger on every message exchange โ only at completed-work boundaries.
- โ Capture during work, not after โ no Outcome yet.
- โ Skip the quality gate โ noise artifacts pollute reflect.
- โ Inline capture in long sessions โ use subagent pattern.