其他
有 Markdown 计划且任务带 depends_on…
在显式 /parallel-task-spark 命令下,解析计划文件并按依赖波次并行派发 Sparky 子代理,循环完成、验证、提交并更新计划日志。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 38/100 ×0.15
适用场景
有 Markdown 计划且任务带 de特定
解决思路
- 仅在收到显式 `/parallel-task-spark` 命令时触发;以子代理编排者身份使用 orchestration mode,不要自行触发。
- 从用户请求中提取计划文件路径和可选的任务子集(特定任务 ID);如果未提供子集,则运行完整计划。
- 读取 Markdown 计划并查找任务小节,例如 `### T1:` 或 `### Task 1.1:`。
- 对每个任务提取任务 ID 和名称。
- 对每个任务从 `- **depends_on**: [...]` 提取 `depends_on` 列表。
- 对每个任务提取完整内容:描述、位置、验收标准、验证。
- 构建任务列表。
- 如果请求了任务子集,则将任务列表过滤为仅包含这些 ID 及其所需依赖。
- 对每个未被阻塞的任务启动子代理,并设置 `agent_type: sparky`。
- 子代理描述使用 `Implement task [ID]: [name]`。
- 使用任务提示模板构造每个子代理的 prompt。
- 并行启动所有未被阻塞的任务。
- 只使用 Sparky 角色子代理,不使用其他角色。
- 将任务视为未阻塞的条件是:其 `depends_on` 列表中的所有 ID 均已完成。
- 每次启动都必须设置 `agent_type: sparky`;任何其他角色对本技能无效。
- 在任务 prompt 的 Context 中填入 `Plan: [filename]`。
- 在 Context 中填入 `Goals: [relevant overview from plan]`。
- 在 Context 中填入 `Dependencies: [prerequisites for this task]`。
- 在 Context 中填入 `Related tasks: [tasks that depend on or are depended on by this task]`。
- 在 Context 中填入 `Constraints: [risks from plan]`。
- 在任务 prompt 中填入任务标识 `Task [ID]: [Name]`。
- 填入 `Location: [File paths]`。
- 填入 `Description: [Full description]`。
- 填入 `Acceptance Criteria: [List from plan]`。
- 填入 `Validation: [Tests or verification from plan]`。
- 指示子代理使用 `sparky` agent role,不使用任何其他角色。
- 指示子代理在编码前阅读工作计划并完全理解此任务。
- 指示子代理先阅读所有相关文件,再进行有针对性的代码库研究(相关模块、测试、调用点、依赖)以确认方案。
- 指示子代理默认先进入 TDD RED 阶段,使用 `tdd_test_writer` 子代理。
- 对 `tdd_test_writer` 传递任务上下文和验收标准。
- 对 `tdd_test_writer` 要求只修改测试。
- 对 `tdd_test_writer` 要求用命令输出证明新增/更新的测试因预期行为缺口而失败。
- 如果任务不是好的 TDD 候选,指示子代理明确记录 `reason_not_testable`,并定义替代验证证据(例如 `manual_check`、`static_check` 或 `runtime_check`),给出确切命令或具体验证步骤。
- 指示子代理将 RED 阶段测试(或已批准的非可测试验证计划)作为实现契约进行审查;除非需求变更,不要弱化或删除测试。
- 指示子代理为所有验收标准实现生产变更。
- 指示子代理运行验证;对可测试任务,运行确切的新增/更新测试命令直到 GREEN(通过)。
- 对不可测试任务,指示子代理运行约定的替代验证并捕获证据。
- 如果可行,指示子代理运行计划中的任何额外验证步骤。
- 指示子代理提交工作。
- 提交时只暂存本任务相关文件,因为其他代理在并行工作。
- 指示子代理绝不 push,只 commit。
- 提交后,指示子代理更新 `*-plan.md` 任务条目,写入完成状态。
- 在 `*-plan.md` 任务条目中写入简洁工作日志。
- 在 `*-plan.md` 任务条目中写入修改/创建的文件。
- 在 `*-plan.md` 任务条目中写入遇到的错误或注意事项。
- 指示子代理返回总结,包括修改/创建的文件。
- 返回总结包括所做的更改。
- 返回总结包括如何满足验收标准。
- 返回总结包括验证证据:RED -> GREEN 或已记录的非可测试替代验证。
- 返回总结包括已执行或推迟的验证。
- 在重要事项中要求子代理注意路径。
- 在重要事项中要求子代理遇到阻塞时停止并描述。
- 在重要事项中要求子代理专注于当前特定任务。
- 确保每个任务只有在提供 RED -> GREEN 测试证据或显式非可测试验证证据,然后已提交并更新计划后,才视为完成。
- 子代理完成后检查其输出是否正确和完整。
- 对照预期结果验证结果。
- 如果任务确实正确完成,确保任务 commit 存在,然后确保任务已标记完成并带日志。
- 如果任务未成功,让代理重试或升级问题。
- 在进入下一波任务前,确保该波工作已在本地提交。
- 重复时再次审查计划,查看有哪些新的未阻塞任务可用。
- 继续并行启动未阻塞任务,直到计划完成。
- 重复该过程,直到所有任务完成、验证(RED -> GREEN 或已记录的非可测试验证)、提交并记录日志且无错误。
- 错误处理:任务子集未找到时,列出可用任务 ID。
- 错误处理:解析失败时,展示尝试了什么,并请求澄清。
- 示例用法:`Implement the plan using parallel task skill`。
- 示例用法:`/parallel-task-spark plan.md`。
- 示例用法:`/parallel-task-spark ./plans/auth-plan.md T1 T2 T4`。
- 示例用法:`/parallel-task-spark user-profile-plan.md --tasks T3 T7`。
- 使用执行总结模板,标题为 `# Execution Summary`。
- 填写 `## Tasks Assigned: [N]`。
- 在 `### Completed` 下列出 `- Task [ID]: [Name] - [Brief summary]`。
- 在 `### Issues` 下列出 `- Task [ID]: [Name]`,并填写 `Issue` 和 `Resolution`。
- 在 `### Blocked` 下列出 `- Task [ID]: [Name]`,并填写 `Blocker` 和 `Next Steps`。
- 填写 `## Overall Status` 的完成摘要。
- 填写 `## Files Modified` 的变更文件列表。
- 填写 `## Next Steps` 的建议。
适用边界 · 注意事项
- 不要在未收到显式 `/parallel-task-spark` 命令时触发。
- 不要用于没有可解析 Markdown 计划文件或任务依赖信息的场景。
- 不要使用非 `sparky` 角色,或在不支持并行子代理编排的环境中执行。