技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
retro【数据与研究】Capture learnings from a campaign, launch, sprint, or initiative using Five Whys (Taiichi Ohno, Toyota Production System) for root cause analysis and Start-Stop-Continue for action planning. Append reusable insights to knowledge/learnings.md so future runs of the OS get smarter. Use when the user asks for a retro, retrospective, post-mortem, "what di…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Captures structured learnings and persists them. The OS gets smarter every time this runs. Built on Five Whys (Taiichi Ohno) for root cause analysis and Start-Stop-Continue for action planning. The combination prevents "surface retros" - where the team identifies symptoms but repeats the same mistakes with different details.
When something goes wrong - or unexpectedly right - ask "why?" five times. Each answer becomes the basis for the next "why." The goal is the root cause, not the symptom.
Marketing example:
Without Five Whys, the team would have concluded "lead quality was poor" and changed the ad creative. The problem would repeat.
Five Whys applies to wins too. An unexpected outperformance has a root cause. Understanding it is how you replicate it, not just celebrate it.
START: What should we begin doing that we haven't tried? STOP: What should we stop doing because it's not working or is waste? CONTINUE: What's working that we should do more of?
Start-Stop-Continue is the action layer. Five Whys is the analysis layer. The two work together: Five Whys identifies WHY something happened, Start-Stop-Continue determines WHAT TO DO about it.
Every insight from a retro must be classified:
Only "all future campaigns" insights go into knowledge/learnings.md. Campaign-only insights stay in the retro document.
Load context. Read the relevant output/campaign-brief/<file>.md if a brief exists. Read knowledge/learnings.md so you know what was already learned and don't repeat the same insight.
Gather performance data. Never fill a number the user did not give you.
For every metric record target, actual, delta, and where the number came from. Ask for
any metric you do not have. If a metric is unavailable, write [NEEDS INPUT: <metric>] in
the table and leave the row incomplete.
A retro table is a record, not a draft. Once written it is quoted back for quarters. An agent-supplied "actual" is indistinguishable from a measured one the moment it is on the page.
Flag any metric that missed by more than 10% or outperformed by more than 20%. Those are the Five Whys candidates.
Run Five Whys on every flagged metric. Every "why" carries a source.
The Five Whys is an interview technique, not a reasoning exercise. Taiichi Ohno ran it on a factory floor with the people who were there. Run without evidence it becomes a plausible-story generator, and the story is written in the same words a real finding would use.
Tag every step with one of three tiers:
| Tier | Means | Allowed source |
|---|---|---|
[DATA] | A number or artifact supports it | Analytics, CRM, the brief, a document |
[STATED] | A person who was there said it | Named teammate, call note, Slack thread |
[HYPOTHESIS] | Nobody verified this | Reasoning only. Never promoted without evidence |
Metric: <name>
Target: <X> Actual: <Y> Delta: <Z%> Source: <where the actual came from>
Why 1: <factor> [DATA|STATED|HYPOTHESIS] <- source
Why 2: <cause> [DATA|STATED|HYPOTHESIS] <- source
...
Root cause: <one sentence>
Confidence: <supported | partly supported | unverified>
Reusable: <this campaign only | all future campaigns>
"We do not know yet" is a valid terminal answer. If the chain reaches a point where nobody
has evidence, stop there, mark it [HYPOTHESIS], and name the one thing that would settle it.
A chain that runs to five confident whys on zero evidence is worse than a chain that stops at
two and says so, because it will be believed.
Stop when you reach a process, ownership, or assumption gap, not a tactic.
Run the retro structure:
# Retro: <Initiative> (DD-MM-YYYY)
## Outcome
- **Primary KPI**: target <X>, actual <Y>, delta <%>
- **Verdict**: hit / missed / partial
## Performance breakdown
| Metric | Target | Actual | Source of actual | Delta | Root cause | Confidence |
|---|---|---|---|---|---|---|
| <metric> | <X> | <Y or [NEEDS INPUT]> | <analytics / user / brief> | <Z%> | <root cause> | <supported / partly / unverified> |
## Root cause analysis (Five Whys)
<Full Five Whys drill for each flagged metric. See process step 3 above.>
## What worked
List 3-5 things. Each must be specific and reusable.
- <Specific tactic, channel, or decision> -> <observed outcome> -> <root cause of the win>
- Example: "Founder-voice LinkedIn posts pulled 4x engagement vs company-voice. Root cause:
personal credibility signals outperform brand signals in this ICP."
Avoid vague statements like "the team executed well" or "messaging resonated."
## What didn't work
List 3-5 things. Each must include the root cause from Five Whys:
- <What failed> -> <Five Whys root cause>
- Example: "Webinar attendance was 22% of registrants. Root cause: no ICP match in the
registration list - we optimized for volume, not fit."
"It just didn't perform" is a failure of analysis where evidence exists. Where it does not,
"we do not know why, and here is what would tell us" is the correct answer. Do not manufacture
a cause to avoid an empty cell.
## Start-Stop-Continue
<Actions derived from the root causes above. Every action traces to a Five Whys finding.>
**START:**
- <Action we should begin. What root cause does it address?>
**STOP:**
- <Action we should stop. What root cause revealed this is waste?>
**CONTINUE:**
- <Action we should keep. What root cause confirms it's working?>
## Surprises
Things we didn't predict. These are the most valuable findings because they update our model.
Apply Five Whys to surprises too - understanding WHY something surprised us is the real insight.
## Reusable insights
Classify each insight:
- <Insight> | applies to: <campaign type, channel, audience> | scope: <this campaign only | all future campaigns>
Only "all future campaigns" insights go to knowledge/learnings.md.
## Root cause vs symptom check
For each "what didn't work" item: is this insight about WHAT happened or WHY it happened?
If it's about what happened, run Five Whys again until you reach why.
## Counterfactual check
What would have happened if we had not run this campaign at all?
If the answer is "roughly the same", flag it. Attribution matters.
Persist to knowledge/learnings.md. Confirm with the user first, and never append an unverified claim.
knowledge/learnings.md is read by campaign-brief, social-calendar, content-writer,
email-nurture, ad-campaign-writer and kpi-review. Anything written there becomes a constraint
on future plans, and the provenance is gone by the next quarter. Treat it as institutional
memory, not as notes.
Three gates, all mandatory:
supported or partly supported insights may be appended. An unverified
hypothesis stays in the retro document, where it is visibly a hypothesis.## <Initiative> retro (DD-MM-YYYY)
**Result**: <hit|missed|partial> primary KPI - actual <Y> vs target <X>
**Root causes (Five Whys)**:
- <Metric that missed>: root cause was <finding> [DATA|STATED] (source: <where>)
- <Metric that outperformed>: root cause was <finding> [DATA|STATED] (source: <where>)
**Start-Stop-Continue (reusable actions)**:
- START: <action> (applies to: <scope>)
- STOP: <action> (applies to: <scope>)
- CONTINUE: <action> (applies to: <scope>)
**Reusable insights** (all future campaigns):
- <Insight 1> (applies to: <scope>) [DATA|STATED] confidence: <supported|partly> - DD-MM-YYYY
- <Insight 2> (applies to: <scope>) [DATA|STATED] confidence: <supported|partly> - DD-MM-YYYY
[NEEDS INPUT][DATA], [STATED] or [HYPOTHESIS][HYPOTHESIS] appears in the block being appended to knowledge/learnings.mdClose every retro with this section, filled in:
[HYPOTHESIS] to a learning because it sounds right. Evidence promotes it, or
it stays in the retro doc.knowledge/learnings.md without showing the block and getting a yes.knowledge/learnings.md is contradicted by this campaign, say so and offer
to date-stamp the old entry rather than deleting it. The record of being wrong is useful./kpi-review produces the numbers this retro interprets. Run it first if the metrics are not to hand
/campaign-brief reads knowledge/learnings.md, so anything written here shapes the next plan
/brand-context owns the rest of knowledge/, and creates learnings.md in the first place
/growth-experiment is where an unverified hypothesis from this retro should go to be tested
Order: newest entries at the top. Every skill that reads learnings.md will see this.
Cross-link: if the retro contradicts or confirms an earlier learning, note it: "This contradicts the retro finding that . Updated assumption: ."
Save the full retro to output/retro/<DD-MM-YYYY>-<initiative>.md.
Offer next actions:
/campaign-brief)knowledge/icp/personas.md if persona insights changedknowledge/markets/positioning.md if positioning insights changedknowledge/learnings.md summary is the most-read artifact in this OS. Make it tight, scannable, and actionable.