‹ 首页

compound-learnings

@parcadei · 收录于 1 周前 · 上游提交 5 个月前

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".

适合你,如果希望每次对话的收获都能变成永久能力

/ 下载安装
compound-learnings.skill双击,或拖进 Claude 桌面版 / Cowork,即完成安装↓ .skill↓ .zip
用别的 agent?下载 .zip 解压,把文件夹放进它的技能目录
Claude Code~/.claude/skills/(项目级 .claude/skills/)
Codex CLI~/.codex/skills/
Cursor自动读取上面两处目录
其他工具见其文档的「skills」目录;两个下载是同一份文件,只是名字不同
/ 通过 npx 安装 校验哈希
npx oh-my-skill add parcadei/continuous-claude-v3/compound-learnings
/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- parcadei/continuous-claude-v3/compound-learnings
/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify parcadei/continuous-claude-v3/compound-learnings
安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
3859GitHub stars
~1.4K上下文体积 · 单文件
镜像托管

怎么用

商店整理自技能原文 · 版本 d07ff4b · 表述以原文为准
它做什么

安装后,Claude 会分析你过去对话中的学习记录,找出重复出现的模式,然后自动创建规则、技能或钩子来永久改进你的工作流程。

什么时候触发

当你要求“改进设置”、“从对话中学习”、“复合学习”或“哪些模式应该成为技能”时触发。

装好后可以这样说
Claude 会读取学习记录并分析模式。
Claude 会提出新的规则或技能建议。
技能原文 SKILL.md作者撰写 · MIT · d07ff4b

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:

  1. Is it general enough? Would it apply in other projects?
  2. Is it specific enough? Does it give concrete guidance?
  3. Does it already exist? Check .claude/rules/ and .claude/skills/ first
  4. 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
按 MIT 许可原样转载,未经改动 · 在 GitHub 查看 →

评论

登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。