compound
Skill6 starsChanged 8 months agoMITView on GitHub
Capture and apply knowledge from course development to improve future runs.
17 other projects use a version of this.
Adopted by
Most recently taken up by
- chrislacey89/skillstheir own version, first seen Nov 4, 2026
- pfeff/claude-skillstheir own version, first seen Nov 1, 2026
- dsonders/claude-skillstheir own version, first seen Oct 20, 2026
- rcelebrone/DotAgentstheir own version, first seen Oct 14, 2026
- OHOKAYYEAH/claude-skillstheir own version, first seen Oct 13, 2026
- Artifacts7/newsletter-context-kittheir own version, first seen Oct 13, 2026
Used with
Projects with it also use brainstorm, ship and 4 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
nicolasestremSkillbrainstorm
Structured idea generation and solution exploration with systematic analysis.
Also in 3 projects that use this
AWSSkillship
Finalize dev work on an issue branch — update docs, push, and open a PR.
Also in 3 projects that use this
NVIDIASkillresearch
Before designing a feature, research how comparable libraries solve the problem, check best practices, known pitfalls, and upstream changes. Use when starting a new feature, investigating an unfamiliar area, or the user asks to research something.
Also in 3 projects that use this
MicrosoftSkillhandoff
Compact the current conversation into a handoff document for another agent to pick up.
Also in 4 projects that use this
SentrySkillreview
Fixture review skill.
Also in 3 projects that use this
GoogleSkilltdd
Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
Also in 3 projects that use this
Other versions17 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 17
- m-xlsea/ruoyi-plus-soybean★ 328same name
- garagon/nanostack★ 206same name
- team-attention/hoyeon★ 173same name
- ai-native-camp/camp-2★ 19same name
- rcelebrone/DotAgents★ 15same name
- chrislacey89/skills★ 4same name
- pfeff/claude-skills★ 3same name
- toverux/cantrips★ 3same name
- Artifacts7/newsletter-context-kit★ 2same name
- dirkkok101/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.
In this repository16 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- andamio-cliSkill
- apprenticeSkill
- assess-sltsSkill
- beginnerSkill
- classify-lesson-typesSkill
- compileSkill
- course-workflowSkill
- draft-sltsSkill
- gather-code-examplesSkill
- gather-screenshotsSkill
- releaseSkill
- self-assess-readinessSkill
- startSkill
- teacherSkill
The file
We split this skill into the rules it gives an agent
10 rules. 0 are common, 6 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 12 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 38
If invoked without arguments, present phase options:
- Very specific: line 57
If no course specified, scan courses-in-progress/ and ask which course to compound from:
- Very specific: line 200
Update existing entries in knowledge/readiness/calibration.yaml
- Distinctive: line 202
Compute calibration stats: After updating entries:
- Distinctive: line 227
Run all extraction phases for a single course.
- Distinctive: line 260
After extraction, always report:
- Distinctive: line 287
Before modifying knowledge files, read the current state.
- Distinctive: line 307
Preserve existing data: Never overwrite — merge and increment.
- Very specific: line 309
Update the index: Always update knowledge/index.yaml stats after any extraction.
- Very specific: line 311
Seed from examples: Use examples/go-slts-readiness-assessment.md to prime the knowledge base.
“Common” is measured: kept by at least 6 in 10 of the 12 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
Skill: Compound Knowledge
Description
Extracts patterns, heuristics, and calibration data from course development artifacts. Feeds knowledge back into /draft-slts, /assess-slts, /self-assess-readiness, and /classify-lesson-types to make each run smarter than the last.
Invocation Modes
/compound # Interactive: asks what to compound
/compound quality-review # Compound from specific phase
/compound readiness # Compound from readiness assessment
/compound classification # Compound from lesson type classification
/compound --course=go-pbl --rollup # Full course retrospectiveInstructions
Path Resolution
Resolve file paths based on your execution context:
- Plugin context (
${CLAUDE_PLUGIN_ROOT}is set): Read knowledge from${CLAUDE_PLUGIN_DATA}/knowledge/(user data), falling back to${CLAUDE_PLUGIN_ROOT}/knowledge/(seed data). Write all knowledge updates to${CLAUDE_PLUGIN_DATA}/knowledge/— never modify the plugin's bundled seed data. - Clone/symlink context (default): Read and write knowledge at
knowledge/relative to the project root.
All knowledge/ paths referenced below follow this resolution. In plugin context, substitute the appropriate prefix.
Phase Selection
If invoked without arguments, present phase options:
## What would you like to compound?
| # | Phase | Source Artifact | Extracts |
|---|-------|-----------------|----------|
| 1 | quality-review | 02-slts-quality-review.md, 01-slts.md | Successful rewrites, quality issues |
| 2 | readiness | 05-readiness-assessment.md | Tier distribution, context shopping list |
| 3 | classification | 04-lesson-type-classification.md | Verb patterns, edge cases, heuristics |
| 4 | lesson-build | lessons/*.md | Actual vs self-assessed confidence |
| 5 | context-add | assets/ + re-run readiness | Which resources unlocked which SLTs |
| 6 | rollup | All artifacts | Full course retrospective |
Which phase? (Or specify course: --course=slug)Course Selection
If no course specified, scan courses-in-progress/ and ask which course to compound from:
## Select Course
| # | Course | Status | Artifacts Available |
|---|--------|--------|---------------------|
| 1 | andamio-for-contributors | building | 01, 02, 03, 04, 05 |
| 2 | andamio-for-api-developers | building | 01, 02, 03, 04, 05 |
Which course?Also check examples/ for seeding data (like go-slts-readiness-assessment.md).
Extraction Logic by Phase
Phase: quality-review
Source files:
02-slts-quality-review.md(assessment output)01-slts.md(revised SLTs, if exists)
Extract:
- Successful rewrites: Compare SLTs between quality review suggestions and revised SLTs. For each rewrite:
Append to- before: "original SLT text" after: "improved SLT text" issue_type: unmeasurable_verb | task_focused | too_broad | etc. key_change: "what made the difference" course: "course-slug" date: "YYYY-MM-DD"knowledge/slt-patterns/successful-rewrites.yaml - Quality issues: Extract patterns from "Needs Work" SLTs:
Append to- pattern: "how to detect" description: "what the problem is" impact: ["Student-Facing Language", "Specificity"] frequency: 1 example_bad: "I can understand blockchain" example_fix: "I can explain how a blockchain maintains data integrity by identifying three mechanisms" courses_seen_in: ["course-slug"]knowledge/slt-patterns/quality-issues.yaml - Verb effectiveness: Extract verbs from "Strong" SLTs and add to verb bank:
Update- verb: "compare" bloom_level: analyze success_count: 1 example_slts: ["I can compare X to Y by identifying..."]knowledge/slt-patterns/verb-bank.yaml
Phase: readiness
Source files:
05-readiness-assessment.mdexamples/go-slts-readiness-assessment.md(for seeding)
Extract:
- Context leverage: Parse the Context Shopping List and update rankings:
Update- resource: "Apollo API reference + transaction building examples" type: "Docs + Example Code" slts_unlocked: ["102.2", "102.3", "102.5", "102.6", ...] priority: High obtained: false effectiveness: nullknowledge/readiness/context-leverage.yaml - Calibration baseline: Record self-assessed tiers for later comparison:
Append to- slt_id: "go-pbl:099.1" self_assessed: Ready actual_outcome: null # filled in after lesson-build dimensions_off: null notes: null date: "YYYY-MM-DD"knowledge/readiness/calibration.yaml
Phase: classification
Source files:
04-lesson-type-classification.md
Extract:
- Verb patterns: From the Heuristics Developed section:
Update- verb: "explain" suggests: exploration confidence: high count: 1 examples: ["I can explain why Bursa was built..."]knowledge/lesson-types/heuristics.yaml - Subject patterns: From topic clusters:
Update- keywords: ["API", "endpoint", "library"] suggests: developer_documentation confidence: high count: 1 examples: ["I can build a web API using Fiber..."]knowledge/lesson-types/heuristics.yaml - Edge cases: From ambiguous classifications:
Append to- slt: "I can set up my development environment..." candidates: ["how_to_guide", "organization_onboarding"] chosen: how_to_guide deciding_factor: "Generic procedure, not org-specific" question_that_helped: "Would this SLT exist in a generic course?" course: "course-slug" date: "YYYY-MM-DD"knowledge/lesson-types/edge-cases.yaml
Phase: lesson-build
Source files:
lessons/*.md05-readiness-assessment.md(for comparison)
Extract:
- Calibration updates: Compare actual lesson-building experience to self-assessed readiness:
Update existing entries in- slt_id: "course:module.slt" self_assessed: Ready actual_outcome: success | partial | failure dimensions_off: ["Code Demo was actually Weak"] notes: "Apollo API changed since training" date: "YYYY-MM-DD"knowledge/readiness/calibration.yaml - Compute calibration stats: After updating entries:
- Calculate accuracy_rate
- Identify common_overconfidence patterns
- Identify common_underconfidence patterns
- Generate adjustment rules
Phase: context-add
Source files:
assets/(newly added context)- Re-run
/self-assess-readiness(or compare to previous)
Extract:
- Context effectiveness: For resources that were obtained:
Update- resource: "gOuroboros README" obtained: true effectiveness: confirmed | partial | unhelpful notes: "Unlocked 4/5 expected SLTs, one still needs examples"knowledge/readiness/context-leverage.yaml
Phase: rollup
Run all extraction phases for a single course. Produce a summary report:
## Compound Report: [Course Name]
### Knowledge Captured
| Category | Count | Files Updated |
|----------|-------|---------------|
| Successful Rewrites | 3 | successful-rewrites.yaml |
| Quality Issues | 2 | quality-issues.yaml |
| Verb Bank Entries | 5 | verb-bank.yaml |
| Context Resources | 8 | context-leverage.yaml |
| Calibration Entries | 12 | calibration.yaml |
| Lesson Type Heuristics | 4 | heuristics.yaml |
| Edge Cases | 2 | edge-cases.yaml |
### Aggregate Stats Update
- Courses processed: [n]
- Total SLTs analyzed: [n]
- Successful rewrites captured: [n]
- Calibration accuracy: [%]
### Top Insights
1. [Most impactful pattern discovered]
2. [Second most impactful]
3. [Third most impactful]Output Format
After extraction, always report:
## Compound Complete
**Phase:** [phase name]
**Course:** [course name]
### Extracted
| Knowledge Type | Count | Status |
|----------------|-------|--------|
| [type] | [n] | Added / Updated / Unchanged |
### Files Modified
- `knowledge/slt-patterns/successful-rewrites.yaml` - Added 2 entries
- `knowledge/readiness/context-leverage.yaml` - Updated 3 entries
### Index Updated
- `last_updated`: [timestamp]
- `slts_analyzed`: [new total]Knowledge Consumption Check
Before modifying knowledge files, read the current state. When updating:
- Increment counts (don't reset)
- Append to lists (don't overwrite)
- Merge patterns (combine evidence from multiple courses)
- Deduplicate (same pattern from different courses = one entry with multiple course references)
Integration Points
This skill produces knowledge that other skills consume:
| Skill | Reads From | Uses For |
/draft-slts | verb-bank.yaml, quality-issues.yaml | Prefer effective verbs, avoid problematic patterns |
/assess-slts | quality-issues.yaml, successful-rewrites.yaml | Flag known issues, suggest proven fixes |
/self-assess-readiness | calibration.yaml, context-leverage.yaml | Adjust confidence, prioritize shopping list |
/classify-lesson-types | heuristics.yaml, edge-cases.yaml | Improve initial guesses, handle known ambiguities |
Guidelines
- Always read before writing. Load current YAML state before appending.
- Preserve existing data. Never overwrite — merge and increment.
- Be specific in patterns. Vague patterns don't compound.
- Update the index. Always update
knowledge/index.yamlstats after any extraction. - Report what changed. The user should see exactly what knowledge was captured.
- Seed from examples. Use
examples/go-slts-readiness-assessment.mdto prime the knowledge base.
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.

