关于 compound-learnings
用于从 Git 历史、PR、交接记录和既有经验中识别重复模式的技能。它按出现频率筛选信号,并依据分类规则提出可执行的经验沉淀建议。
主要功能
- 01扫描 Git、PR 和交接记录
- 02合并语义相近的模式
- 03按出现次数设定阈值
- 04推荐沉淀产物类型
- 05检查建议的质量
适用场景
- 01从项目历史中查找重复修复
- 02判断某种模式是否适合沉淀为产物
- 03整理跨会话学习建议
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ majesticlabs-dev/ majestic-marketplace --skill compound-learnings安装后在 Claude Code 中输入/compound-learnings确认已加载。
详细介绍
复合学习
将反复出现的模式转化为持久的成果。使用基于频率的阈值来区分噪声与信号。
数据来源
扫描以下位置以查找模式:
| 来源 | 命令/路径 | 提取内容 |
|---|---|---|
| Git 提交 | git log --oneline -100 | 重复出现的修复类型、重构模式 |
| Git 提交说明 | git log -50 --format="%B---" | 提交说明中的经验教训 |
| PR 描述 | gh pr list --state merged -L 20 | 决策、经验教训 |
| 交接记录 | $MAIN_WORKTREE/.agents/handoffs/*.md | 模式、有效/无效做法 |
| 关键经验 | CLAUDE.md(Key Learnings 部分) | 已编码的现有模式 |
**注意:**会话记录(.agents/session_ledger.md)仅供 Skill("reflect") 使用,用于记录每个会话的临时状态。
模式提取
步骤 1:收集原始模式
# Git patterns (look for repeated prefixes/types)
git log --oneline -100 | cut -d' ' -f2- | sort | uniq -c | sort -rn
# Handoff patterns
grep -h "^- " .agents/handoffs/*.md 2>/dev/null | sort | uniq -c | sort -rn
步骤 2:合并相似模式
计数前,先规范化模式:
- “始终验证 X” + “在 Y 之前验证 X” → “验证 X”
- “不要使用 Z” + “避免使用 Z” + “Z 会导致问题” → “避免使用 Z”
按语义分组,而非按确切措辞分组。
步骤 3:应用频率阈值
| 出现次数 | 操作 | 理由 |
|---|---|---|
| 1 | 跳过 | 可能是噪声或一次性事件 |
| 2 | 记录 | 正在显现的模式,留意是否再次出现 |
| 3+ | 建议 | 模式明确,建议创建成果 |
| 4+ | 强烈建议 | 立即编码 |
成果分类
使用此决策树确定成果类型:
Is it a sequential workflow with distinct phases?
YES → Consider COMMAND (user-invoked) or AGENT (autonomous)
Does it need user interaction during execution?
YES → COMMAND
NO → AGENT
NO ↓
Should it trigger automatically on file/context patterns?
YES → SKILL (probabilistic, Claude MAY follow)
Is enforcement critical (must happen every time)?
YES → Consider HOOK instead (deterministic)
NO ↓
Is it a simple rule or convention?
YES → RULE (add to CLAUDE.md or .agents/lessons/)
Project-specific? → .agents/lessons/ (with workflow_phase: review)
Universal? → CLAUDE.md
NO ↓
Does it enhance an existing agent's behavior?
YES → AGENT UPDATE (modify existing agent)
NO → Likely doesn't need encoding
快速参考
| 成果 | 使用时机 | 示例 |
|---|---|---|
| Rule(规则) | 简单约定,始终适用 | “文件名使用 kebab-case” |
| Skill(技能) | 特定工作的知识/上下文 | “Stimulus 控制器模式” |
| Hook(钩子) | 必须以确定性方式强制执行的行为 | “提交前运行代码检查工具” |
| Command(命令) | 用户调用且带参数的工作流 | “/deploy --env staging” |
| Agent | 自主执行任务并返回报告 | “security-review agent” |
输出格式
按以下格式呈现发现:
## Compound Learnings Analysis
### Strong Signal (4+ occurrences)
| Pattern | Count | Recommended Artifact | Rationale |
|---------|-------|---------------------|-----------|
| ... | ... | ... | ... |
### Emerging Patterns (2-3 occurrences)
| Pattern | Count | Potential Artifact | Notes |
|---------|-------|-------------------|-------|
| ... | ... | ... | ... |
### Recommended Actions
1. **[Artifact Type]**: `name` - description
- Draft: [brief template or content]
质量检查
建议创建成果前,请确认:
- 通用性:适用于观察到该模式的特定事件之外的情况
- 明确性:足够具体,可据此采取行动(而非含糊的建议)
- 唯一性:不会与现有的 CLAUDE.md 规则或技能重复
- 类型正确:符合分类决策树
与 learn 集成
从 Skill("learn") 调用时:
- 定位主工作树,以集中管理交接记录
- 从 git、PR 和交接记录中收集模式
- 合并模式并统计频次
- 应用阈值
- 对建议的成果进行分类
- 呈现发现及内容草稿
- 获得批准后,使用适当的工具创建成果
注意:Skill("reflect") 用于分析单个会话。Skill("learn") 用于跨会话复合学习。
评论
支持 Markdown