원클릭으로
compost-review
Surface what Piper learned when projects, features, or decisions reached
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Surface what Piper learned when projects, features, or decisions reached
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Execute one autonomous duty-cycle fire (START / WATCH / WORK / STOP) for a cycling agent. Invoked by the thin cron prompt on each fire. Use when a "DUTY CYCLE TICK" prompt fires, or to run a cycle fire manually. Holds the durable procedure so the cron prompt stays one-line.
Draft the Piper Morgan Weekly Ship newsletter from collected workstream memos. Use when PM says "draft the Ship", "draft Ship
Publish a finished blog post from this repo to the pipermorgan.ai website repo. Use when PM says "publish this post", "push to the blog", or when a draft is marked ready in the editorial calendar. Bridges piper-morgan → piper-morgan-website.
Update the editorial calendar CSV when PM reports a publication, new draft, status change, or URL. Use when PM says "published X on Medium", "add Y to the calendar", "update the URL for Z", or provides syndication URLs after a publish.
Delete a dead/fabricated module (or module family) without stranding importers, tests, CI jobs, or docs. Use for any fix-or-delete execution, Tier-3-style dead-code removal, or retiring a superseded subsystem. Encodes the Finish-the-Unfinished sprint's deletion lessons (Families 1-3, 2026-07-18/19).
Read GitHub Projects-v2 boards and issue state WITHOUT silent truncation or stale claims. Use whenever summarizing sprint/board state for PM, counting open items, or making any "N of M" claim about issues. Companion to assign-sprint-safely (which covers WRITES; this covers READS).
| name | compost-review |
| description | Surface what Piper learned when projects, features, or decisions reached |
Surface what Piper extracted when something reached COMPOSTED — the last stage in the object lifecycle, where finished or abandoned things decompose into learnings rather than disappearing.
Most PM tools make completed work invisible. A project ships, the tickets close, and everything you learned — what went wrong in estimation, what the user actually wanted vs. what you built, what team dynamic slowed you down — vanishes into commit history and closed issue trackers.
Piper's COMPOSTED stage captures learnings at the moment of completion rather than letting them dissolve. compost-review surfaces those learnings when they're most useful: before starting something similar, when a past pattern re-emerges, or when PM explicitly wants to reflect.
The Insight Journal is user-correctable — Piper's extracted learnings are hypotheses, not facts. PM can amend them.
COMPOSTED is stage 8 of 8 in Piper's object lifecycle:
EMERGENT → DERIVED → NOTICED → PROPOSED → RATIFIED → DEPRECATED → ARCHIVED → COMPOSTED
When something reaches COMPOSTED, Piper:
The object no longer appears as an active item — but its learnings compound into Piper's model of how this PM and product work.
PM-triggered:
Piper-triggered (Trust Gradient: Established tier or above):
Clarify the scope before surfacing. Options:
estimationWith server access: query Insight Journal for the relevant scope.
Without server access: reconstruct from conversation history, session logs, and explicitly stated learnings. Be clear about what Piper is working from.
If no relevant composted objects exist: say so directly. "Nothing similar has composted in Piper's memory yet" is an honest and useful answer.
Use this template. One section per composted object; order by relevance to current work (or by recency if no current-work trigger).
## Compost Review: [Scope description]
*[Date range or trigger for this review]*
---
### [Object name] — composted [date]
**What it was**: [One sentence: what this project/feature/decision was trying to do]
**Why it reached COMPOSTED**: [shipped / abandoned / superseded / decision reversed]
**How long it was active**: [timeframe from EMERGENT to COMPOSTED]
**What Piper extracted** *(Insight Journal — user-correctable)*:
- **What worked**: [specific practices, approaches, or decisions that produced good outcomes]
- **What didn't**: [specific things that caused friction, delay, or poor outcomes]
- **What surprised us**: [outcomes or discoveries that weren't anticipated]
- **Pattern noted**: [any recurring behavior, team dynamic, or product signal worth naming]
**Confidence**: [High / Medium / Low — based on how much signal Piper had to work from]
**Relevant to current work because**: [why Piper surfaced this now, or "surfaced on request"]
---
[Repeat for each object in scope]
---
## Cross-object patterns
[If reviewing multiple objects: any themes that appear across more than one?
E.g., "Estimation was optimistic in all three Q1 projects" or "User onboarding
consistently surfaced friction at the connector setup step."]
*Only include if a genuine pattern exists — don't manufacture one.*
---
## Corrections invited
These are Piper's extracted learnings — they're hypotheses based on what was observed,
not ground truth. If anything above is wrong, incomplete, or misleading, tell Piper now:
"The learning about X is wrong because Y." Piper will update the Insight Journal.
If there's a current-work trigger (PM is about to start something similar), connect the learnings explicitly:
"Given that you're about to start [new work], the most relevant learning from [composted object] is [specific learning]. Want to factor this into the planning?"
Don't lecture. One connection, concisely stated, with PM's choice about whether to act on it.
After the review, offer one of:
propose-feature if a learning surfaces something worth buildingdraft-spec or sprint-planrecord-decision (if a pattern is strong enough to formalize as a product principle)| Don't | Why | Instead |
|---|---|---|
| Surface learnings without context about what composted | PM may not remember the object | Always lead with what the object was and why it composted |
| Present extracted learnings as facts | Piper's extraction is inference | Frame as "what Piper observed" + invite corrections |
| Surface composted learnings proactively at New trust tier | PM hasn't calibrated Piper's judgment yet | Gate proactive surfacing on Established tier |
| Review everything at once without a scope | Unfocused reviews produce noise, not insight | Scope by object, theme, or recency before surfacing |
| Skip the "cross-object patterns" section | The most valuable insight is often the pattern across objects, not any single one | Look for it; name it if real |
Before presenting the review:
Trigger: PM says "We're about to spec the weekly digest feature. Have we tried anything like this before?"
Piper searches composted objects for: periodic/proactive delivery features, notification mechanics, digest-style output.
Compost Review:
## Compost Review: Features similar to WEEKLY-DIGEST
*Triggered by: new spec work on WEEKLY-DIGEST (2026-06-15)*
---
### STANDUP-ASSIST — composted 2026-03 (4 months ago)
**What it was**: A skill that would generate a daily standup summary from recent GitHub + calendar activity
**Why it reached COMPOSTED**: Scope was absorbed into the broader `attention-review` skill concept; standalone standup generation deprioritized
**How long it was active**: 6 weeks (PROPOSED → COMPOSTED without reaching RATIFIED)
**What Piper extracted**:
- **What worked**: The format — bullet points, chronological, under 200 words — tested well in early exploration
- **What didn't**: Trying to auto-detect "what changed since yesterday" without reliable timestamps on GitHub events; the data model wasn't there yet
- **What surprised us**: PM wanted the standup to include what's *blocked*, not just what *happened* — the "blocked" signal requires asking PM directly, which changes the interaction model
- **Pattern noted**: Proactive delivery features consistently surface the question "what triggers this?" — time-based (cron) vs. event-based (something changed) vs. PM-requested. Each has different UX implications.
**Confidence**: Medium (limited session data from that period)
**Relevant to WEEKLY-DIGEST because**: Same core mechanics — pull GitHub + Calendar, format into a digest. The "blocked" finding is directly relevant: if WEEKLY-DIGEST doesn't surface blockers, PM may find it incomplete the same way.
---
## Cross-object patterns
Only one relevant composted object — no cross-object pattern to call out yet.
---
## Corrections invited
If the STANDUP-ASSIST extraction above is wrong or incomplete, tell Piper now.
Follow-on offered: "The 'blocked' signal finding seems directly relevant to how you scope WEEKLY-DIGEST — want me to add it as an open question in the spec?"