研究 PRD / SPEC / BMAD,我们在追求什么

74 天前
 cexll

研究 PRD / SPEC / BMAD ,我们在追求什么

公众号地址 欢迎关注 https://mp.weixin.qq.com/s/p1hnI3omEEp_OiMvoiegFQ

背景与动机

真实场景大概是这样:今天即兴 vibe 了一下午,撸出一个 MVP ;之后因为上下文长度受限,只能开新 session 接着做。新 session 里,模型对你之前的决策、边界、坑点一无所知,你只能一点点把“做过什么、为什么这么做、这次要改什么”重新喂进去。重复沟通、反复铺垫,效率直线下降。

后来大家发现:把上次的重要内容“总结/压缩”进文档,下次开发时直接 @ 引用,就能把上下文串起来。这个朴素做法,后来被称为“上下文工程”。之后很多方法( SPEC 、PRD 、BMAD 、工作流、角色分工)都是在它之上演进的外衣。

我们关心的目标只有一个:让交付“质量可控”,过程“人工干预极少”,最好能“无人化”。

SPEC 、PRD 、BMAD:外衣不同,本质相同

我看到很多人花大量时间研究角色与工作流,结果是在换着方式做同一件事。思想不变:只用 PRD 也能产出可控的代码。更值得投入的是:如何保证整条交付链路质量可控,从需求到开发到测试到验收到上线的“少人干预,尽量无人化”。

什么是“上下文工程”( Context Engineering )

定义:围绕一次开发/调用时需要的上下文,做获取、筛选、组织、压缩与治理的系统化方法,让输出可控、可复现。

为什么重要:模型能力接近时,谁的上下文更准、更干净、布局更好,谁的效果就稳定(更低幻觉、更高成功率、更低时延与成本)。

关键组成:

和 Prompt 工程的区别:Prompt 工程偏“写好指令与示例”;上下文工程覆盖“检索、布局、压缩、路由、评测与治理”的全链路,是更大的系统工程。

常见范式:

关键指标:任务成功率、可溯源性、幻觉率、引用命中率、延迟、成本、token 利用率、召回/覆盖 @k

落地清单(速用):

  1. 定义任务与评测集合(黄金问答/任务脚本);
  2. 建索引:清洗→分块→向量/关键词混合索引→重排;
  3. 设计模板:明确区块顺序与输出 JSON Schema ;
  4. 压缩策略:检索后做去重与摘要;
  5. 上线观测:日志+回放+A/B ,版本化迭代检索与模板。

示意模板(简化):

# system
你是{角色}。必须遵守:{约束...}

# task
{用户意图/指令}

# tools (schema & results)
{可调用工具定义/最近一次调用结果}

# grounding (top-k)
{检索证据片段+来源}

# examples
{few-shot 边界对齐}

# output
请只输出符合此 JSON Schema 的结果:{schema}

PRD 一条路,也能跑出可控交付

PRD 要“轻但能用”,信息以可执行为准:

两道门槛:

  1. 需求确认 ≥90 分(歧义打光且获批准)才开工;
  2. 规格必须“可执行”(缺路径/签名/示例/迁移/观测的不算规格)。

流水线:确认 → 规格 → 实现 → 评审 → 测试 → 验收。评审只看:需求符合、集成可行、代码不作恶(安全/性能)、测试覆盖足够。未达标,退回。

角色是分工,不是目的

复杂项目、多人协作时再引角色/并行流水线,用“各自的小上下文”减少污染与负担;别为了热闹而热闹。

小例子:邀请码有效期

口径先定:

规格到动作: SQL (迁移与回滚各一份):

ALTER TABLE invitations ADD COLUMN expires_at TIMESTAMP NULL;
-- 回滚:ALTER TABLE invitations DROP COLUMN expires_at;

验证函数:

// 首次使用时写 first_used_at ,过期返回标准错误
function validateInvitation(code: string): ValidationResult

API:

POST /invitations/validate
响应(过期):{ "error": "INVITATION_EXPIRED", "code": 4001 }

观测:

测试优先级:

反模式清单

落地路线

  1. 选一个小需求(如“邀请码有效期”)完整跑完:确认 → 规格 → 实现 → 测试;
  2. 给核心模块补 CLAUDE.md(索引化),确保可 @ 引用到“短事实”;
  3. 把 CI 门槛立起来:覆盖率、静态扫描、关键用例不过线不合并;
  4. 复杂时再引 BMAD 分工与并行流水线,让各段上下文更小、更干净。

结语

研究 PRD 、SPEC 、BMAD ,不是为了流程更精致,而是为了把“上下文”这件事做稳,最后得到“质量可控、人工干预极少、可走向无人化”的交付。先把上下文工程打牢,剩下的是自动化与规模化。

1685 次点击
所在节点    程序员
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1153253

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX