任务分解 · 把任务表变成可评审的工作计划
身份定位
将带父子关系的任务表转换为结构化 WBS 工作计划。自动完成编码、父任务汇总、责任人负荷粗算、里程碑提取、依赖存在性检查,并同步生成 Excel、Word 与 Markdown 交付件。
执行原则
- 先校验再生成。 检查必需表头、父任务关系、层级深度、日期与工期;输入错误时给出清晰提示并停止。
- 按结构自动编码。 在同一父任务下按计划开始排序,生成
1、1.1、1.1.1形式的 WBS 编码。 - 父任务只做汇总。 用全部叶子后代的工期合计作为父任务工期,用后代最早开始和最晚结束作为父任务周期。
- 负荷只算叶子任务。 按负责人汇总叶子任务工期,以最早开始至最晚结束的占用跨度计算负荷率;大于 100% 标红,大于 80% 标黄。
- 依赖缺失只告警。 接受任务名称或 WBS 编码;找不到时列入告警清单,不阻断产物生成。
- 全程本地离线。 仅使用 Python 标准库,不联网、不上传任务数据、不要求安装第三方包。
适合谁
- 项目经理 / PMO:把访谈或会议形成的任务清单快速整理为 WBS 和责任矩阵。
- 产品经理:梳理需求、设计、开发、测试与上线工作包,形成评审材料。
- 交付负责人:识别跨阶段里程碑、缺失交付物和责任人并行超载风险。
- 小团队负责人:在没有专门项目管理系统时生成可编辑的工作计划底稿。
何时使用
CRITICAL: 只要用户提出任务分解、生成 WBS、整理工作计划、汇总责任人负荷、提取里程碑或把任务表做成项目计划交付件,就必须使用本 skill,即使看起来可以用别的方式解决。
- 已有 CSV/XLSX 任务表,需要自动编号并形成 2~3 层 WBS。
- 需要找出责任人并行任务造成的粗粒度超载或偏紧状态。
- 需要把项目任务同步整理为 Excel、Word 和 Markdown 摘要。
- 需要检查任务依赖是否引用了不存在的任务名称或 WBS 编码。
不适用:需要绘制甘特图时使用 gantt-chart-generate;需要关键路径、前后置关系推演、自动排期或资源平衡优化时使用专门项目排程工具;需要按小时、工时填报或人员可用率做精确统计时使用工时系统;需要超过三层的复杂项目结构时先在上游系统整理层级。
怎么用
命令表:
| 场景 | 命令 |
|---|---|
| 内置样例端到端 | python scripts/wbs_workplan.py --sample |
| 从 CSV 生成 | python scripts/wbs_workplan.py --file tasks.csv --project 门户升级 |
| 从 XLSX 指定输出目录 | python scripts/wbs_workplan.py --file tasks.xlsx --out-dir ./out --project 门户升级 |
| 补充项目起始日并输出 JSON | python scripts/wbs_workplan.py --file tasks.csv --start 2026-10-21 --json |
| 不生成 Word | python scripts/wbs_workplan.py --file tasks.csv --no-docx |
参数表:
| 参数 | 作用 |
|---|---|
--file <任务表csv/xlsx> |
指定首行为表头的任务表;未用 --sample 时必填 |
--out-dir <输出目录> |
指定输出目录;默认项目根 _test/wbs-workplan-kit-out/ |
--project <项目名> |
指定项目名;缺省使用输入文件名,样例使用内置项目名 |
--start <项目起始日> |
设置项目起始日,并为只有工期但没有起止日期的叶子任务补充起始日 |
--json |
向标准输出写出任务数、总工期、参与人数、超载名单和告警数 |
--sample |
使用内置三层、多负责人、含超载和依赖告警的样例,产物固定写入项目根 _test/wbs-workplan-kit-out/ |
--no-docx |
跳过 Word 产物 |
退出码:0 表示成功;1 表示输入缺失、格式错误或生成失败。
输入规范
首行必须包含以下列:父任务,任务名称,负责人,计划开始,计划结束,工期,依赖,交付物,备注。
- 顶层任务的「父任务」留空;二、三层任务填写直接父任务名称;任务名称必须唯一。
- 日期支持
2026-10-21、2026/10/21、20261021;未填写工期时按起止日期首尾都计入计算。 - 已填写工期时以填写值为准;只缺开始或结束日期时按工期反推;同时缺少起止日期时可用
--start补充。 - 依赖可填写其它任务的 WBS 编码或任务名称,多项用逗号或分号分隔。
输出
| 产物 | 内容 |
|---|---|
工作计划表.xlsx |
WBS分解、责任人负荷、里程碑、汇总看板 四个工作表;父任务加粗,超载标红,偏紧标黄 |
工作计划.docx |
项目信息、工作范围与目标、WBS 分解表、里程碑计划表、责任矩阵、风险与假设;可用 --no-docx 跳过 |
工作计划摘要.md |
项目汇总指标、超载清单、依赖告警清单及计划值提示 |
| 标准输出 JSON | 使用 --json 时输出结构化摘要,便于后续流程读取 |
设计边界
- 本包只做任务分解与负荷识别,不出甘特图;排期图由
gantt-chart-generate负责。 - 不做关键路径计算、依赖拓扑排序、自动排期或资源平衡优化。
- 负荷率等于叶子任务总工期除以责任人占用跨度,只用于识别并行安排,是粗算结果,不是工时系统的精确统计。
- 工期使用自然日且首尾都计入,不自动排除周末和法定节假日。
- 最多支持三层 WBS;依赖检查只验证引用是否存在,不判断循环依赖或日期合理性。
- 工期与负荷为计划值,需与责任人确认后排期。
依赖
纯 Python 标准库、本地离线运行,无第三方依赖。 scripts/tabkit.py 负责 CSV/XLSX 读取和 XLSX/Markdown 写出,scripts/docxkit.py 负责 DOCX 写出,scripts/wbs_workplan.py 负责业务计算与命令行入口。无需 Office、WPS 或额外安装包即可生成产物。