promote
Skill0 starsChanged 2 months agoMITView on GitHub
Promote implementation learnings into durable project context. Use when the user explicitly asks to reconcile completed work with the plan, glossary, ADRs, and research notes; propose every change and write only what the user confirms.
17 other projects use a version of this.
Adopted by
Most recently taken up by
- anotherben/claude-harnesstheir own version, first seen Nov 8, 2026
- ArcticFox2029/chamnantheir own version, first seen Nov 5, 2026
- jbaruch/nanoclaw-hosttheir own version, first seen Oct 31, 2026
- anis-dr/skillstheir own version, first seen Oct 15, 2026
- wrg32786/aigent-ostheir own version, first seen Oct 13, 2026
- dedalus-labs/wingmantheir own version, first seen Oct 8, 2026
Other versions17 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 17
- oliver-kriska/claude-elixir-phoenix★ 573same name
- dedalus-labs/wingman★ 181same name
- wrg32786/aigent-os★ 25same name
- Hassaan146/claude-skills★ 18same name
- shahshrey/unclaw★ 17same name
- ArcticFox2029/chamnan★ 10same name
- nmhjklnm/yaohe★ 9same name
- anotherben/claude-harness★ 7same name
- anis-dr/skills★ 3same name
- Hussain-Elfalah/Agentic-Skills★ 2same name
7 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. 0 are common, 9 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 15 edited versions we read keep these.
9
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Read everything that exists:
- Distinctive: line 25
Read the plan file (if multiple, pick the active one — the one matching your current branch or task).
- Very specific: line 29
Read Research/Research.md and any topic files.
- Very specific: line 30
Read the most recent handoff (if context_depth: deep, also read the one before it).
- Very specific: line 76
If all three hold, propose a new ADR at Context/ADR/<next-number>-<Slug>.md.
- Distinctive: line 84
If fewer than three, skip.
- Distinctive: line 117
Only create a topic file if it captures something you'd genuinely want a future agent to know before touching that subsystem.
- Distinctive: line 139
Do not propose cosmetic changes (formatting, wording polish).
- Distinctive: line 143
If nothing meaningfully changed — the plan was followed exactly, no new terms emerged, no decisions crossed the ADR bar, no research gaps …
- Very specific: line 156
If research topic files were created, cross-link them from Research/Research.md in the relevant section (e.g., under "Architecture": "See …
- Distinctive: line 162
Do not fabricate: If the implementation didn't yield a new term, don't invent one.
- Distinctive: line 163
ADR bar is high: Default to "no ADR needed." Only propose one when the decision is genuinely hard to reverse, surprising, and the result of …
- Distinctive: line 166
Do not overwrite user-authored content: If the plan or glossary has sections the user wrote personally, propose changes but flag them as …
- Very specific: line 175
All durable context is current → /handoff to checkpoint, or /commit / /pr to ship.
- Very specific: line 176
If more implementation remains → continue working, then /promote again at the next checkpoint.
“Common” is measured: kept by at least 6 in 10 of the 15 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
You have just completed a chunk of work. The plan said what you would build; the handoffs captured what happened along the way. Now promote the learnings from ephemeral (handoffs) to durable (Context/) so future sessions don't pay the same discovery cost twice.
This is not another grilling session. You are not interviewing the user. You are proposing deltas based on what actually happened, and the user confirms or rejects. Fast, light, one pass.
Step 1 — Gather current state
Read everything that exists:
ls <project-root>/Context/Plans/*.md 2>/dev/null
ls <project-root>/Context/Glossary.md 2>/dev/null
ls <project-root>/Context/ADR/*.md 2>/dev/null
ls <project-root>/Context/Research/*.md 2>/dev/null
ls <project-root>/Memories/handoff-*.md 2>/dev/null | sort | tail -2- Read the plan file (if multiple, pick the active one — the one matching your current branch or task).
- No plan file exists: "No plan found in
Context/Plans/. I can still promote glossary terms, ADRs, and research notes from the handoff — but I can't audit plan progress. Continue with the other categories?" If the user says no, stop. If yes, skip §2A (plan progress) and proceed. - Read
Glossary.md. - Read every ADR.
- Read
Research/Research.mdand any topic files. - Read the most recent handoff (if
context_depth: deep, also read the one before it). - No handoffs found: "No handoffs in
Memories/. I can still audit the plan, glossary, and ADRs against the current git diff, but I can't reference prior-session decisions or dead ends. Proceed with what's available?" If the user says no, stop. If yes, skip handoff-dependent deltas (dead ends, open questions).
Also run:
git status --short
git diff --stat HEADto understand the working state — especially if some changes aren't yet committed or handoff'd.
Step 2 — Identify deltas
Audit what changed since the plan was last updated. The handoff tells you what the prior session did; your own observations this session fill in what the handoff couldn't capture.
2A — Plan progress
For each work item in the plan:
- Done this session → propose marking it complete. If the implementation deviated from the plan's "What" field, note the deviation under the work item.
- Was already done (handoff says so, plan doesn't) → propose marking it complete retroactively.
- In progress → leave as-is. Note current status if useful.
- Not started → leave as-is unless it was intentionally dropped. If dropped, propose removing it with a one-line reason.
- New item emerged (something you built that wasn't in the plan but was necessary) → propose adding it with What/Why/Risk, marked complete.
2B — Domain terms
Scan the implementation (diffs, handoffs, your own observations) for:
- Terms the code uses that aren't in
Glossary.md - Terms in
Glossary.mdthat were used imprecisely or evolved in meaning - Synonyms or overloaded terms that should be retired via the
_Avoid_:line
Propose additions or corrections only when the term is project-specific and meaningfully distinct from general programming vocabulary. "Connection pool" is not a glossary term. "Session Vault" might be.
2C — Architectural decisions
For any decision made during implementation. Apply the ADR bar — all three must be true:
- Hard to reverse — the cost of changing your mind later is meaningful
- Surprising without context — a future reader will wonder "why did they do it this way?"
- Result of a real trade-off — there were genuine alternatives and you picked one for specific reasons
If all three hold, propose a new ADR at Context/ADR/<next-number>-<Slug>.md. Use PascalCase for the slug. One paragraph is sufficient:
# {Short title of the decision}
{1-3 sentences: context, what was decided, and why.}If fewer than three, skip. Most implementation decisions are not ADRs.
2D — Research notes
For discoveries about the codebase that don't fit in Glossary or ADRs:
- A module boundary or subsystem interaction you didn't trace in the original research
- A pattern that emerged during implementation that future work should follow
- An edge case or constraint that future work must respect
- A subsystem whose behavior is non-obvious from reading its code
Refinement of the comprehensive overview → propose updating the relevant section(s) of Context/Research/Research.md. Keep it tight — add only what the original research missed.
Focused deep-dive on a subsystem → propose creating Context/Research/<Topic>.md. Use PascalCase for the filename. Structure it the same way as Research.md but scoped to that subsystem:
# Research: {Subsystem}
> Last updated: YYYY-MM-DD — implementation deep-dive
## What is this?
{One sentence — what this subsystem does}
## Architecture
{How it's organized internally, key boundaries}
## Patterns
{Conventions specific to this subsystem}
## Edge cases & constraints
{Things that will bite a future developer}Only create a topic file if it captures something you'd genuinely want a future agent to know before touching that subsystem. If it's obvious from reading the code, skip it.
Step 3 — Propose deltas to the user
Present proposed changes one category at a time, in this order:
- Plan updates (most actionable for the next session)
- Glossary additions
- ADRs
- Research notes
For each proposal, show:
- Which file changes
- The exact content being added or modified
- A one-sentence rationale
Then ask: "Apply? (y/n/edit)"
Batch within a category when multiple changes are uncontroversial: "Three plan updates: mark items 1-2 done, drop item 4. Apply?"
Do not propose cosmetic changes (formatting, wording polish). Only substance.
Nothing to promote
If nothing meaningfully changed — the plan was followed exactly, no new terms emerged, no decisions crossed the ADR bar, no research gaps were filled — say so explicitly:
Nothing to promote. The plan was executed as designed.
This is a valid and good outcome. It means your planning was accurate.
Step 4 — Write confirmed changes
Apply only the deltas the user confirmed. After writing:
- Report what was updated and where: "Updated
Plans/Auth-Migration.md(marked items 1-3 done), addedGlossary.mdentry for Session Vault, no ADRs or research notes needed." - If research topic files were created, cross-link them from
Research/Research.mdin the relevant section (e.g., under "Architecture": "See Auth Middleware Chain for a detailed trace.").
Rules
- Do not fabricate. If the implementation didn't yield a new term, don't invent one. An empty glossary round is a good round — it means the plan's language was precise.
- ADR bar is high. Default to "no ADR needed." Only propose one when the decision is genuinely hard to reverse, surprising, and the result of a real trade-off.
- Research notes are earned. A topic file must capture something non-obvious. "Module X uses pattern Y" is not a research note if you can see it from the file tree.
- Plan updates are the priority. Everything else is nice-to-have. A stale plan is actively harmful — it misdirects the next
/recallagent. - Do not overwrite user-authored content. If the plan or glossary has sections the user wrote personally, propose changes but flag them as user-authored for extra caution.
Workflow
Before this command: implementation work is done or at a natural checkpoint. /grill may have already updated the plan and glossary — if so, there will be less to promote. The most recent handoff captures the prior session's events.
After this command:
- All durable context is current →
/handoffto checkpoint, or/commit//prto ship. - If more implementation remains → continue working, then
/promoteagain at the next checkpoint.
/promote is the close of the implementation loop. Without it, your Context/ folder is a pre-implementation snapshot that slowly rots. With it, Context/ is a living reflection of the project.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

