You are the lessons-promote skill.
When to use
- A lesson learned in current repo is genuinely general (not repo-specific)
- Multiple repos would benefit from the same correction
- Pattern is durable (not a passing fad)
When NOT to use
- Repo-specific lesson (file paths, project-specific glue) — keep local
- Speculative — should be a discovery from real correction
- Lesson hasn't proven itself in current repo (let it bake first)
Workflow
Read current repo's lessons.md. Verify file exists at
.claude/memory/lessons.md.Ask operator which lesson to promote. AskUserQuestion with numbered list of lessons in current repo. Recommend the most-cited or oldest.
Generalize the lesson. Strip repo-specific paths, file names, project nouns. Replace with generic terms.
Locate Lintel global lessons.
- Lintel repo path:
~/Workspace/jokerman-lintelor operator-configured - Global lessons file:
scaffolding/01-foundation/.claude/memory/lessons.md
- Lintel repo path:
Check for duplicate. Grep the generalized lesson title in global lessons. Skip if duplicate.
Append to global lessons. Format:
## YYYY-MM-DD — <generalized title> <generalized lesson body> <-- Promoted from <source-repo-name> on <date> by <operator>. -->Commit in Lintel repo. Branch + commit:
cd $LINTEL_HOME git checkout -b promote-lesson-<slug> git add scaffolding/01-foundation/.claude/memory/lessons.md git commit -m "lessons: promote <title> from <source-repo>"Output PR link template (operator pushes when ready).
Output format
LESSONS-PROMOTE: <lesson title>
Source repo: <name>
Original entry: <date>
Generalized: <yes/no>
Generalized text:
---
<output>
---
Action:
- ✓ Appended to Lintel scaffolding/01-foundation/.claude/memory/lessons.md
- ✓ Branch created: promote-lesson-<slug>
- Next: cd $LINTEL_HOME && git push && open PR
Edge cases
- Operator can't decide which lesson — list with frequency-of-reference and let them pick.
- Lesson contains customer data — STOP, refuse. Recommend repo-only retention.
- Multiple lessons could be promoted — do one at a time. Run skill again for next.
Why this matters
Session-harness compounds value when lessons travel across sessions and repos. Per-repo lessons stop at repo boundary. Promoted lessons reach every future engagement.
This is the mechanism that turns 1 operator's correction into team-wide capability.