用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Treasoni/kaoyan --skill digest命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | digest |
| description | 自我学习阶段。回顾本次学习会话,记录学习心得和错误到 .learnings/,当文件超阈值时自动压缩去重,更新 RULES.md,促进系统持续改进。触发时机:用户审核通过 evaluate 产出并明确要求记录学习后,Phase 6。 |
用户审核通过 evaluate 产出后,且用户明确要求记录会话学习时。
SYSTEM_ROOT: StudySystem 根路径,如 {VAULT_PATH}/StudySystemtopic: 主题名称在记录新条目之前,检查是否需要先做压缩:
wc -l .learnings/LEARNINGS.md .learnings/ERRORS.md 2>/dev/null || echo "0 .learnings/LEARNINGS.md\n0 .learnings/ERRORS.md"
如果任一文件超过 100 行,先执行压缩流程:
.learnings/LEARNINGS.md 和 .learnings/ERRORS.md 中的所有条目.learnings/RULES.md:
## Do — 值得坚持的做法## Don't — 需要避免的错误## Watch For — 需要特别注意的情况(3x) 用 X 而非 Y.learnings/archive/YYYY-MM-DD.md.learnings/LEARNINGS.md 和 .learnings/ERRORS.md 只保留头部mkdir -p .learnings
如果 .learnings/LEARNINGS.md 或 .learnings/ERRORS.md 不存在,创建最小头部。
扫描评估发现和会话过程中遇到的任何问题:
.learnings/LEARNINGS.md,类别 correction.learnings/LEARNINGS.md,类别 knowledge_gap.learnings/ERRORS.md.learnings/LEARNINGS.md,类别 best_practice使用自改进格式记录:
学习条目(追加到 .learnings/LEARNINGS.md):
## [LRN-YYYYMMDD-XXX] category
**Logged**: ISO-8601 timestamp
**Priority**: low | medium | high
**Status**: pending
**Area**: docs
### Summary
One-line description
### Details
What happened, what was learned
### Suggested Action
What to do differently next time
---
错误条目(追加到 .learnings/ERRORS.md):
## [ERR-YYYYMMDD-XXX] phase_name
**Logged**: ISO-8601 timestamp
**Priority**: high
**Status**: pending
**Area**: docs
### Summary
Brief description of what failed
### Error
Actual error message
### Context
What was being attempted
---
每次写入或重写 .learnings/LEARNINGS.md、.learnings/ERRORS.md、.learnings/RULES.md、归档文件时,必须执行以下安全约束:
Path.write_text() 已构造字符串,或 quoted heredoc(如 <<'EOF');不要用普通三引号字符串保存含 \begin、\rvert 等内容。\n、\r、\t:bad = [(i, b) for i, b in enumerate(path.read_bytes()) if b < 32 and b not in (9, 10, 13)]
assert not bad
\begin、\rvert、反引号、表格分隔线没有被转义污染。.learnings/ 文件留给下一轮会话。每次追加新条目到 LEARNINGS.md 后,必须执行本步骤,检查新条目是否与 .learnings/RULES.md 中现有规则存在冲突。
Do: 表格 LaTeX 用 \lvert \rvert,新条目写 用 | 即可Don't: Callout 内不要 $$,新条目写 嵌套 callout 内层允许 $$X 应该 Y,新条目写 用户明确要求时 X 可以不 Yobsidian.proof_* 模式键读取新追加条目的 Summary / Details / Suggested Action
读取 .learnings/RULES.md 全文(Do / Don't / Watch For 三个区块)
逐条比对,识别冲突类型(见上)
输出冲突报告(无冲突时跳过本步骤):
## 🔍 RULES.md 冲突检测报告
**新条目**: [LRN-YYYYMMDD-XXX] category
**冲突项**: N 处
| # | 类型 | 现有规则 | 新条目主张 | 建议处理 |
|---|------|----------|------------|----------|
| 1 | 例外冲突 | Don't: 单层 callout 不要 `$$` | 嵌套 callout 内层允许 `$$` | Don't 改为 "单层 callout 不要 `$$`;嵌套 callout 内层例外" |
| 2 | 模式遗漏 | Watch For 无 `obsidian.proof_*` | 新增嵌套 callout 证明模式 | Watch For 补充 `obsidian.proof_collapsible` |
关键:等待用户确认。使用 AskUserQuestion 询问:
用户确认后:
### Resolution 字段(说明同步动作与日期)Status 从 pending 改为 resolved### Related Rules: Pattern-Key: xxx(Nx) 计数(合并到 RULES.md 时与去重流程一致)pending检测到 N 处冲突,请确认是否同步 RULES.md如果本次会话没有错误且没有值得记录的学习点,跳过记录 —— 不创建空条目。质量比数量重要。
.learnings/LEARNINGS.md:追加新学习条目(如有).learnings/ERRORS.md:追加新错误条目(如有).learnings/RULES.md:
.learnings/archive/YYYY-MM-DD.md:归档文件(如触发压缩).learnings/RULES.md,由 hook 在 agent 启动时注入本阶段任务完成。向用户展示捕获的学习摘要和压缩结果(如有)。
严禁调用其他阶段技能。 询问用户:"学习记录完成。可以结束了吗?"