mcpField
F
fusion-issue-task-planning

fusion-issue-task-planning

github.com/equinorAgent 工作流1.9k 次安装
代码仓库

关于 fusion-issue-task-planning

这是一项实验性技能,可将 User Story issue 转为有序且可追溯的任务计划和 issue 草稿,供 Agent 准备实施工作;GitHub 修改须经明确确认。

主要功能

  1. 01研究 issue 并映射验收标准
  2. 02按依赖关系拆分任务
  3. 03提供仅草拟的降级模式
  4. 04设置歧义检查与发布门槛
  5. 05任务修复与发布后检查

适用场景

  1. 01将 User Story 拆成可验证的实施任务
  2. 02准备不发布的任务 issue 草稿
  3. 03检查任务依赖与未决设计风险

MCP 相关

通过 MCP 工具名称执行 GitHub 操作,并将发布或修复修改委托给 fusion-issue-authoring;自身不会直接调用 MCP 写入工具。

安装

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

$npx skills add https://github.com/equinor/fusion-skills --skill fusion-issue-task-planning

安装后在 Claude Code 中输入/fusion-issue-task-planning确认已加载。

包含的文件

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

CHANGELOG.md
assets/
follow-up-questions.md
README.md
task-plan-template.md

详细介绍

用户故事任务规划

实验性说明

此技能处于实验阶段,尚不稳定。不同版本的行为、结构和输出可能会发生变化。

适用场景

如果你需要在实现前为用户故事议题制定可执行的任务计划,请使用此技能。

典型触发语:

  • “为 #123 规划任务”
  • “将这个故事拆分为多个步骤”
  • “根据此用户故事创建任务议题草稿”

不适用场景

未经明确确认,请勿将此技能用于直接实现代码、审查 PR 或执行 GitHub 修改。

