mcpField
F
flow

flow

github.com/gaboesquivel开发012 次安装今天更新
代码仓库

关于 flow

Flow 是面向团队的项目上下文对齐技能,用于维护产品文档。它只更新受变更影响的根目录文件,并明确设置与实现工作的边界。

主要功能

  1. 01变更后对齐项目上下文
  2. 02读取现有根目录文档
  3. 03仅更新受影响的章节
  4. 04定义 Flow 区块行为
  5. 05区分文档对齐与实现

适用场景

  1. 01行为变更后同步产品文档
  2. 02保持项目术语一致
  3. 03按需设置 Flow 模式

安装

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

$npx skills add https://github.com/gaboesquivel/flow-skills --skill flow

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

附带文件agents/openai.yamllib/flow-block.mjs

详细介绍

Flow

保留意图,以适配你所在的项目。当工作改变了产品的定位、行为、构建方式或团队对重要概念的命名时,应同步更新项目的根上下文。

此技能不会运行其他技能,也不授权任何实现工作(决策 0024)。它不是项目初始化。

产品归属

  • 采用方项目: PRODUCT.md 是该项目的产品身份。只更新受变更影响的部分。
  • 此 flow-skills 仓库: PRODUCT.md 是 Flow 的方法论身份。仅当该身份发生变化时才编辑它。不要将它复制到其他仓库。

不要用 Flow 的标语、使命、原则或战略链替换项目的产品身份。

flow start 和“启动项目”不是此技能。可选的 start 技能(决策 0010)包含此设置,以及从 flow-next 或 flow-mono 引导生成模板(决策 0026);写入前会确认模板、名称和目标位置。如果有人要求在不使用 start 的情况下搭建仓库,请停止,不要创建初始目录树、指令文件片段或带有 Flow 品牌标识的 PRODUCT.md。

调用方式

当用户要求更新或同步文档时,宿主可以匹配此技能。这不是始终启用的钩子,也不能确定每个宿主都会执行。已确认的可移植行为范围更窄:用户提出要求或调用 /flow 时,此技能才会运行;或者在使用 build 和 review 技能时,这些技能会应用相同的对齐规则。不要仅因元数据允许宿主推荐此技能,就声称已执行对齐。

流程

  1. 存在时,读取 PRODUCT.md、DESIGN.md、GLOSSARY.md 和 ARCHITECTURE.md;使用并行工具调用,而不是启动工作者(扇出规则:write-agents Workers)。仅当相关的 docs/specs/ 和 docs/decisions/ 记录有助于明确对齐范围时,才读取它们。
  2. 只更新受变更影响的部分,每个根文件仅安排一位写入者。每项事实只保留一个权威出处;与其重复不难重新查找的细节,不如链接到规范、决策或代码。
  3. 仅当根文件能承载有关当前项目的有意义内容时才创建。不要搭建空目录树、Flow 方法论样板或平行跟踪目录(不设 PRD/PDR/ADR 目录)。

Flow 区块

“Set up Flow here”会让项目启用 Flow 模式(决策 0020)。本节是该区块的唯一权威定义;start 在引导完成后会写入相同的区块。删除该区块即可退出。

询问。 先读取任何现有区块。如果缺少 Delivery: 或其值为 unset,且请求中未指定,则在写入前询问一次:pull requests 还是 local(决策 0030),并按照 build 的 Delivery mode 部分所述给出建议;该部分负责规定此规则以及每种模式的作用。如果 build 不可用,则不提供建议直接询问。除非用户指定新值,否则保留已记录的值,因此重新运行时若已有该值,无需询问。设置时不询问探索深度(决策 0036);下次写入时会删除遗留的 Process: 行。

写入时使用此技能的 lib/flow-block.mjs:node <skill-dir>/lib/flow-block.mjs <absolute-project-path> [local|pull-request]。该辅助程序负责布局和区块规则:区块所在文件、@AGENTS.md 导入、标记、短语表(PHRASES)、保留已记录的值、将过时区块从被忽略的 AGENTS.md 移出,以及拒绝格式错误的标记或符号链接、项目外文件或共享指令文件。绝不触碰标记和该导入行以外的文本。

没有 Node 时的后备方案: 如果 AGENTS.md 存在且未被 Git 忽略(git check-ignore -q AGENTS.md),则将区块放入其中;否则放入 CLAUDE.md,必要时创建该文件。如果 AGENTS.md 存在或被忽略,则在已有的 CLAUDE.md 第一行添加 @AGENTS.md。在 和 之间写入一个区块,其中包含 Delivery: 行、辅助程序的短语表以及指向此技能的说明。原位替换现有区块,并删除其他任何行(例如已停用的 Deploy: 或 Process:)。如果区块写入 CLAUDE.md,而被忽略的 AGENTS.md 中已有区块,则除非用户指定新值,否则沿用其中的 Delivery: 值,然后仅从 AGENTS.md 中删除该区块。如果标记不匹配或重复,或指令文件是符号链接、解析后位于项目外,或 CLAUDE.md 与 AGENTS.md 实为同一文件,则停止并报告。

目标。 设置定义与 start 相同的目标。写入区块后,如果缺少 PRODUCT.md 或其中没有产品简述(问题、目标人群、风险最高的假设、主要指标和终止标准、核心用户旅程),则将 explore 作为下一步并等待。

报告辅助程序的输出:区块所在文件(Wrote 或 Unchanged)、移出的任何过时区块、任何添加的导入或拒绝,以及布局(区块所在文件、Git 是否跟踪该文件、现有哪些导入)。展示区块并转达任何警告。

边界

  • 不要编辑采用者的 AGENTS.md、CLAUDE.md、.cursorrules 或其他类似指令文件中 Flow 区块和 @AGENTS.md 导入以外的内容;只有在用户提出请求或 start 完成已确认的引导后(决策 0020),才写入区块。
  • 不要要求安装、初始化或先前调用过该技能。
  • 不要把对齐修改视为实现无关代码的许可。对于获授权的实现和测试,如果已安装 build 技能,则调用它。
  • 不要在此处创建 docs/specs/ 或 docs/decisions/ 记录;只有在有必要创建持久且范围明确的产物时,才使用 to-spec 或明确的决策流程。
  • 只有在用户提出请求或设置时发现没有目标(见 Flow 区块)时,才提及其他技能(to-spec、domain-modeling、review 等),然后等待。

完成

说明哪些根目录文件发生了更改,以及它们现在体现的是谁的产品。注明尚未解决的假设,以及用户是否可能希望通过其他技能创建规格说明或决策记录。

评论

支持 Markdown