返回 Skill 列表
extension
分类: 开发与工程无需 API Key

progress-manager

汇总当前会话的工作进度并持久化到项目的进度文档中,或恢复上次会话的工作上下文让用户能立即继续工作。用于”保存进度/记录进度/更新进度”或”恢复进度/继续上次工作/从断点继续”场景。

person作者: jakexiaohubgithub

progress-manager

本 skill 管理项目级工作进度。目标是把当前会话中已经探索清楚的代码认知、执行计划、下一步动作固化下来,让后续会话可以直接接手,少做重复搜索。

路径可见性:解析并锁定进度根目录后,在首次扫描、读取、创建或更新前,必须先显式告知用户本次操作的 .work-progress/ 绝对路径,然后直接继续,无需等待确认。save 输出 本次进度目录(读取/写入):<绝对路径>/.work-progress/;resume 输出 本次进度目录(读取):<绝对路径>/.work-progress/

动作路由

本 skill 是统一入口,具体执行细则拆分为两个参考文档(references),按意图分流后读取对应细则执行:

  • 用户要保存、记录、更新当前进度时:读取并执行保存任务细则 save-progress.md
  • 用户要恢复、继续、查看上次进度时:读取并执行恢复任务细则 resume-progress.md
  • 用户意图不明确时:先根据语义判断是 save 还是 resume;仍不明确再简短询问。

共享约定

  • 任何扫描、读取或写入前,先按下文解析并锁定本次操作的“进度根目录”;不得直接把命令执行所在目录当作进度根目录。
  • 进度目录固定为进度根目录下的 .work-progress/
  • 未完成任务放在 .work-progress/
  • 完成任务放在 .work-progress/archive/
  • 不维护额外状态目录;暂停、卡住、风险写入进度文件内容。
  • 文件名格式由 save-progress.md 定义;状态以目录位置为准,文件头部状态只是便于扫描的摘要。

进度根目录解析

按以下优先级只选择一个根目录:

  1. 用户显式指定:用户给出项目根目录时直接使用;给出 .work-progress/ 目录时使用其父目录;给出进度文件时向上定位最近的 .work-progress/ 并使用其父目录。将结果转为绝对路径。
  2. 宿主项目根目录:否则优先使用宿主为当前任务分配的 project root(项目根目录);没有 project root 时使用 workspace root(工作区根目录)。有多个 workspace root 时,先选择包含任务目标文件或模块的根目录,否则选择包含当前目录的根目录;嵌套候选中选路径最深的一个。
  3. Git 仓库根目录:宿主未提供根目录时,以用户指定的任务相关路径为起点,否则以当前目录为起点;起点是文件时先取其父目录。运行 git -C "<起点目录>" rev-parse --show-toplevel,该命令输出 Git(分布式版本控制系统)当前工作树的绝对根目录。
  4. 最后降级:宿主未提供根目录且起点不在 Git 仓库内时,才使用当前目录的绝对路径。

解析后将 <进度根目录>/.work-progress/ 记为本次操作的唯一进度目录。后续即使切换目录或在子包内运行命令,也不得重新解析。

失败处理:

  • 显式路径不存在或不具备当前操作所需权限时(save 需要读写,resume 需要读取),报告该绝对路径并停止;不得悄然降级到当前目录。
  • 宿主给出多个根目录时,选择包含任务目标文件或模块的根目录;仍有多个候选则列出绝对路径让用户选择,不得同时扫描或写入多个 .work-progress/
  • 操作前按顶部“路径可见性”告知进度目录;输出摘要时再给出实际使用的进度文件绝对路径,便于下次会话显式指定。

匹配优先级

保存和恢复都按同一优先级定位目标文件:

  1. 文件名优先:用户给出完整文件名时,只操作该文件。
  2. 关键词次优先:用户给出任务关键词时,只在匹配该关键词的进度文件中选择。
  3. 自动选择最后:用户未给文件名或关键词时,按子流程规则自动新建、更新或恢复。

恢复时如果找不到明确目标,直接返回“无可恢复项”或列出候选让用户选择;不要猜测,也不要为了恢复而新建文件。

质量约束

  • 保存时优先服务下次恢复,不写流水账。
  • 恢复时优先复用进度文件中的代码认知资产,不全库重新探索。
  • 下一步 必须是动作级语句,包含要改的文件、要跑的命令或要验证的对象。
  • 如果任务卡住,当前卡点 / 风险 必须写出解除条件;无卡点时写“暂无”。
  • 默认不删除历史文件;只有用户明确要求清理时才删除。
  • 文件内容细则以对应子文档为准,避免在 SKILL.md 里重复维护模板。