关于 capture
capture 是一个将杂乱想法、任务和点子整理为可执行内容的技能,适用于需要快速梳理思路的人。它强调保留原意、避免遗漏,并仅在用户批准后执行后续行动。
主要功能
- 01整理想法、任务与点子
- 02按项目和任务分类
- 03保留表达方式并避免遗漏
- 04核查工作区中的相关内容
- 05提供需批准的后续行动
适用场景
- 01把混合的脑暴内容整理成清单
- 02将想法归入相关项目
- 03从工作区查找与记录相关的文件
MCP 相关
可选连接 Notion MCP,搜索已有页面和任务,并在用户批准后提供保存到 Notion 的选项。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ infrasity-labs/ dev-gtm-claude-skills --skill capture安装后在 Claude Code 中输入/capture确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/complexity_matching.mdvoice_preservation.mdworkspace_detection.mdscripts/complexity_estimator.pydump_classifier.pyworkspace_inventory.py详细介绍
Capture — 灵感速记整理器
一项快速落地的技能,可将混杂着想法、任务和点子的无序内容,整理成清晰的四部分行动系统,同时不遗漏任何信息。
调用触发条件
明确短语(任意一个):
- “脑力倾倒”
- “把这个记下来”
- “让我倒出一些点子”
- “我有一堆想法”
- “这是我脑子里所有的事”
- “点子倾倒”
- “让我把脑子里的想法都倒出来”
- “我需要整理一下思路”
- “我在想这些事”
隐含信号(没有明确短语,但意图显而易见):
- 用户粘贴或口述一大段无序内容,其中混杂着各种想法、任务和计划
- 一条消息中包含多个互不相关的想法,且没有组织这些内容的框架
- 一大串条目式文字,涉及 3 个或更多互不相关的主题
检测到隐含触发条件时,运行此技能。不要先问“你想让我帮你整理吗?”——倾倒内容本身就是请求。
操作原则(始终适用,五项全都要遵守)
- 全部记录。 不遗漏任何信息。琐碎事项也要记下来,之后由用户筛选。绝不要因为某件事“似乎不重要”就悄悄略过。
- 保留原有语气。 如果用户说“用 AI 搞点疯狂的东西”,就不要改写成“探索创新的 AI 驱动解决方案”。保留原有的劲头和随意语气。具体反例见
references/voice_preservation.md。 - 让输出复杂度与输入相匹配。 用户只倾倒了 5 个任务,就不要硬凑成 4 个详尽部分。参见
references/complexity_matching.md和下方的压缩输出模式。 - 诚实面对歧义。 如果不确定某项内容的含义,就明确指出。不要默默猜测。
- 未经批准,不采取行动。 唯一可以立即执行的操作就是整理内容。第 4 部分中的每项提议都必须等到用户明确选择后才能执行。
整理过程中的追问澄清
Capture 的设计目标是快速落地。不要预先询问。 用户倾倒的内容已经足够——立即开始整理。
只有在内容中有一项确实无法判断属于任务还是项目,而且错误分类会明显改变输出时,才可以在整理过程中提出一个澄清问题:
快速确认一下——你倾倒的内容中有一项可能属于两种情况。[X] 是一次性任务,还是多步骤项目?
为什么要问: 如果我对边界项判断错误,就可能把项目当作任务埋没,或者把不需要这种结构的任务夸大成项目。每次倾倒只问一个问题,避免打断流程。
停止条件: 每次倾倒最多提出 1 个澄清问题。用户回答后(或者无需澄清时),交付四个部分(或压缩后的部分)。
如果内容没有歧义,就完全跳过澄清。
反例(不要这样做): 一上来就问 3 个澄清问题。这会打断倾倒后立即整理的流程,而这正是 Capture 实用之处。
第 1 部分:项目与点子
如果自然存在归类方式,就将相关事项归入同一主题项目。本部分还包括:
- 独立的创意火花
- 尚未成形的概念
- “如果……会怎样”的想法
- 嵌入其中的决策(
Decide: X or Y)和未解问题(Q: ...)——保留在相关项目中,不要单独提取成顶层类别
每个项目的格式:
### {Project name in user's voice}
- {component / sub-idea}
- {component}
- Q: {open question this project needs answered}
- Decide: {decision this project requires}
项目名称使用用户的原话。如果用户写的是“给雪貂做的 AI 交友应用”,就不要把它改名为“AI 驱动的宠物伴侣平台”。
第 2 部分:任务
采用扁平、易浏览、以行动为导向的格式。包括:
- 明确列出的待办事项
- 以
Decide: ...格式表述的决策 - 以
Resolve: ...格式表述的未解问题
如果某项任务属于第 1 部分中的某个项目,就在后面加上 [Project: X] 以关联项目——但不要重复项目背景。
格式:
- {task in imperative voice} [Project: X if related]
- Decide: {decision} [Project: X if related]
- Resolve: {open question}
- ...
第 3 节:关联
这是该技能发挥价值的地方,也是严禁编造内容的地方。
工作流:
- 盘点工作区——使用 Glob 查找匹配转储关键词的文件名模式,使用 Grep 查找内容匹配项,并读取顶层目录结构。使用
scripts/workspace_inventory.py确定性地完成此操作。 - 将转储项目与现有内容匹配——查找与转储项目相关的文件/文件夹、文档中的既有思路,以及存在重叠的进行中项目。
- 呈现转储内容内部的依赖关系——会相互影响的项目、主题以及顺序上的影响。
- 如实说明无法访问的情况——如果无法检查工作区(没有可用的文件系统、MCP 未连接),请明确说明。不要编造听起来似乎合理的关联。
**硬性规则:**绝不编造关联。只呈现通过 Glob/Grep/Read 实际找到的关联。如果没有实际关联:
**关联:**未找到关联——工作区盘点结果干净。
如果无法访问工作区:
**关联:**无法从此处访问任何工作区。如果你是在 Claude Code 中运行此技能,或有附带文件的项目,我可以补充这部分内容。愿意分享这些工作位于何处吗?
有关各上下文的检测技巧目录,请参阅 references/workspace_detection.md。
第 4 节:我能如何提供帮助
**提供具体方案,而非抽象的可能性。**每项方案都要说明会产出什么,以及产出会放在哪里。
| ✅ 正确示例 | ❌ 反面示例 |
|---|---|
“我可以研究 Consensus MCP 集成模式,并提供 3 种方案。输出:docs/consensus-options.md。” | “你可以考虑了解一下集成方法。” |
“我可以起草 Q3 发布计划,篇幅为 1 页。输出:聊天回复;如果你想归档,也可以保存为 docs/q3-launch.md。” | “也许可以考虑一下 Q3 规划。” |
“我可以参照 src/users/ 中的现有模式,为新认证模块搭建框架。输出:src/auth/ 中的 4 个文件。” | “我们可以探索一下认证方案。” |
最后以指示性问题收尾:
你想让我处理哪一项?
精简输出模式
当转储内容不超过 5 项,且各项互不相关(没有自然的分组)时,舍弃 4 节格式,改用精简格式:
## What I heard
- {item}
- {item}
- {item}
- ...
## How I can help
- {concrete offer with what + where}
- {concrete offer with what + where}
Which should I tackle?
触发条件为 complexity_estimator.py 的建议,或在不存在分组时根据你的判断决定。各格式的适用场景示例,请参阅 references/complexity_matching.md。
工作区检测策略
| 上下文 | 检测方法 |
|---|---|
| Claude Code CLI | 使用 Glob 查找匹配转储关键词的文件;使用 Grep 查找内容匹配项;读取顶层结构。使用 scripts/workspace_inventory.py。 |
| 带有项目的 Claude.ai | 检查项目知识文件中是否有主题重叠。列出文件标题;按关键词呈现匹配项。 |
| 已连接的工具(Notion、Drive 等) | 如果可用,通过 MCP 搜索。请参阅下文的 Notion MCP 部分。 |
| 无法访问工作区 | 明确说明限制;询问用户的配置;不要编造内容。 |
Notion MCP(可选)
此技能在 Notion MCP 连接器可用时会与其集成。将整理后的各部分发送到聊天后,尝试运行 notion-query-data-sources。如果返回结果,则表示 Notion 已连接——运行下方的保存流程。如果失败或不可用,则静默跳过并附加提醒。
保存流程(已连接 Notion 时)
在交付 4 个部分(或精简版)输出后,且用户尚未选择第 4 部分中的选项时运行——这是并行的后台操作,不是门槛。
- 使用来自「项目」和「任务」的关键词调用
notion-search,检测工作区中是否已有匹配页面 - 对第 1 部分中的每个项目/想法:检查是否已有匹配的项目页面
- 如果有:向用户展示匹配项(“找到现有页面:[标题]——要我链接或更新它吗?”)——未经批准不得自动更新
- 如果没有:提议使用
notion-create-pages在「项目」数据库中创建
- 对第 2 部分中的每个任务:调用
notion-query-database-view,检查是否存在任务数据库- 如果有:提议通过
notion-create-pages将任务添加到该数据库 - 如果没有:提议通过
notion-create-database创建任务数据库并添加这些任务
- 如果有:提议通过
- 所有 Notion 操作都只是提议,不会自动执行——在第 4 部分末尾集中提出一个提议:
保存到 Notion? 我从你的内容中找到了 [N] 个项目和 [N] 个任务。我可以将它们添加到你的 Notion 工作区——其中有 [X] 个匹配的现有页面,[Y] 个新条目。回复“保存到 Notion”即可继续,或者改选第 4 部分中的选项。
- 获得批准后:对已批准的条目执行
notion-create-pages,并通过页面链接确认
后备方案(未连接 Notion 时)
💡 未连接 Notion——整理后的脑力倾倒内容只会输出到聊天中。连接 Notion MCP 连接器,即可自动将项目和任务保存到你的工作区。设置方法:notion-mcp-server
批准门槛
交付四个部分(或精简版)后:
- 在采取任何其他操作前,等待用户明确选择。
- 如果用户没有选择具体选项,只说“开始”:遵照执行,但要明确指出任何你无法完全确定的条目,以便用户纠正。
- 只有整理操作会自动执行。第 4 部分中的每个选项都需要用户明确同意。
错误处理
| 情况 | 处理方式 |
|---|---|
| 无法访问工作区 | 说明情况;跳过第 3 部分,或告知“无法访问工作区”并询问是否需要设置 |
| 内容很短(3-5 个条目) | 使用精简版输出;不要强行分成 4 个部分 |
| 条目存在严重歧义 | 在输出中标记,最多询问 1 个澄清问题(也可以不询问,直接在交付内容中指出歧义) |
| 内容包含敏感信息 | 如果用户要求整理但没有要求引用,不要逐字复述;可确认已收到 |
| 内容中存在冲突 | 在第 1 或第 3 部分明确指出冲突(Conflict: X says A, Y says B) |
| 用户在批准前说“开始” | 遵照执行,但要明确指出你不确定的条目 |
工具
| 脚本 | 用途 |
|---|---|
scripts/workspace_inventory.py | 第 3 部分的 Glob+Grep 助手。python workspace_inventory.py --root . --keywords "k1,k2" 按关键词和文件夹结构返回匹配项。 |
scripts/dump_classifier.py | 使用正则表达式将内容的每一行分类为 task / decision / question / idea / project-component。这是启发式分类——可根据判断覆盖结果。 |
scripts/complexity_estimator.py | 统计条目数、检测聚类信号,并建议使用 format=full 或 format=compressed。 |
参考资料
references/workspace_detection.md— 按情境区分的检测策略(CLI / 网页 / MCP / 无法访问)references/voice_preservation.md— 企业腔反模式及具体示例references/complexity_matching.md— 精简版与完整版输出及完整示例
应拒绝的反模式
- 捏造未经 Glob/Grep 实际验证的工作区连接
- 删除被认为“琐碎”的事项——全部记录下来,让用户自行删减
- 将用户随意的表达改成企业化措辞
- 输入内容较少时仍强行使用 4 个部分的结构(5 项简单任务不需要这样做)
- 未经批准就立即执行第 4 部分中的建议
- 将决策/问题拆分到单独的顶层类别,而不是放入相关项目中
- 第 4 部分中的建议含糊不清(“你或许可以考虑……”)
- 一开始就提出 3 个以上的澄清问题(会妨碍快速行动)