用途
Project 技能用于管理长期运行的项目工作,通过一个项目跟踪文件作为持久化的唯一事实来源。它覆盖项目的完整生命周期:创建、恢复、重新规划和关闭。
主要能力
- 定位或创建项目跟踪文件(tracker)。
- 根据仓库状态选择操作模式:缺失则创建,活跃则从 Current Batch 恢复,过期或错误则就地重新规划,已完成则归档。
- 在深入执行前关闭关键缺口,通过简洁的后续问题澄清范围、成功标准、约束、依赖、凭据或审批。
- 从跟踪文件同步上下文,读取 Current Batch、Milestones、Open Questions / Blockers、Progress Log 和 Done When。
- 规划下一执行批次,重建 Current Batch,冻结共享契约或验收规则,优先委派读密集型分析、外部验证、日志分类或隔离测试工作。
- 执行并验证,先运行仓库原生验证,再运行里程碑特定测试或冒烟测试,修复失败后再标记完成。
- 在每个有意义的批次后更新跟踪文件,记录委派结果、决策、阻塞、资源文件和进度。
- 持续执行直到所有范围工作完成、出现真正需要人工输入的阻塞,或需要用户做出仓库安全决策。
- 关闭并归档项目,默认归档为最终动作,使用捆绑脚本 scripts/archive_project.py 整体归档项目目录。
使用方式
跟踪文件位置优先遵循仓库本地指南:如果仓库在 STRUCTURE.md、AGENTS.md 或其他根指南文件中定义了项目跟踪文件主目录,则使用该位置;否则使用默认路径 docs/projects/<project>/tasks.md。归档时归档到同一项目跟踪文件主目录下。
创建或规范化 tasks.md 时使用 references/tasks-template.md。编辑跟踪文件结构、重建 Current Batch、检查点或关闭项目时,阅读 references/tracker-operating-rules.md。委派工作时阅读 references/subagent-conventions.md。引导 learnings.md 时使用 references/learnings-template.md。归档使用 scripts/archive_project.py,默认以 --source <active-project-dir> --destination <tracker-home>/archive/<project> --no-input 执行,仅在需要检查时使用 --dry-run。要求成功结果报告 source_removed: true,然后验证活跃项目路径不再存在,并在最终响应前运行仓库正常检查。
适用场景
适用于需要跨多个会话或较长时间完成的项目工作,尤其是涉及子代理委派、里程碑验证和持久化状态管理的场景。
限制
- 不得在项目完成后仍将其留在活跃跟踪文件夹中;必须归档或说明阻塞。
- 剩余的空活跃项目目录视为不完整归档,即使 Git 不跟踪它。
- 仅在完成存在实质性不确定或关闭依赖产品判断而非实现执行时,才在归档前询问。
- 子代理仅用于有界的独立工作;当集成、验证编排或运行时/设备冒烟工作成为主导时,应收回本地执行。
- 共享边界决策必须保留在主线程。
- 持久状态必须保存在仓库中,而不仅在聊天中。
资源
- references/tasks-template.md:创建或规范化 tasks.md。
- references/tracker-operating-rules.md:Current Batch、检查点、待办和关闭规则。
- references/subagent-conventions.md:委派策略、角色划分、拆分模式和反模式。
- references/learnings-template.md:引导 learnings.md。
- scripts/archive_project.py:安全地整体归档项目目录。