mcpbeat Sign in

Compound Learnings Skill for Claude

Transform session learnings into permanent capabilities (skills, rules, agents). Use when asked to "improve setup", "learn from sessions", "compound learnings", or "what patterns should become skills".

2k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
521
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/vibeeval/vibecosystem --skill compound-learnings

The instruction itself

18 sections, as written by the author

Compound Learnings

Transform ephemeral session learnings into permanent, compounding capabilities.

When to Use

  • "What should I learn from recent sessions?"
  • "Improve my setup based on recent work"
  • "Turn learnings into skills/rules"
  • "What patterns should become permanent?"
  • "Compound my learnings"

Process

Step 1: Gather Learnings

# List learnings (most recent first)
ls -t $CLAUDE_PROJECT_DIR/.claude/cache/learnings/*.md | head -20

# Count total
ls $CLAUDE_PROJECT_DIR/.claude/cache/learnings/*.md | wc -l

Read the most recent 5-10 files (or specify a date range).

Step 2: Extract Patterns (Structured)

For each learnings file, extract entries from these specific sections:

| Section Header | What to Extract |

|----------------|-----------------|

| ## Patterns or Reusable techniques | Direct candidates for rules |

| Takeaway: or Actionable takeaway: | Decision heuristics |

| ## What Worked | Success patterns |

| ## What Failed | Anti-patterns (invert to rules) |

| ## Key Decisions | Design principles |

Build a frequency table as you go:

| Pattern | Sessions | Category |
|---------|----------|----------|
| "Check artifacts before editing" | abc, def, ghi | debugging |
| "Pass IDs explicitly" | abc, def, ghi, jkl | reliability |

Step 2b: Consolidate Similar Patterns

Before counting, merge patterns that express the same principle:

Example consolidation:

  • "Artifact-first debugging"
  • "Verify hook output by inspecting files"
  • "Filesystem-first debugging"

→ All express: "Observe outputs before editing code"

Use the most general formulation. Update the frequency table.

Step 3: Detect Meta-Patterns

Critical step: Look at what the learnings cluster around.

If >50% of patterns relate to one topic (e.g., "hooks", "tracing", "async"):

→ That topic may need a dedicated skill rather than multiple rules

→ One skill compounds better than five rules

Ask yourself: *"Is there a skill that would make all these rules unnecessary?"*

Step 4: Categorize (Decision Tree)

For each pattern, determine artifact type:

Is it a sequence of commands/steps?
  → YES → SKILL (executable > declarative)
  → NO ↓

Should it run automatically on an event (SessionEnd, PostToolUse, etc.)?
  → YES → HOOK (automatic > manual)
  → NO ↓

Is it "when X, do Y" or "never do X"?
  → YES → RULE
  → NO ↓

Does it enhance an existing agent workflow?
  → YES → AGENT UPDATE
  → NO → Skip (not worth capturing)

Artifact Type Examples:

| Pattern | Type | Why |

|---------|------|-----|

| "Run linting before commit" | Hook (PreToolUse) | Automatic gate |

| "Extract learnings on session end" | Hook (SessionEnd) | Automatic trigger |

| "Debug hooks step by step" | Skill | Manual sequence |

| "Always pass IDs explicitly" | Rule | Heuristic |

Step 5: Apply Signal Thresholds

| Occurrences | Action |

|-------------|--------|

| 1 | Note but skip (unless critical failure) |

| 2 | Consider - present to user |

| 3+ | Strong signal - recommend creation |

| 4+ | Definitely create |

Step 6: Propose Artifacts

Present each proposal in this format:

---

## Pattern: [Generalized Name]

**Signal:** [N] sessions ([list session IDs])

**Category:** [debugging / reliability / workflow / etc.]

**Artifact Type:** Rule / Skill / Agent Update

**Rationale:** [Why this artifact type, why worth creating]

**Draft Content:**
\`\`\`markdown
[Actual content that would be written to file]
\`\`\`

**File:** `.claude/rules/[name].md` or `.claude/skills/[name]/SKILL.md`

---

Use AskUserQuestion to get approval for each artifact (or batch approval).

Step 7: Create Approved Artifacts

For Rules:
# Write to rules directory
cat > $CLAUDE_PROJECT_DIR/.claude/rules/<name>.md << 'EOF'
# Rule Name

[Context: why this rule exists, based on N sessions]

## Pattern
[The reusable principle]

## DO
- [Concrete action]

## DON'T
- [Anti-pattern]

## Source Sessions
- [session-id-1]: [what happened]
- [session-id-2]: [what happened]
EOF
For Skills:

Create .claude/skills/<name>/SKILL.md with:

  • Frontmatter (name, description, allowed-tools)
  • When to Use
  • Step-by-step instructions (executable)
  • Examples from the learnings

Add triggers to skill-rules.json if appropriate.

For Hooks:

Create shell wrapper + TypeScript handler:

# Shell wrapper
cat > $CLAUDE_PROJECT_DIR/.claude/hooks/<name>.sh << 'EOF'
#!/bin/bash
set -e
cd "$CLAUDE_PROJECT_DIR/.claude/hooks"
cat | node dist/<name>.mjs
EOF
chmod +x $CLAUDE_PROJECT_DIR/.claude/hooks/<name>.sh

Then create src/<name>.ts, build with esbuild, and register in settings.json:

{
  "hooks": {
    "EventName": [{
      "hooks": [{
        "type": "command",
        "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/<name>.sh"
      }]
    }]
  }
}
For Agent Updates:

Edit existing agent in .claude/agents/<name>.md to add the learned capability.

Step 8: Summary Report

## Compounding Complete

**Learnings Analyzed:** [N] sessions
**Patterns Found:** [M]
**Artifacts Created:** [K]

### Created:
- Rule: `explicit-identity.md` - Pass IDs explicitly across boundaries
- Skill: `debug-hooks` - Hook debugging workflow

### Skipped (insufficient signal):
- "Pattern X" (1 occurrence)

**Your setup is now permanently improved.**

Quality Checks

Before creating any artifact:

  • Is it general enough? Would it apply in other projects?
  • Is it specific enough? Does it give concrete guidance?
  • Does it already exist? Check .claude/rules/ and .claude/skills/ first
  • Is it the right type? Sequences → skills, heuristics → rules

Files Reference

  • Learnings: .claude/cache/learnings/*.md
  • Skills: .claude/skills/<name>/SKILL.md
  • Rules: .claude/rules/<name>.md
  • Hooks: .claude/hooks/<name>.sh + src/<name>.ts + dist/<name>.mjs
  • Agents: .claude/agents/<name>.md
  • Skill triggers: .claude/skills/skill-rules.json
  • Hook registration: .claude/settings.jsonhooks section

Other skills for the same job

different authors, same section of the catalogue
Skill Creator
by anthropics
vendor ×10

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

56k tokens scripts
Skill Creator
by vercel-labs
vendor ×10

Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.

12k tokens scripts
Skill Creator
by JayZeeDesign
×9

Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.

10k tokens scripts
Template Skill
by JayZeeDesign
×7

Replace with description of the skill and when Claude should use it.

35 tokens
Dispatching Parallel Agents
by ZhanlinCui
×5

Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies

2k tokens
Skill Development
by anthropics
vendor ×4

This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.

9k tokens
Find Skills
by sanity-io
vendor ×4

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

1k tokens
Writing Skills
by ZhanlinCui
×4

Use when creating new skills, editing existing skills, or verifying skills work before deployment

26k tokens scripts

How to use it

Copy the folder

Take vibeeval/compound-learnings from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.