mcpField
B
bmad-ingest

bmad-ingest

github.com/bmad-code-org生产力55.1k951 次安装今天更新
代码仓库

关于 bmad-ingest

用于将转录稿、对话、语音备忘和长文档整理为可追溯笔记的 BMad 技能。它保留原始输入,为笔记条目标注来源位置,并通过单独审查步骤检查遗漏或归属错误。

主要功能

  1. 01保留原始材料及附件
  2. 02选择模板与扩展
  3. 03标注笔记条目的来源位置
  4. 04记录决定、条件和更正
  5. 05对照原文审查笔记

适用场景

  1. 01将会议转录稿整理成笔记
  2. 02整理邮件或聊天记录
  3. 03从语音备忘中提取行动项
  4. 04从长文档生成可追溯笔记

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-ingest

安装后在 Claude Code 中输入/bmad-ingest确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

bmod.toml
customize.toml
evals/
triggers.json

详细介绍

摄取

你要将原始输入(转录稿、聊天或电子邮件对话、语音备忘录、长文档)整理成一份笔记,供人或 Agent 阅读,以代替原始内容。读者会依据笔记采取行动,而不会核对原文,因此每一项都必须能追溯到原文中的出处,且不得包含原文未提及的内容。原始内容会按收到时的样子保留,任何人都可以核查。

调用方要求无头运行或现场没有人时,不要提问。

激活时

  1. 配置:uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder。如果找不到脚本,说明此处尚未设置 BMad;请提供 bmad 技能的设置方法,必要时先安装 bmad(npx skills add bmad-code-org/BMAD-METHOD --skill bmad),然后重新运行。
  2. 自定义项:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow;如出现任何其他故障,请读取 {skill-root}/customize.toml 并使用其中的默认值。运行 {workflow.activation_steps_prepend} 中的每一项,将 {workflow.persistent_facts} 中的每一项作为本次运行的事实(file: 条目是 {project-root} 下需要读取的路径或 glob),然后运行 {workflow.activation_steps_append} 中的每一项。

保留原始内容

{workflow.raw_folder} 用于存放原始内容,这样笔记就能通过一个在源代码管理中有效的相对路径链接到原始内容。将存储的内容命名为 YYYY-MM-DD-<slug>,日期以输入发生时间为准(若跨多天,则取最后一天),并根据原始内容或其文件名确定;两者都无法确定日期时,不要填写日期,也不要使用今天的日期,以免读者误以为这是输入发生的日期。如果已有其他原始内容使用了该名称,则依次添加 -2、-3 等后缀。

  • 原始内容位于项目外:将其复制到 {workflow.raw_folder}。如果内容带有附件(电子邮件中的图片、幻灯片、文件等),则将原始内容及其附件放入同一个文件夹。
  • 原始内容已位于项目内:保留原位置。
  • URL:记录该 URL。如果你已获取内容并阅读,也要将所读内容保存到 {workflow.raw_folder},因为页面可能会更改或消失。

选择模板

使用调用方或用户按路径或 URL 指定的模板。否则,列出模板:uv run {project-root}/_bmad/scripts/list_templates.py {workflow.template_libraries} <libraries the caller passed> --folder ingest-templates --root <folder>;其中 --root 首先指定项目的技能文件夹,然后为宿主加载的每个用户级技能文件夹各指定一个。如果找不到脚本,说明此 BMad 安装版本过旧;请让 bmad 技能更新,以刷新共享脚本,然后重新列出模板。按照每条 tool_sources 说明找到相应库中的模板。对于 unreachable 来源、除 {project-root}/_bmad/custom/ingest-templates 或 ~/.bmad/ingest-templates 之外的 missing 路径,以及 orphaned 扩展,指出其名称,并在不使用它们的情况下继续。通过 gh 读取任何 GitHub 文件。

按 id 指定的模板使用该模板;否则仅根据描述进行选择,用一行说明原因,并列出相近的备选项。如果没有合适的模板,对话使用 meeting,其他内容使用 document。加载选定的模板及其每个 extensions;发生冲突时,以列表中最先列出的内容为准。

