用途
pdca-batch 是一个用户可调用的技能,用于管理多个 PDCA 功能以及批量操作。它把多个功能作为相互独立的并行周期来管理,各功能之间不共享范围与预算。
主要能力
该技能提供三种操作:
- status(默认):显示所有活跃的 PDCA 功能及其当前状态。读取 .bkit/state/pdca-status.json,筛选出活跃功能(除非使用 --all 标志,否则排除已归档/已完成的功能),对每个功能显示阶段、matchRate、iterationCount 和最后更新时间,并显示汇总信息(活跃总数、已完成总数、已归档总数)。当接近最大并行上限(3)时会发出警告。
- plan <f1> <f2> ...:按批次顺序规划多个功能。从参数中解析功能名(以空格分隔),校验每个批次计划最多 5 个功能,检查当前活跃功能数量(最多 3 个并发),超出并行上限的功能进入队列,显示批次计划摘要并通过 AskUserQuestion 请求确认。确认后依次对每个功能:在 pdca-status.json 中初始化功能(状态为 idle)、使用 plan 模板创建 Plan 文档、在功能元数据中记录批次来源 batchId,最后显示批次计划结果。
- manage:用于管理并行功能的交互式仪表盘。读取 pdca-status.json 中所有活跃功能,显示交互式管理面板,展示每个功能可用的操作,并通过 AskUserQuestion 接受用户输入以执行下一步操作。
使用方式
调用示例:
# 查看所有功能
/pdca-batch
# 规划多个功能
/pdca-batch plan user-auth search-api payment-flow
# 交互式管理
/pdca-batch manage
参数说明:
| 参数 | 说明 | 示例 |
|---|---|---|
| (无) | 显示所有活跃功能(等同于 status) | /pdca-batch |
| status | 显示所有活跃功能及其 PDCA 状态 | /pdca-batch status |
| plan <f1> <f2> ... | 按顺序规划多个功能 | /pdca-batch plan auth search api |
| manage | 并行功能的交互式仪表盘 | /pdca-batch manage |
管理操作包括:切换功能(改变后续 /pdca 命令聚焦的功能)、将排队功能优先(移到下一个可用槽位)、暂停功能(临时停止某功能的 PDCA 推进)、取消排队(从队列中移除功能)、新建功能(若有可用槽位则启动新的 PDCA 周期)。
并行功能规则
- 最多 3 个并发功能:防止上下文过载和资源争用。
- 独立状态:每个功能有自己的阶段、matchRate 和迭代计数。
- 共享护栏:自动化级别和信任分数是全局的(非按功能设置)。
- 队列系统:超出上限的功能进入队列,槽位可用时自动激活。
- 隔离:功能之间不共享检查点或审计条目。
状态文件结构
pdca-status.json 中支持批次的功能结构示例:
{
"user-auth": {
"phase": "check",
"matchRate": 85,
"iterationCount": 2,
"batchId": "batch-1710842700000",
"queuePosition": null,
"lastUpdated": "2026-03-19T10:30:00.000Z"
},
"search-api": {
"phase": "design",
"matchRate": 0,
"iterationCount": 0,
"batchId": "batch-1710842700000",
"queuePosition": null,
"lastUpdated": "2026-03-19T08:30:00.000Z"
},
"api-v2": {
"phase": "queued",
"batchId": "batch-1710842700000",
"queuePosition": 1,
"lastUpdated": "2026-03-19T10:30:00.000Z"
}
}
模块依赖
| 模块 | 函数 | 用途 |
|---|---|---|
| lib/pdca/status.js | getPdcaStatus() | 读取所有功能状态 |
| lib/pdca/status.js | updatePdcaStatus() | 更新功能状态 |
| lib/pdca/state-machine.js | createContext() | 初始化新功能 |
| lib/pdca/lifecycle.js | activateQueuedFeature() | 从队列自动激活 |
| lib/audit/audit-logger.js | writeAuditLog() | 记录批次操作 |
与 /pdca 的集成
/pdca-batch 技能与主 /pdca 技能互补:
| 范围 | 使用 /pdca | 使用 /pdca-batch |
|---|---|---|
| 单功能操作 | 是 | 否 |
| 多功能概览 | 否 | 是 |
| 阶段转换 | 是 | 否(重定向到 /pdca) |
| 批量规划 | 否 | 是 |
| 功能切换 | 否 | 是(manage) |
使用 /pdca 命令时,它们作用于当前“聚焦”的功能。使用 /pdca-batch manage 可切换聚焦的功能。
适用场景
适用于需要同时推进多个相互独立的功能开发、并希望统一查看状态、批量规划与交互式管理的场景。
限制
- 每个批次 plan 命令最多 5 个功能。
- 最多 3 个功能同时活跃。
- 超出上限的功能以 phase: queued 排队,槽位可用时自动激活。
- 功能之间不共享检查点或审计条目。
- 自动化级别和信任分数为全局设置,不按功能区分。