compound — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited compound (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
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.
/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 retrospectiveResolve file paths based on your execution 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.knowledge/ relative to the project root.All knowledge/ paths referenced below follow this resolution. In plugin context, substitute the appropriate prefix.
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)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).
#### Phase: quality-review
Source files:
02-slts-quality-review.md (assessment output)01-slts.md (revised SLTs, if exists)Extract:
- 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"Append to knowledge/slt-patterns/successful-rewrites.yaml
- 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"]Append to knowledge/slt-patterns/quality-issues.yaml
- verb: "compare"
bloom_level: analyze
success_count: 1
example_slts: ["I can compare X to Y by identifying..."]Update knowledge/slt-patterns/verb-bank.yaml
#### Phase: readiness
Source files:
05-readiness-assessment.mdexamples/go-slts-readiness-assessment.md (for seeding)Extract:
- 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: nullUpdate knowledge/readiness/context-leverage.yaml
- 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"Append to knowledge/readiness/calibration.yaml
#### Phase: classification
Source files:
04-lesson-type-classification.mdExtract:
- verb: "explain"
suggests: exploration
confidence: high
count: 1
examples: ["I can explain why Bursa was built..."]Update knowledge/lesson-types/heuristics.yaml
- keywords: ["API", "endpoint", "library"]
suggests: developer_documentation
confidence: high
count: 1
examples: ["I can build a web API using Fiber..."]Update knowledge/lesson-types/heuristics.yaml
- 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"Append to knowledge/lesson-types/edge-cases.yaml
#### Phase: lesson-build
Source files:
lessons/*.md05-readiness-assessment.md (for comparison)Extract:
- 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"Update existing entries in knowledge/readiness/calibration.yaml
#### Phase: context-add
Source files:
assets/ (newly added context)/self-assess-readiness (or compare to previous)Extract:
- resource: "gOuroboros README"
obtained: true
effectiveness: confirmed | partial | unhelpful
notes: "Unlocked 4/5 expected SLTs, one still needs examples"Update 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]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]Before modifying knowledge files, read the current state. When updating:
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 |
knowledge/index.yaml stats after any extraction.examples/go-slts-readiness-assessment.md to prime the knowledge base.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.