模板中的注释用于指导你,不应出现在笔记中;done when 是 Review 检查的依据。如果原始内容中没有某个章节的相关内容,应以一行说明,除非该章节的注释将其标为可选。

撰写笔记

笔记的文件夹按以下顺序选择第一个适用项:

  1. 调用方或用户指定的文件夹。
  2. 正在进行的工作已明确表明的文件夹,例如正在编写的文档旁边有一个 sources/ 文件夹。
  3. 模板的 output。
  4. {workflow.notes_folder},即路径或需要遵循的指示。

除非调用方或用户要求合并为一篇笔记,否则每个原始资料各写一篇笔记。将其命名为 <raw name>.md;如果已有任何并非此原始资料自己的早期笔记使用该名称,则依次添加 -2、-3 等。其 frontmatter 包含 title、description(一行说明,供后续读者判断是否打开笔记)、template、ingested(今天)和 source(相对于笔记的原始资料路径,或其 URL)。

  • 为每条内容标明其在原始资料中的位置:时间戳、章节、消息日期和发言者,或简短引文。
  • 负责人、日期、数字和条件(“完成 X 后”“仅当……”)只能按原始资料中的表述记录,并分别放在所属条目中。
  • 对于相对日期(“星期一”“下周”),如果已知原始资料的日期,则补上日历日期。使用 date 或 cal 查询日期和星期,不要凭记忆推断。
  • 按原始资料中的称呼写人名。
  • 如果某项说法后来被撤回或更正,记录最终状态并说明它已发生变化。
  • 如果措辞十分重要,例如承诺或客户原话,则准确引用。
  • 从原始资料所在文件夹链接相关附件,不要复制附件。
  • 将原始资料本身未能明确的内容(无法听清的片段、发言者不明、不同说法相互矛盾)放在最后一个 ## Unclear in the source 章节中;没有此类内容时省略该章节。相关人员尚未解决的问题应放在模板指定的位置。

如果原始资料过长,无法一次读完,则分段阅读,并在阅读过程中持续记录笔记。开始撰写前,依据原始资料梳理各部分之间发生的变化,例如上午的决定在下午被撤回。

完成后,检查 source 和笔记中的每个相对链接是否都能从笔记所在文件夹解析。

审阅

撰写者容易忽略自己误读的内容,因此应由未参与撰写的读者检查笔记:如果运行环境支持子代理,就使用子代理;否则自行再次对照原始资料检查。向审阅者提供笔记、原始资料和模板,并让其针对以下每项指出原始资料中的位置:

  • 原始资料中存在,但笔记遗漏或表述错误的决定、承诺或条件;
  • 被写成已决定或已分配的提议或主动表示(“我会做”“我可以做”),或仍写成早期状态、未反映后续变化的内容;
  • 引文或内容归错了人;
  • 无法支持相应内容的引用;
  • 模板的 done when 要求中,笔记未满足的任何事项。

逐条对照原始资料核实审阅意见后再处理,因为审阅者也可能误报。修正笔记,并将仍不确定的内容放在 ## Unclear in the source 下。

完成

告知用户笔记路径和原始资料路径,然后运行 {workflow.on_complete}。无头运行最终以一个 JSON 对象结束,其中包含 note、raw、template 和 unclear(## Unclear in the source 下条目的数量)。

若要添加或替换模板,请将文件放入 {project-root}/_bmad/custom/ingest-templates/,或放入 ~/.bmad/ingest-templates/ 以供所有项目使用,并在其 frontmatter 中包含 template、category 和 description。要替换内置模板,请使用相同的 id;要扩展某个模板,请使用 extends: <id>。若要更改原始资料或笔记的存放位置,或添加模板库,请调用 bmad-customize 技能,并指定 workflow.raw_folder、workflow.notes_folder 或 workflow.template_libraries;如果未安装该技能,请提供 npx skills add bmad-code-org/BMAD-METHOD --skill bmad-customize。

评论

支持 Markdown