Files
zentao-flow/.agents/skills/pmassist/CHANGELOG.md
T

9.8 KiB
Raw Blame History

pmassist Changelog

[v2.1.0] - 2026-02-09

新增功能:会话恢复(Session Resumption)

核心特性

  • ✅ 自动状态回顾:读取 session.yaml、summary.md、questions/* 生成完整的会话状态报告
  • ✅ 5 种工作模式:继续/修改/局部/原型/定稿,精准匹配不同使用场景
  • ✅ 触发词识别:支持"继续之前的工作"、"修改 XXX 的 PRD"等自然语言触发
  • ✅ 版本升级检测:自动识别 v1.x 会话并提示升级到 v2.x

文件变更

1. SKILL.md

  • 新增 ## 1.5) 会话恢复(Resume Session)
  • 位置:第 1 节(确认工作目录)与第 2 节(初始化工作区)之间
  • 内容:
    • 触发条件与验证逻辑
    • 状态回顾报告模板(包含 Round、章节、问题、原型状态)
    • 5 种工作模式(A-E)详细流程
    • 特殊处理:版本升级、损坏会话恢复

5 种工作模式

A. 继续模式(Continue)

  • 接续当前 Round,补充未完成章节
  • 优先解决 P0 遗留问题
  • 继续执行 PDCA 循环直到本轮收敛

B. 修改模式(Revise)

  • 开启新 Round(N+1),基于新需求/反馈修订
  • 重新走一轮完整 PDCA
  • 记录修改诉求到新 round 文件

C. 局部模式(Patch)

  • 只修改特定章节/段落,不开启新 Round
  • 不触发完整 PDCA,快速修改
  • 追加修改记录到 decision_log.md

D. 原型模式(Prototype)

  • 独立于文档迭代,执行 Proto Round 1-3
  • 支持更新/重新生成原型
  • 与 2.6 节原型设计环节联动

E. 定稿模式(Finalize)

  • 最终审核并定稿,不再修改内容
  • 完整性检查(证据覆盖、图表齐全、问题清零)
  • 生成 {doc_type}_final.md 并更新状态

状态报告模板

📊 会话状态报告
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📁 工作目录:{workdir}
📄 文档类型:{PRD/FRD/DAR}
📌 项目简称:{alias}
🔢 当前 Round:{current_round}
📝 已完成内容:章节数、证据数、图表数
❓ 遗留问题:P0/P1/P2 统计
🎨 原型状态:技术路径、产出文件
⏰ 上次更新:时间戳
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

特殊处理

会话版本升级

  • 检测旧版 session.yaml(缺少 prototype 块)
  • 提示用户升级到 v2.0,自动创建 prototypes/ 目录

损坏会话恢复

  • 尝试从 .backup/ 恢复
  • 若无备份,提供重建或创建新会话选项

使用场景

场景 1:继续未完成工作

用户:"继续 dual-billing-20260209-1500 的 PRD"
Claude:
1. 读取 session.yaml → Round 2
2. 生成状态报告 → 已完成 3 章,遗留 5 个 P1 问题
3. 询问:"[A] 继续当前 Round 2"
4. 用户选 A → 解决 P1 问题并补充第 4 章

场景 2:基于新需求修改

用户:"修改 dual-billing 的计费逻辑,增加时长计费"
Claude:
1. 读取会话 → 当前 Round 3
2. 生成状态报告
3. 询问:"[B] 修改模式 - 开启 Round 4"
4. 用户选 B → 记录修改诉求,重新 PDCA

场景 3:快速修正单章节

用户:"把 dual-billing PRD 的第 3 章重写一下"
Claude:
1. 读取会话
2. 生成状态报告
3. 询问:"[C] 局部模式 - 只修改第 3 章"
4. 用户选 C → 重写第 3 章,更新证据,不开新 Round

场景 4:更新原型

用户:"dual-billing 的原型需要增加一个结算页面"
Claude:
1. 读取会话 → prototype.status = "proto_complete"
2. 生成状态报告 → 已有 Pencil 设计稿
3. 询问:"[D] 原型模式 - Proto Round 2(增量)"
4. 用户选 D → 执行 Proto Round 补充结算页面

场景 5:最终定稿

用户:"dual-billing PRD 可以定稿了"
Claude:
1. 读取会话 → Round 5
2. 生成状态报告
3. 询问:"[E] 定稿模式"
4. 用户选 E → 完整性检查 → 生成 prd_final.md

向后兼容

  • ✅ v1.x 会话可自动识别并提示升级
  • ✅ 不影响现有新建会话流程(第 1-2 节)
  • ✅ 所有恢复功能为可选,不破坏原有工作流

文档更新

  • SKILL.md - 新增 1.5 节会话恢复
  • CHANGELOG.md - 记录 v2.1.0 变更

设计原则

  • 手动触发:无需额外脚本,Claude 读取文件并生成报告
  • 明确模式:5 种模式覆盖所有工作场景,避免混淆
  • 状态透明:报告模板清晰展示会话状态
  • 灵活切换:用户可根据需求自由选择工作模式

[v2.0.0] - 2026-02-09

新增功能:原型设计环节

核心特性

  • ✅ 多轮问答式原型需求收集 (Proto Round 1-3)
  • ✅ 4 种输入方式支持: URL 范本、截图范本、文字描述、从零设计
  • ✅ 2 条技术路径:
    • Pencil (.pen) - 静态设计稿、视觉展示
    • Web Artifact (React/HTML) - 交互原型、可点击 PoC
  • ✅ 证据链增强: 原型文件作为新型证据类型 [PROTO:...]

文件变更

1. SKILL.md

  • 新增 ## 2.6) 原型设计环节(可选但推荐)
  • 内容:触发条件、执行流程(Proto Round 1-3)、技术选择、目录结构、证据标注规则
  • 更新 ## 资源 章节,增加原型模板引用

2. scripts/init_session.py

  • 新增参数:--enable-prototype
  • 新增目录创建逻辑:
    • materials/prototypes/(reference / analysis)
    • prototypes/(screenshots / webapp)
  • session.yaml 模板扩展:增加 prototype 配置块

3. references/proto_requirements_template.yaml (新增)

  • Proto Round 1 的问题清单模板
  • 5 个标准问题(PROTO-1-1 到 PROTO-1-5)
  • 优先级:2 个 P0、2 个 P1、1 个 P2

4. references/prototype_coverage_template.md (新增)

  • 原型覆盖度对照表模板
  • 章节 vs 原型文件映射表
  • 原型文件清单
  • 反馈记录与验收标准

5. design/prototype-integration.md (新增)

  • 完整的原型集成方案设计文档
  • 包含:设计目标、触发时机、流程图、风险应对、成功指标

目录结构变化

启用原型前:

{workdir}/
├── materials/
├── rounds/
├── questions/
└── outputs/

启用原型后 (--enable-prototype):

{workdir}/
├── materials/
│   └── prototypes/          # 新增
│       ├── reference/       # 截图/URL 快照
│       └── analysis/        # 竞品分析
├── rounds/
├── questions/
│   ├── proto_requirements.yaml    # 新增
│   └── proto_feedback_N.yaml      # 新增
├── outputs/
└── prototypes/              # 新增
    ├── design.pen           # Pencil 设计稿
    ├── screenshots/         # 原型截图
    ├── webapp/              # Web 原型代码
    ├── design_analysis.md   # 设计决策
    └── prototype_coverage.md # 覆盖度对照

session.yaml 扩展

新增 prototype 配置块:

prototype:
  enabled: true
  status: "proto_pending"  # proto_pending | proto_in_progress | proto_complete
  proto_round: 0
  tech_stack: []
  outputs: []
  unresolved_proto_questions: []

使用示例

基础用法 (不启用原型):

python3 skills/pmassist/scripts/init_session.py \
  --path ./myproject-20260209-1500 \
  --doc prd \
  --alias myproject \
  --title "我的产品需求文档" \
  --desc "需求描述..."

启用原型:

python3 skills/pmassist/scripts/init_session.py \
  --path ./myproject-20260209-1500 \
  --doc prd \
  --alias myproject \
  --title "我的产品需求文档" \
  --desc "需求描述,需要可视化原型" \
  --enable-prototype  # 新增参数

工作流程集成

原型环节融入现有 PDCA 流程:

Round N (文档迭代)
├── Plan
│   ├── 本轮文档目标
│   ├── [新增] 是否需要原型?
│   └── 需要提出的问题
├── Do
│   ├── 读取证据
│   ├── 分析并更新文档
│   └── [新增] 若启用原型 → 执行 Proto Round 1-3
├── Check
│   ├── 证据充足性
│   ├── [新增] 原型覆盖度检查
│   └── 逻辑一致性
└── Act
    ├── 更新 summary.md
    ├── [新增] 更新 prototype 状态
    └── 规划下一轮

Proto Round 子流程:

  1. Round 1: 需求收集(问答 PROTO-1-1 到 PROTO-1-5)
  2. Round 2: 实现原型(选择技术路径 A/B/C)
  3. Round 3: 验证迭代(覆盖度检查/反馈/归档)

技术依赖

MCP 工具:

  • pencil - Pencil 设计稿生成
  • chrome-devtools - URL 范本抓取
  • document-skills:frontend-design - Web Artifact 生成
  • document-skills:webapp-testing - 原型交互测试(可选)

证据类型扩展:

  • [PROTO:prototypes/screenshots/xxx.png] - 原型截图
  • [PROTO:prototypes/webapp/index.html#section] - 交互原型

向后兼容

  • ✅ 未使用 --enable-prototype 时,行为与 v1.x 完全一致
  • ✅ 现有会话目录不受影响
  • ✅ 所有原型功能为可选特性

文档更新

  • SKILL.md - 新增 2.6 章节
  • init_session.py - 新增参数和目录逻辑
  • 新增 proto_requirements_template.yaml
  • 新增 prototype_coverage_template.md
  • 新增 design/prototype-integration.md

测试验证

  • --help 显示 --enable-prototype 参数
  • 创建会话时正确生成原型目录结构
  • session.yaml 包含 prototype 配置块
  • 清理测试环境

下一步计划 (P1)

  • 创建 Pencil 原型生成流程文档
  • 创建 Web Artifact 原型生成流程文档
  • 更新 PRD/FRD 模板增加原型证据示例
  • 在真实项目中测试完整流程

[v1.0.0] - 2026-02-08

初始版本

  • WWH + PDCA 工作流程
  • PRD/FRD/DAR 三类文档支持
  • 证据映射机制
  • 问题清单管理(P0/P1/P2)
  • 初始化脚本 init_session.py