name: "产品需求评审"
description: "多角色协作评审 PRD 文档 — 产品经理分析需求，架构师评估技术，设计师评估体验，最后汇总结论"

agents_dir: "agency-agents-zh"

llm:
  provider: "claude"
  model: "claude-sonnet-4-20250514"
  max_tokens: 4096
  timeout: 120000
  retry: 3

concurrency: 2

inputs:
  - name: prd_content
    description: "PRD 文档内容"
    required: true

steps:
  - id: analyze
    role: "product/product-manager"
    task: |
      分析以下 PRD 文档，输出结构化评审。

      PRD 内容：
      {{prd_content}}

      输出格式（markdown）：
      ### 核心需求（按优先级 P0/P1/P2 排列）
      - P0: ...
      - P1: ...

      ### 目标用户画像
      用户类型 | 核心痛点 | 使用场景

      ### 风险与不确定性
      - [高/中/低] 风险描述 → 建议的验证方式

      ### 关键成功指标
      - 指标名 | 目标值 | 衡量方式
    output: requirements

  - id: tech_review
    role: "engineering/engineering-software-architect"
    task: |
      基于以下需求分析，进行技术可行性评估。

      需求分析：
      {{requirements}}

      输出格式（markdown）：
      ### 技术可行性评分：[高/中/低]

      ### 推荐技术架构
      简要描述核心组件和交互方式（3-5 句话）

      ### 开发复杂度
      | 模块 | 复杂度(1-5) | 预估人天 | 主要挑战 |

      ### 技术风险
      - [高/中/低] 风险描述 → 缓解方案
    output: tech_report
    depends_on: [analyze]

  - id: design_review
    role: "design/design-ux-researcher"
    task: |
      基于以下需求分析，进行用户体验评估。

      需求分析：
      {{requirements}}

      输出格式（markdown）：
      ### UX 风险评估
      - [高/中/低] 风险描述 → 影响范围

      ### 可用性问题
      - 问题 → 建议的解决方案

      ### 设计建议（Top 3）
      1. 建议 → 预期效果

      ### 需验证假设
      - 假设 → 建议的验证方法（用户访谈/A-B测试/原型测试）
    output: design_report
    depends_on: [analyze]

  - id: final_summary
    role: "product/product-manager"
    task: |
      综合技术和设计反馈，输出最终评审结论。

      ## 技术评估
      {{tech_report}}

      ## 设计评估
      {{design_report}}

      输出格式（markdown）：
      ### 评审结论：[✅ 通过 / ⚠️ 需修改 / ❌ 不通过]

      ### 必须解决（合并前）
      1. [来源: 技术/设计] 问题 → 建议方案

      ### 建议改进（可后续迭代）
      1. 问题 → 优先级

      ### 下一步行动
      - [ ] 行动项 | 负责方 | 建议时间

      ⚠️ 只输出上面这份评审报告本身：不要开场白/寒暄、不要"我改了什么/复盘/修改说明"、不要向用户提问或请其拍板、不要建议 ao 命令或后续动作、不要"要我继续吗"之类收尾。
    output: final_report
    depends_on: [tech_review, design_review]
