$npx -y skills add owenliang60-ship-it/knowledge-mgmt --skill note将对话中的研究内容整理为研究摘要 + 原子化笔记卡片,存入Obsidian。摘要是地图,卡片是石头。对专有名词和关键概念用加粗和【】标记,便于双链。同时提议 wikilink(链接已有 Card)和 atomic card(创建新复习卡片),更新 MOC 索引,流转 Clipping 状态。当用户说"note"、"做笔记"、"存笔记"、"拆卡片"、"原子笔记"、"存到ob"、"记到obsidian"时触发。
| 1 | # /note Command |
| 2 | |
| 3 | 将对话中的研究内容整理为 **研究摘要 + 原子化笔记卡片**,存入 Obsidian。 |
| 4 | |
| 5 | ## 核心理念:地图 + 石头 |
| 6 | |
| 7 | 每次 `/note` 产出两层内容: |
| 8 | |
| 9 | 1. **研究摘要(地图)** — 一张完整的、叙事性的卡片,保留讨论的脉络、推理链条和结论。读这张卡片就能还原整个研究过程。 |
| 10 | 2. **原子卡片(石头)** — 从摘要中提炼的独立知识点,每张可脱离上下文复用。摘要中会引用这些卡片的关键词。 |
| 11 | |
| 12 | **地图让石头有意义,石头让地图可链接。** |
| 13 | |
| 14 | ## 定位 |
| 15 | |
| 16 | `/note` 是 vault 的**唯一写入通道**(SCHEMA.md §2)。上游的 ingest 对话由 `/read` / `/insights` 完成,下游的 capture 与本地记忆由 `/log` / `/journal` 承接。本表横向对比这五个角色,方便理解"哪类事情该走哪个 skill": |
| 17 | |
| 18 | | Skill | 职责 | 输出 | |
| 19 | |-------|------|------| |
| 20 | | `/read` | 深度阅读 — 学术论文结构化分析 | 对话中的分析报告 → 喂给 `/note` | |
| 21 | | `/insights` | 商业洞察 — 文章模式提取 | 对话中的洞察报告 → 喂给 `/note` | |
| 22 | | **`/note`** | **知识沉淀 — 研究摘要 + 原子卡片(dual-proposal)** | **Obsidian 卡片组(唯一写入通道)** | |
| 23 | | `/log` | 记忆捕获 — 决策、偏好、洞察 | L2 long-term-memory.md | |
| 24 | | `/journal` | 进度记录 — 做了什么 | 本地 journal + Obsidian journal | |
| 25 | |
| 26 | ## 双链标记规范 |
| 27 | |
| 28 | - **【专有名词】**:学术概念、理论名称、人名、模型名、基因/分子/药物 |
| 29 | - 例:【奖励预测误差】、【Kent Berridge】、【COMT Val158Met】、【SSRI】 |
| 30 | - **加粗**:核心结论或关键洞察 |
| 31 | - 例:**多巴胺编码的是"值不值得出力",而非快乐本身** |
| 32 | - 两者可叠加:**【消退学习】是记忆改写的神经科学基础** |
| 33 | |
| 34 | ### 标记选择速查 |
| 35 | |
| 36 | | 内容类型 | 标记 | 示例 | |
| 37 | |---------|------|------| |
| 38 | | 学术概念/理论 | 【】 | 【奖励预测误差】、【心理对比】 | |
| 39 | | 人名 | 【】 | 【Wolfram Schultz】、【Berridge】 | |
| 40 | | 基因/分子/药物 | 【】 | 【DRD4】、【COMT】、【SSRI】 | |
| 41 | | 核心结论 | **加粗** | **受体密度67%由遗传决定** | |
| 42 | | 关键区分 | **加粗** | **wanting ≠ liking** | |
| 43 | | 重要概念+结论 | 叠加 | **【快感缺失】是抑郁症的核心特征** | |
| 44 | |
| 45 | ## Behavior |
| 46 | |
| 47 | ### Step 1: 扫描对话,理解研究脉络 |
| 48 | |
| 49 | 回溯对话(或指定范围),梳理: |
| 50 | - 研究的起因和主题是什么 |
| 51 | - 讨论经历了哪些阶段/转折 |
| 52 | - 得出了哪些关键结论 |
| 53 | - 哪些知识点值得独立成卡 |
| 54 | |
| 55 | ### Step 2: 撰写研究摘要(地图卡片)并展示给用户 |
| 56 | |
| 57 | 研究摘要是一张 **完整的、翔实的** 卡片。**此阶段只写摘要,不创建原子卡片。** 所有专有名词用【】标记作为候选概念。 |
| 58 | |
| 59 | 摘要结构: |
| 60 | |
| 61 | ```markdown |
| 62 | # [研究主题] — 研究摘要 |
| 63 | |
| 64 | > 日期:YYYY-MM-DD | 来源:[对话起因,如"某篇文章分析"、"某个问题探究"] |
| 65 | |
| 66 | ## 研究背景 |
| 67 | |
| 68 | [1-2 段:为什么研究这个话题,起因是什么] |
| 69 | |
| 70 | ## 核心发现 |
| 71 | |
| 72 | ### [子主题1] |
| 73 | |
| 74 | [翔实内容:保留关键论据、数据、推理链条。不是缩写,而是精炼——删掉冗余但保留实质。] |
| 75 | |
| 76 | ### [子主题2] |
| 77 | |
| 78 | [同上] |
| 79 | |
| 80 | ### [子主题N] |
| 81 | |
| 82 | [同上] |
| 83 | |
| 84 | ## 关键结论 |
| 85 | |
| 86 | [3-5 条最重要的 takeaway,用编号列表] |
| 87 | |
| 88 | ## 延伸问题 |
| 89 | |
| 90 | [对话中浮现但未深入的问题,供后续探索] |
| 91 | ``` |
| 92 | |
| 93 | **注意:此阶段不写"相关概念"section,等用户选完概念后再生成。** |
| 94 | |
| 95 | **摘要写作原则:** |
| 96 | |
| 97 | - **翔实优先**:宁可长一点也不要丢失关键信息。读者应该只看摘要就能获得 80% 的对话价值 |
| 98 | - **保留推理链**:不只是结论,还要保留"为什么得出这个结论"的论证过程 |
| 99 | - **保留数据**:具体数字、实验设计、百分比等不要省略 |
| 100 | - **保留争议**:如果对话中有质疑或修正某个观点,这个过程本身也要记录 |
| 101 | - **自然嵌入【】标记**:在行文中自然使用【】标记专有名词。此阶段【】是候选标记,不是最终双链 |
| 102 | |
| 103 | **写好后直接展示完整摘要给用户阅读。** |
| 104 | |
| 105 | ### Step 3: 双提议 — Wikilink + Atomic Card |
| 106 | |
| 107 | /note 同时提出两类建议,用户分别确认。 |
| 108 | |
| 109 | #### Step 3a: 同名冲突预检(强制) |
| 110 | |
| 111 | 在列出任何 Atomic Card 提议之前,对摘要中每个【概念】候选执行一次存在性检测: |
| 112 | |
| 113 | ```bash |
| 114 | obsidian read path="Cards/{概念名}.md" |
| 115 | ``` |
| 116 | |
| 117 | - **读不到**(CLI 报 not found / MCP 返回空)→ 候选保留在提议 2 "Atomic Card 建议" 列表 |
| 118 | - **读到内容** → 候选**自动转入**提议 1 "Wikilink 建议" 列表,标注 `(同名卡已存在)`,作为链接候选而非建卡候选 |
| 119 | |
| 120 | **为什么强制这一步**:Step 5 使用 `obsidian create ... overwrite`。如果没有 Step 3a 的分流,用户在 Step 3 双提议里选"建立【多巴胺】卡"时,如果 vault 里已有 `Cards/多巴胺.md`,Step 5 会**静默覆盖**老卡的正文、source 回链和 mastery 标签。这条预检把这类冲突在"用户决策点"就解决掉。 |
| 121 | |
| 122 | #### 提议 1:Wikilink 建议(链接到已有 Card) |
| 123 | |
| 124 | 在摘要完成后,CC 搜索 vault 中已有 Cards,找到与本次内容相关的: |
| 125 | |
| 126 | ``` |
| 127 | obsidian search query="关键概念1" |
| 128 | obsidian search query="关键概念2" |
| 129 | ... |
| 130 | ``` |
| 131 | |
| 132 | 列出建议: |
| 133 | |
| 134 | ``` |
| 135 | 📎 Wikilink 建议(链接到已有 Card): |
| 136 | |
| 137 | 1. [[已有Card名A]] — 与本次讨论的 XX 相关 |
| 138 | 2. [[已有Card名B]] — 涉及相同领域 |
| 139 | 3. [[新概念C]] — vault 中无此卡,建议建空链标记知识缺口 |
| 140 | |
| 141 | 请回复编号(如 1,2)确认要链接哪些,或"跳过" |
| 142 | ``` |
| 143 | |
| 144 | #### 提议 2:Atomic Card 建议(创建新复习卡片) |
| 145 | |
| 146 | 从摘要中提取所有【】标记的概念,列成编号清单供用户挑选: |
| 147 | |
| 148 | ``` |
| 149 | 🧠 Atomic Card 建议(创建新卡片用于复习): |
| 150 | |
| 151 | 1. 【概念A】— [一句话说明为什么值得独立成卡] (推荐) |
| 152 | 2. 【概念B】— [一句话] |
| 153 | 3. 【概念C】— [一句话] |
| 154 | ... |
| 155 | |
| 156 | 请回复编号(如 1,3,5)或说"全部"/"不需要卡片" |
| 157 | ``` |
| 158 | |
| 159 | **CC 可以给出推荐**(如在编号后标注"推荐"),但最终由用户决定。 |
| 160 | |
| 161 | **两个提议可以合并在一条消息中展示,用户一次性回复。** |
| 162 | |
| 163 | **提取优先级(供推荐参考,高→低):** |
| 164 | |
| 165 | 1. 事实性知识 — 有实证的科学发现、数据 |
| 166 | 2. 概念框架 — 理论模型、分类体系 |
| 167 | 3. 因果机制 — A→B 的机理链 |
| 168 | 4. 反直觉洞察 — 与常识相反的发现 |
| 169 | 5. 实操方法 — 可执行的策略 |
| 170 | 6. 元认知 — 关于思维本身的洞察 |
| 171 | |
| 172 | **不推荐提取:** |
| 173 | - 纯主观判断 |
| 174 | - 过渡性讨论 |
| 175 | - 已被纠正的信息 |
| 176 | - 过于宽泛的概念(如"科学"、"方法") |
| 177 | |
| 178 | **等用户回复后再进入 Step 4。** |
| 179 | |
| 180 | ### Step 4: 创建原子卡片 + 在摘要中添加双链 |
| 181 | |
| 182 | 根据用户选择,执行两件事: |
| 183 | |
| 184 | #### 4a: 为选中的概念创建原子卡片 |
| 185 | |
| 186 | **命名规则:** |
| 187 | - **文件名 = 概念名**:`Cards/间歇断食.md`、`Cards/HIIT.md` — 与摘要中 `[[间歇断食]]`、`[[HIIT]]` 完全匹配,确保双链可达 |
| 188 | |
| 189 | 每张卡片结构: |
| 190 | |
| 191 | ```markdown |
| 192 | --- |
| 193 | title: "概念名" |
| 194 | source: "[[研究摘要Card名]]" |
| 195 | tags: |
| 196 | - type/atomic |
| 197 | - domain/{领域} |
| 198 | date: YYYY-MM-DD |
| 199 | --- |
| 200 | # 概念名 — 陈述句描述(≤50字) |
| 201 | |
| 202 | [正文:1-3 段,50~3000字,说清这一个概念。正文中必须使用【】标记专有名词、**加粗**标记核心结论。] |
| 203 | |
| 204 | > 参考:[来源] |
| 205 | ``` |
| 206 | |
| 207 | **格式硬性要求:** |
| 208 | - **`type/atomic` 标签是原子卡片的唯一识别标准** — `/review` 靠此标签发现待复习卡片 |
| 209 | - **文件名 = 概念名** — 与摘要中 `[[概念名]]` 一致,确保 Obsidian 双链直接解析 |
| 210 | - **`source` 字段** 回链研究摘要,保持溯源链 |
| 211 | - H1 标题 ≤ 50 字 |
| 212 | - 正文 50~3000 字,含至少一处【】或 `**` 标记 |
| 213 | - H1 标题不含"研究摘要"(这是地图卡片的标识) |
| 214 | - 【】在正文中仍作为专有名词标记使用(写作规范),但不再是识别原子卡片的标准 |
| 215 | |
| 216 | **原子化判断标准:** |
| 217 | - 能脱离上下文独立理解? → 粒度正确 |
| 218 | - 包含两个可分别引用的概念? → 需要拆分 |
| 219 | - 拆开后任一半无法独立理解? → 不拆 |
| 220 | |
| 221 | #### 4b: 在研究摘要中添加 Obsidian 双链 |
| 222 | |
| 223 | 对摘要正文进行双链替换: |
| 224 | - **用户选中的 Atomic 概念**:`【概念A】` → `[[概念A]]`(指向新建的原子卡片) |
| 225 | - **用户确认的 Wikilink**:在摘要中相关位置插入 `[[已有Card名]]`(指向 vault 中已有 Card) |
| 226 | - **用户确认的空链**:插入 `[[新概念]]`(紫色,标记知识缺口) |
| 227 | - **未选中的概念**:保留 `【概念A】` 不变(纯视觉标记,无链接) |
| 228 | - 如果同一概念在摘要中出现多次,**全部替换**为 `[[]]` |
| 229 | |
| 230 | 同时在摘要末尾添加"相关概念"section: |
| 231 | |
| 232 | ```markdown |
| 233 | ## 相关概念 |
| 234 | |
| 235 | [[新建原子卡片1]] [[新建原子卡片2]] [[已有Card1]] [[已有Card2]] |
| 236 | ``` |
| 237 | |
| 238 | ### Step 5: 存入 Obsidian |
| 239 | |
| 240 | > **工具优先级**:CLI 优先,MCP 仅在 Obsid |