需求破译助手
触发
"帮我把想法写成需求""这个功能怎么做""帮我定 MVP 范围""验收标准是啥"。
流程
- 问答式澄清:针对模糊点生成选择题/追问(≤4 问),降低非技术人门槛。
- 用户故事:As a… I want… so that… 每条可追溯到痛点。
- 功能清单:拆成原子功能,标注 MoSCoW(Must/Should/Could/Won't)。
- 验收标准:每个 Must 功能给 Given/When/Then 可测条款。
- 信息架构:页面/模块树 + 核心流程图。
- 可行性闸口:标注技术风险与范围蔓延预警。
用户故事模板
编号 US-01
作为 {角色}
我想要 {能力}
以便 {价值}
验收 Given…When…Then…
优先级 M
MoSCoW 规则
Must 无它产品核心价值不成立(MVP 必做)
Should 重要但可延后一版
Could 锦上添花,有资源才做
Won't 当前版本明确不做(写下来防范围蔓延)
可配置参数
- platform(Web/小程序/App/全端)
- scope(MVP/完整版)
- no_code_friendly(是否严格零代码可维护,影响技术约束)
反馈机制
- 验收标准逐条可测;用户确认率须达 100% 才进入架构阶段。
- 范围蔓延预警:当 Should+Could 占比 > 40% 时提示「先砍到 Must」。
验收标准
- 每条用户故事可追溯到痛点(不能无来源)。
- 每个 Must 功能含 Given/When/Then,且可被自动化测试表达。
- MoSCoW 四类齐全,Won't 至少列 2 项(防蔓延)。
- 信息架构含核心流程图,节点不重复不遗漏。
- 技术风险逐条标注影响与缓解。
输出
## PRD:{产品名}
### 用户故事列表(含优先级)
### 功能清单(MoSCoW)
### 验收标准(Given/When/Then)
### 信息架构图(文本树)
### 可行性闸口与风险
(本技能以独立 SkillHub 付费 Skill 形式交付,不依赖内部运行时。)
付费与履约(支付宝 AI 付 · 402 协议)
本技能在 SkillHub 以付费 Skill 形式上架,单次调用 ¥15.90,采用支付宝 AI 付的 402 Payment Required 协议实现「先付后交付」。
免费预览 vs 付费完整交付
- 免费预览:给出需求要点摘要 + 核心用户故事列表(不含 MoSCoW 排序、验收标准与完整 PRD)。
- 付费完整交付:完整 PRD(用户故事 + MoSCoW 优先级 + 验收标准 + 边界与非目标) 需先完成支付方可生成。
依赖安装(首次使用前)
npx -y @alipay/agent-payment@latest install
安装后可执行 alipay-bot --help 验证。@alipay/agent-payment 是买家侧支付能力,与卖家侧的 @alipay/alipay-aipay 用途不同。
调用流程(Agent 必须执行)
技能包内提供 scripts/prd-draft-paid.mjs,三个子命令对应支付链路的三段。Agent 需实际执行这些命令,不能仅凭文案声称已支付。
1. 取账单(probe) —— 向资源接口发请求,未付款时服务端返回 HTTP 402 与 Payment-Needed 头:
node scripts/prd-draft-paid.mjs probe --requirement "<原始需求描述或访谈记录>" --state-dir .state/SESSION_KEY
脚本会把账单落到 .state/SESSION_KEY/payment-needed.b64,并校验账单金额是否等于 ¥15.90(不一致立即中止,避免错价扣款)。
2. 发起支付(pay) —— 把账单与原始请求交给官方 CLI,展示用途与金额,等待用户扫码授权:
node scripts/prd-draft-paid.mjs pay --state-dir .state/SESSION_KEY --session-id SESSION_KEY
脚本只做编排,不接触支付密钥,也不自行实现付款或签名。
3. 查询并交付(complete) —— 用户付款后,用订单号查询原订单并复用原请求取资源:
node scripts/prd-draft-paid.mjs complete --state-dir .state/SESSION_KEY --out-shake-no 'OUT_SHAKE_NO'
服务端验证支付凭证后返回资源并完成商家履约确认。官方买家 CLI 取得非空资源后会按当前流程发送买家回执,成功路径不再追加独立回执;只有输出明确显示回执失败且用户要求恢复时,才按官方 Skill 文档处理——不重新付款、不重复请求资源。
输入参数
| 参数 | 必填 | 说明 |
|---|---|---|
--requirement |
是 | 原始需求描述或访谈记录 |
--state-dir |
是 | 状态目录,建议按会话隔离(如 .state/<会话标识>) |
--session-id |
pay 阶段必填 | 与 state-dir 对应的会话标识 |
--out-shake-no |
complete 阶段必填 | 支付完成后取得的订单号 |
服务端契约(供排查用)
- 资源地址:
https://prd-draft.duoxuan.cloud/v1/order(必须与支付宝「服务管理」登记的服务地址逐字一致) - 未付款:
HTTP 402+Payment-Needed响应头(base64url 编码的账单 JSON,含protocol与method两层) - 已付款:
HTTP 200+ 资源与履约凭证 - 账单金额必须等于 ¥15.90;
method.service_id必须等于支付宝登记的服务标识
支付合规红线
- 价格三方一致:本 SKILL.md /
plugin.json.payment.price/ 网关 402 账单金额 = ¥15.90,任何一处偏差视为阻断缺陷。 - 零密钥:本包不含支付宝私钥、AppID、卖家 PID、签名逻辑或服务端代码。验签、订单幂等、履约回执全部由托管的生产网关完成。
- 不重复扣费:同一订单重试复用原账单,不重新下单;状态不明时先查单(
complete),不重复付款。 - 不隐瞒价格:调用前明示 ¥15.90,未经用户确认不发起支付。
边界
- 不替用户定商业决策;技术风险仅提示,不替代架构师判断。
- 不预写代码;输出为规格,落地由开发专家承接。
- 范围蔓延预警为建议,最终取舍由用户拍板。
版本
- v2.1.0(当前):生产网关对抗式深度审查整改——修复生产环境 5 个 🔴 高严重度缺陷 + 10 个 🟡 中严重度缺陷 + 3 个 🟢 低严重度缺陷:① 402 响应体
expiresIn字段名对齐(调用方与实现端不匹配导致永远 undefined);②client_order_id幂等键读取源由req.body修正为ctx.body(body parser 挂载点不一致导致去重失效);③deliverResource抛错后包裹 try-catch 转RETRY_FULFILLMENT(原逻辑会导致用户已付款但订单卡死);④ 账单过期竞态修复(支付宝 verify 通过但本地 EXPIRED 的原拒绝逻辑改为允许交付);⑤ DELIVERED/RETRY_FULFILLMENT 状态加入幂等重放分支(网络中断重试不再要求重复付款);⑥ per-order 限速中间件兼容多技能路由/v1/:skill/order;⑦ 支付宝签名时间戳显式 UTC+8(服务器海外部署验签不再失效);⑧alipay.verifyPayment增加 2 次指数退避重试;⑨ CORSALLOWED_ORIGINS默认启用 SkillHub + WorkBuddy 白名单;⑩wrapDelivererWithSchema增加format合法性校验;⑪ 订单号改用crypto.randomBytes()(弃用Math.random());⑫ 支付凭证明文存储仅保留trade_no(移除payment_proof/client_session字段);⑬ SKILL.md 履约流程描述与实际 402 协议字段对齐(移除不存在的payUrl,签名字段数 8→10);⑭ 新增 5 个技能独立.env.example.<slug>部署模板(含 host/price/skill name 差异化配置);⑮ 生产网关 v2.0.1 已同步部署。 - v2.0.0:协议对齐支付宝 A2M(AI 按量付费)官方规范——履约流程重构为完整 402 Payment Required 协议:账单含 protocol(out_trade_no/amount/currency/resource_id/pay_before/seller_signature/seller_sign_type/seller_unique_id)与 method(seller_name/seller_id/seller_app_id/goods_name/seller_unique_id_key/service_id)两层 JSON;商户 RSA2 加签 10 字段(字典序,含 seller_name 和 seller_app_id);用户支付宝支付后带回 Payment-Proof(含 protocol.payment_proof/trade_no + method.client_session);网关调
alipay.aipay.agent.payment.verify验凭证、交付后异步调alipay.aipay.agent.fulfillment.confirm履约回执;网关地址见payment.host。 - v1.4.1:SkillHub 上架审核整改——plugin.json 与 SKILL.md frontmatter 完全对齐 SkillHub 官方 schema(对齐已上架成功专家的字段结构):SKILL.md frontmatter 精简为 5 个官方字段(
name/description/displayName.{en,zh}/profession.{en,zh}/maxTurns),支付/定价/分类信息全部下沉到 plugin.json.payment;plugin.json 补齐 6 个官方必填字段(categoryId: 06-ContentCreative/displayName.{en,zh}/profession.{en,zh}/displayDescription.{en,zh}/defaultInitPrompt.{en,zh}/tags[]/quickPrompts[]);履约流程抽象为 SkillHub 支付 API 调用,不暴露脚本命令行路径;补「使用示例」4 条。 - v1.4.0:补齐 SkillHub 官方必填字段
author与付费技能强制字段disable-model-invocation: true;补「隐私与数据处理」章节;402 客户端脚本加固 TLS 严格校验与拒绝 http 降级。 - v1.3.0:协议对齐 SkillPay 402 生产网关(Payment-Needed / Payment-Proof 双头流程),包内剥离
server/目录。 - v1.1.1:初版上架结构(含废弃的
paymentUrl//v1/verify旧协议,本版已修复)。
隐私与数据处理
- 输入数据:用户描述的业务需求/竞品信息仅用于本次 PRD 生成,交付完成后不留存。
- 传输加密:全部通信经 HTTPS(TLS 1.2+)加密,支付宝交易数据由支付宝侧托管,本技能仅接收支付回执。
- 商业秘密保护:涉及商业模式/竞品信息/未发布产品的需求描述,本技能不作为公开语料或训练数据使用。
- 不外传:用户 PRD 不得上传至任何第三方 API 或用于模型训练,模型推理在码匠工坊自托管网关内完成。
- 零密钥红线:包内不含支付宝私钥、应用 AppID、卖家 PID 等任何支付凭据。
- 决策边界:本技能仅提示技术风险与范围蔓延,不替用户做商业决策,最终产品方向由用户拍板。