必需输入

  • 目标议题引用(owner/repo#number 或 URL)
  • 所需规划深度(minimal、standard、detailed)
  • 运行模式(draft-only、draft+publish-ready 或 publish-now)

如果缺少的输入导致无法规划,请从 assets/follow-up-questions.md 中提出最多 3 个有针对性的后续问题。

默认值

  • 规划深度:standard
  • 运行模式:draft-only
  • 发布行为:执行任何修改前,必须在同一轮对话中获得明确确认

工具格式

  • 工具名称遵循 <mcp_server>::<tool> 格式(例如:mcp_github::sub_issue_write)。

说明

按顺序执行,并明确说明所做的假设。

  1. 检查首选技能并判定起草模式

    • orchestrated:fusion-issue-authoring 和 fusion-issue-author-task 均可用;由编排器执行完整工作流,并负责处理明确的发布关卡。
    • direct-subordinate:仅 fusion-issue-author-task 可用;使用其模板和防护措施,以 draft-only 模式操作,不执行任何 GitHub 修改,并提供草稿以及明确的发布说明,供编排器或用户参考。
    • inline:两者均不可用;保持 draft-only 模式,使用最精简的内置结构(Title、Problem、Scope、Acceptance criteria mapping、Verification、Dependencies)生成任务草稿,并避免直接引用其他技能的 assets/ 文件。
    • 只要 fusion-issue-author-task 可用,就优先使用;不要绕过它,直接跨技能引用文件。
    • 永远不要因为缺少首选技能而停止;应妥善降级处理。
  2. 调研用户故事

    • 收集标题、正文、验收标准、场景、祖先链、现有子议题和相关链接。
    • 如果议题类型不明确,请确认是否按 User Story 处理。
  3. 仅在必要时澄清

    • 每批最多提出 3 个问题。
    • 如果存在安全的默认值,则在明确说明假设的前提下继续。
  4. 提取规划要点

    • 预期结果
    • 约束和非目标
    • 验证要点
  5. 按依赖顺序构建任务

    • 对于每项任务,都要包含目标、范围边界、交付物、验证方法,以及对应的 AC 参考。
    • 优先拆分为可独立验证的任务。
  6. 起草前进行魔鬼代言人审查

    • 检查拟议的任务集是否存在架构模糊信号:
      • 用户故事、评论或上级议题中提到的未解决设计或架构决策
      • 后端和前端任务共用尚未达成一致的隐式 API、数据模型或所有权约定
      • 同时存在调研、研究或对齐任务与具体实现任务,但两者之间没有明确的阻塞关系
      • 依赖关系表述含糊或形成循环(“后端完成后”“设计就绪后”)
      • 组件、API 或数据模型的所有权不明确或存在争议
    • 如果存在两个或更多信号:
      • orchestrated 模式:自动通过 fusion-issue-authoring → agents/devils-advocate.agent.md,以 interrogator mode 运行——无需用户触发。
      • direct-subordinate 或 inline 模式:使用上述五项信号运行内联 DA 检查清单;以结构化的 ⚠ Ambiguity checklist 呈现发现,并要求用户在生成草稿前逐项解决或明确接受。
    • 如果存在零个或一个信号,则以 moderate mode 运行:最多呈现 3 项顾虑,并在用户确认后继续。
    • 发布门槛(所有模式):除非魔鬼代言人确认任务拆分合理,或用户明确接受列出的风险,否则不得发布任务。
    • 仅起草例外:在 draft-only 模式下,即使存在未解决的模糊之处,也可以继续生成草稿,但须在计划预览顶部输出 ⚠ Ambiguity warning 区块,列出每项未解决的问题。接受风险前不得发布。
  7. 生成任务议题草稿

    • orchestrated:通过 fusion-issue-authoring 创建类型为 Task 的议题
    • direct-subordinate:以仅起草模式调用 fusion-issue-author-task,并输出明确的发布说明,将最终修改操作委托给 fusion-issue-authoring
    • inline:使用第 1 步中的最简内置结构编写 .tmp/TASK-<nn>-<slug>.md 草稿
    • 获得明确的发布批准前,草稿须保留在本地。
  8. 生成计划预览

    • 根据 assets/task-plan-template.md 编写 .tmp/USER-STORY-TASK-PLAN-<context>.md。
    • 包含摘要、可追溯性、排序后的任务、草稿路径、发布计划、假设和风险。
  9. 仅在明确确认后发布

    • 必须在同一轮对话中获得明确确认。
    • 如果仍有未解决的假设,则停止。
    • 将发布执行委托给 fusion-issue-authoring,并优先通过子 Agent 调用创建、更新和关联任务议题。
    • 向 fusion-issue-authoring 传递必要的上下文:owner、repo、上级用户故事引用、排序后的任务草稿、标签/指派对象意图以及依赖顺序。
    • 要求 fusion-issue-authoring 保持 MCP 优先行为,仅在 MCP 写入覆盖范围不足时使用 GraphQL 回退方案。
    • 编排器的会话缓存规则适用于所有委托调用:标签、指派对象候选项和议题类型在每个会话中仅获取一次,并在批次中的所有任务议题间复用。
    • 预算注意事项:发布包含 N 个任务的任务计划约需 N 次议题写入变更,另加可选的子议题关联变更。如果 N > 5,须提醒用户存在速率限制风险,并提供分批发布选项。
    • 发布模式下,不得从此技能直接调用 MCP 写入工具。
    • 如果委托执行返回未解决的单项失败,则发布模式必须硬性失败。
  10. 修复已创建任务的模式

  • 如果任务已创建,但缺少 Issue Type 或父级关联,请委托 fusion-issue-authoring 进行修复,并优先调用子 Agent。
  • 为每个问题提供修复意图(设置 type=Task、添加缺失的父级关联、保留顺序),并要求提供委托运行的验证结果。
  • 修复模式必须具备幂等性:跳过已正确的问题,只修复缺失的元数据。
  • 修复后执行事后验证,并返回可执行的失败处理建议。

常见失败及解决方法

  • 运行时无法使用 fusion-issue-authoring
    • 保持仅草拟模式,并返回可直接发布的产物及明确的交接说明。
  • 委托发布部分失败
    • 按问题返回 failed 状态及确切原因,并在用户确认前停止后续变更。
  • 已创建任务问题,但未关联到父级故事
    • 通过 fusion-issue-authoring 触发委托修复,并要求提供事后验证输出。
  • 任务已存在,但缺少或设置了错误的 Issue Type
    • 通过 fusion-issue-authoring 触发委托修复,指定 type=Task 意图并验证结果。
  • 事后验证报告部分失败
    • 按问题返回 failed 状态及确切原因,停止发布流程,并将未解决事项留待用户明确决策。

预期输出

按以下标题顺序返回:

  1. 实验性说明
  2. 故事摘要
  3. 验收标准可追溯性
  4. 有序任务
  5. 草稿文件路径
  6. 发布计划
  7. 假设、风险和待解决问题

始终包含:Status: Awaiting user approval,直至发布经确认并完成。

对于 publish-now 或 repair 模式,按问题提供事后报告,包含:

  • 问题是否存在
  • 问题类型是否等于请求的类型
  • 父级是否等于预期的故事编号
  • 状态(ok、fixed 或 failed)

资源

安全与约束

  • 此技能可以执行变更。发生冲突时,仓库本地工作流说明优先于内联指南。
  • 未经明确确认,绝不更改 GitHub 状态。
  • 不得推断验收标准;如有假设,必须明确标注。
  • 始终在任务计划中保留 AC 可追溯性。
  • 在执行任何发布操作之前,将草稿保存在 .tmp/ 中。
  • 在发布/修复模式下,在事后检查通过前,将缺少 Issue Type 或父级关联视为失败。
  • 将变更/修复的执行委托给 fusion-issue-authoring(优先使用子 Agent),不得直接从此技能调用 MCP 写入工具。

评论

支持 Markdown