بنقرة واحدة
progress-updater
更新项目进度状态,写入 UPM 文档的 UPMv2-STATE 机读区块。 使用场景:"更新项目进度"、"标记任务完成"
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
更新项目进度状态,写入 UPM 文档的 UPMv2-STATE 机读区块。 使用场景:"更新项目进度"、"标记任务完成"
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Aria 项目级配置加载器(内部基础设施)。 查找、解析、验证 .aria/config.json 并合并默认值。 此 Skill 不直接触发,由其他 Skills 引用以读取项目配置。
项目状态扫描与智能工作流推荐,十步循环的统一入口。 收集项目状态、分析变更、推荐最佳工作流、引导用户确认执行。 使用场景:"查看项目当前状态"、"我要提交代码"、"开发新功能"
会话收尾 —— 在任意对话(含未走完十步循环的探索/调试/讨论 session)把"未交接成果" 固化为 handoff。**与十步循环正交平级的会话仪式**(非周期收尾): AI 先内省本对话出 未完成线程 + 待固化经验, 再用机械 autofill 交叉核验补漏, 写 docs/handoff/。leaf — 终结于写交接, 不拖入十步循环。 使用场景: "对话收尾" / "执行对话收尾" / "会话收尾" / "session closeout" / "收尾这次对话" / "写交接" / "写 handoff" / "收工" / "结束本次对话" / context 快满时主动收尾。 不适用 (用 phase-d-closer): "Phase D" / "周期收尾" / "归档 Spec" / "更新 cycle 进度" —— 那是开发周期收尾, 不是会话收尾。
Git 多远程 parity 检测与 push 验证的共享基础设施。 内部工具, 仅供其他 skills 引用。提供标准化 Bash/Python 执行脚本段 + 输出 JSON schema 契约。
任务到 Agent 的智能路由器,根据任务类型、文件路径自动选择最合适的 Agent。 使用场景:subagent-driver 需要为任务选择 Agent、不确定应该使用哪个 Agent
向 Aria 维护团队报告 Bug 或提交功能建议。自动收集环境信息, 自动路由到 Forgejo(内部用户)或 GitHub(外部用户)。 使用场景:"报告 bug"、"report an issue"、"提交功能建议"、 "aria 有个问题想反馈"、"feature request"、"提 issue"、 "反馈问题"、"report bug to aria"
| name | progress-updater |
| description | 更新项目进度状态,写入 UPM 文档的 UPMv2-STATE 机读区块。 使用场景:"更新项目进度"、"标记任务完成" |
| argument-hint | [task-id] |
| disable-model-invocation | false |
| user-invocable | true |
| allowed-tools | Read, Write, Edit, Glob, Grep, Bash |
版本: 2.0.0 | 十步循环: D.1 架构: 双层任务架构支持 (tasks.md + detailed-tasks.yaml)
使用场景:
不使用场景:
state-scanner (A.0)task-planner (A.2)openspec:archive (D.2)| 功能 | 描述 |
|---|---|
| UPM 状态更新 | 更新 UPMv2-STATE YAML 区块所有字段 |
| stateToken 自动计算 | 自动重新计算并更新 stateToken |
| 任务状态同步 | 标记任务完成,更新候选任务 |
| 周期文档写入 | 创建/更新 progress-report.md 等文档 |
| 并发冲突检测 | 通过 stateToken 校验防止覆盖 |
| 双层架构后向同步 | 自动同步 TASK 完成状态到 tasks.md checkbox |
| 三类冲突检测 | 检测 Progress Mismatch、Parent Reference、Task Definition 冲突 |
| 参数 | 必需 | 说明 | 示例 |
|---|---|---|---|
module | ✅ | 目标模块 | mobile, backend |
commit_ref | ⚠️ 推荐 | Git 提交引用 | git:abc1234-任务描述 |
completed_tasks | ❌ | 已完成任务列表 | ["TASK-001", "TASK-002"] |
kpi_updates | ❌ | KPI 更新数据 | {coverage: "89.5%"} |
risks_updates | ❌ | 风险状态更新 | [{id: "R1", status: "resolved"}] |
next_candidates | ❌ | 下一循环候选 | [{id: "TASK-003", rationale: "..."}] |
cycle_doc | ❌ | 是否写入周期文档 | true, false (默认) |
spec_path | ❌ | OpenSpec 变更目录路径 | changes/user-auth |
D.1.1 - 读取当前状态:
- 调用 state-scanner 获取当前状态
- 记录当前 stateToken (用于冲突检测)
D.1.2 - 准备更新数据:
- 生成新的 lastUpdateAt (ISO 8601)
- 构建 lastUpdateRef
- 合并 kpi_updates 到 kpiSnapshot
- 更新 risks 和 nextCycle.candidates
D.1.3 - 计算新 stateToken:
→ 详见 [STATETOKEN_SPEC.md](./STATETOKEN_SPEC.md)
D.1.4 - 写入周期文档 (可选):
- 路径: docs/project-lifecycle/week{N}/
- 创建 progress-report.md / quality-review.md
D.1.5 - 回写 UPM 文档:
- 校验 stateToken 未被修改
- 更新 UPMv2-STATE YAML 区块
D.1.6 - 双层架构后向同步 (可选):
→ 详见 [SYNC_RULES.md](./SYNC_RULES.md)
- 如果提供了 spec_path
- 执行三类冲突检测
- 更新 tasks.md checkbox 状态
| 模块 | UPM 路径 |
|---|---|
mobile | mobile/docs/project-planning/unified-progress-management.md |
backend | backend/project-planning/unified-progress-management.md |
shared | shared/project-planning/unified-progress-management.md |
standards | standards/project-planning/unified-progress-management.md |
完整算法: STATETOKEN_SPEC.md
输入字段: module|stage|cycleNumber|lastUpdateAt|kpiSnapshot
算法: SHA256 → 取前 12 位
格式: "sha256:{12位哈希}"
示例:
输入: mobile|Phase 4 - Development|9|2025-12-16T15:30:00+08:00|{...}
输出: "sha256:a1b2c3d4e5f6"
完整规范: STATETOKEN_SPEC.md
检测时机: 写入 UPM 前校验 stateToken
处理策略:
策略 A - 重读-合并-重试 (推荐): 最多 3 次
策略 B - 报告冲突: 重试失败后请求人工干预
完整规范: SYNC_RULES.md
同步方向: detailed-tasks.yaml → tasks.md
触发条件: 提供 spec_path 参数时
执行流程:
1. 读取 completed 状态的任务
2. 获取 parent 字段 (如 "1.1")
3. 更新 tasks.md 对应 checkbox: [ ] → [x]
| 类型 | 说明 | 处理 |
|---|---|---|
| Type 1 | 进度不匹配 | 自动修复,警告 |
| Type 2 | Parent 引用失效 | 中止同步,报错 |
| Type 3 | 任务定义冲突 (相似度<80%) | 继续同步,警告 |
═══════════════════════════════════════════════════════════════
PROGRESS UPDATE SUCCESSFUL
═══════════════════════════════════════════════════════════════
Module: mobile
Updated At: 2025-12-16T15:30:00+08:00
┌─────────────────────────────────────────────────────────────┐
│ State Changes │
├─────────────────────────────────────────────────────────────┤
│ stateToken: sha256:abc123 → sha256:def456 │
│ coverage: 87.2% → 89.5% │
└─────────────────────────────────────────────────────────────┘
✅ Tasks Completed: 2
📋 Next Cycle Candidates Updated
📄 Cycle Documents: progress-report.md (created)
用户请求: "更新 mobile 模块进度"
输入:
module: mobile
commit_ref: "git:abc1234-完成图表组件"
输出:
新 stateToken: sha256:def456
用户请求: "更新进度,测试覆盖率提升到 89.5%"
输入:
module: mobile
kpi_updates:
coverage: "89.5%"
build: "green"
用户请求: "标记任务完成并同步 tasks.md"
输入:
module: mobile
completed_tasks: ["TASK-001", "TASK-002"]
spec_path: "changes/user-auth"
流程:
1. 更新 UPM 文档
2. 执行三类冲突检测
3. 更新 tasks.md checkbox
| 错误 | 原因 | 解决方案 |
|---|---|---|
| UPM 文档未找到 | 路径不存在 | 检查模块是否已初始化 |
| stateToken 冲突 | 并发写入 | 重试或等待 |
| Parent 引用失效 | tasks.md 编号不存在 | 修复 detailed-tasks.yaml |
| YAML 格式错误 | 格式损坏 | 检查并修复语法 |
A.0: state-scanner ──▶ 读取当前状态
│
A.1-C.2: 开发流程
│
D.1: progress-updater (本 Skill)
│
├─▶ 更新 UPM 文档
├─▶ 后向同步 tasks.md (可选)
│
D.2: openspec:archive
最后更新: 2025-12-23 Skill版本: 2.0.0 架构: 双层任务架构 (v2.0.0)