Files
WorkBuddy df56c2c137 初始化提交:contentm_agent 工作区全量快照
内容分四块:
1、产品规划产出 —— MCN 短视频整合营销工作台的①段五份(1a 需求/1b 竞品/1c 画像/1d 策略/1e 场景)、②段两份(2a 功能/2b 布局)、③段界面(DESIGN.md 契约与令牌表 + mcn-workbench.html 原型 + 实测/会诊/审查三份 + 23 张闸门截图)。
2、开源竞品调研 —— 5 个内容工作台项目的取证原始件与 1b 系列分析文档。
3、参考资料 —— 竞品视频抽帧 1145 张 + 2 个源视频 + 功能点截图。
4、机制侧 —— 协作脚本与状态台账、工作区记忆日志、抽帧/OCR 脚本。

.gitignore 只排运行时日志、脚本备份副本与一次性探针输出,其余按原样入库。
2026-10-08 08:13:02 +08:00

13 KiB
Raw Permalink Blame History

需求文档(1a)

项目:proto-board|更新:2026-10-07|性质:拍板 口径依据:stage-discovery/references/grill-me.md(A / B 两节决策树,全场唯一一份 grill)。 改版说明:2026-10-07 按上述方法论重写 —— 决策表补「理由」「影响范围」两列、分支按 A/B 两节重新铺齐、假设与待确认项各自带归宿。与上一版的实质差别见文末。

本表 23 项:已确认 15 项(用户拍板)/模型补全 8 项(7 项【假设】+ 1 项【事实】)。7 项【假设】均未经用户确认,逐条列在 §四待复核清单。

一、起点三句

做什么:一个个人用的 Web 工作台。用户在它里面建项目、在项目里开多个版本,每个版本贴入或上传需求,点一下就生成一份能直接打开的交互页面。

为谁:一个人。操作者就是唯一使用者,没有协作、没有角色、没有团队。

不做什么:进度看板、待办清单、动态流、评审流一律不做。这东西不卖、不融资、不接付费用户,所以也没有账号、订阅、权限这一层。

二、决策表

来源列只有三种取值:用户拍板 / 【假设】 / 【事实】。「影响范围」列写的是这份决策会牵动哪几份下游文档。

A 节 —— 要做什么、为谁、边界在哪

# 问题 决策 来源 理由 影响范围
A1 解决什么问题 需求、版本、产物现在散在三处:需求在文档里、原型在目录里、找回来靠记路径。缺一个把「建项目 → 开版本 → 贴需求 → 看页面」串成一处的入口 用户拍板 原话定位就是「为不同项目生成产品交互页面」的工作台 1d 价值主张、2a 全部功能
A2 成功怎么算 点完生成,页面上能出现一份可打开的 HTML,且能点回上一版对照。不设使用量、留存这类数字指标 【假设】 用户只说了「先把页面生成好」,衡量口径是我补的;本产品无数据源,不许编数字 1d 关键指标、2a 验收要点
A3 谁用、熟练到什么程度 单一个人。他已经在用 WorkBuddy 的产品规划技能,熟悉 research/ prd/ designs/ 这套产出约定 用户拍板 定位原文即「调用产品规划技能」 1c 全份、1d 分节
A4 现在怎么凑合 在对话里跑技能,产出散落到各目录,靠手记或搜索认路径;同一方案改到第三轮时容易认不出哪份是哪份 【假设】 依据 A6 的落盘约定(只存项目名/需求名/版本名)反推,没有访谈佐证 1c 痛点、1d 价值主张
A5 第一版做什么 建项目 → 项目内建多版本 → 每版本输入或上传需求 → 点生成 → 看页面 用户拍板 原话就是这条链路 2a 功能清单、2b 页面清单
A6 明确不做什么 进度看板 / 待办清单 / 动态流 / 评审流;不售卖、不融资、不面向付费用户 用户拍板 原话「本产品不售卖、不融资、不面向付费用户」 2a「不做」对照、1d 取舍
A7 价值落在哪一层 界面为主。用户拿到的是「一份能看的页面」,约定和文件结构只是手段 用户拍板 原话「价值层:界面为主」 1d 价值主张、2b 页型判定
A8 应该有几个界面 3 个:项目列表 / 版本列表 / 版本工作台。每个界面只办一件事,不合并 用户拍板 原话拍了 3 页结构 2b 页面清单与流转
A9 信息承载到哪一层 主屏只留项目名、版本名、版本状态三样;需求全文与产物 HTML 点进去看 用户拍板 原话「只项目名称、需求名称、版本名称,点进能看」 2b 信息承载分档
A10 手上已有什么素材 有的:用户自己的需求文本(.md / .txt)。缺的:产品规划技能的可直接调用接口 —— 原型期用模拟顶上,真接口接进来之前,生成结果不能算真实产出 【假设】 依据 A11「先把页面生成好、其余后续再做」的排期推断 2a 假设台账、1d 关键假设
A11 约束 个人自用。无预算、无排期、无合规底线。唯一的时间约束是「先把页面生成好」,其余都往后放 用户拍板 原话「先把页面生成好、其余后续再做」 2a 优先级口径
A12 依赖什么 依赖 WorkBuddy 工作台与产品规划技能;产物落本地文件系统。不依赖任何后端服务 【假设】 依据 A13 的形态(个人 web 页面、workbuddy 工作台)+ B7 的持久化决策 2a 六项治理、1d 能力
A13 用户现在拿什么替代 三条:在对话里直接跑产品规划技能;用 v0 / 即时 AI 这类文生界面工具;自己手写 HTML 【事实】 来自 1b 竞品观察(两类工具的共性做法) 1d 价值主张、1e 替代方案列

B 节 —— 做成什么样、哪些情况不成立、状态怎么流转

# 问题 决策 来源 理由 影响范围
B1 形态与骨架(粗粒度) 三页。列表页=一行操作 + 一张列表;工作台=左边贴需求、右边看状态与产物。精确板块与排列归②段 用户拍板 原话拍了 3 页与工作台的左右分栏方向 2b 全份
B2 什么情况不成立 三种:需求为空 ⇒ 不给生成;技能调用失败 ⇒ 本次不成立,给出失败原因;还没建过任何项目或版本 ⇒ 先引导新建,不摆空表格 用户拍板 原话「需求为空禁用生成;技能调用失败弹提示可重试」 2a 守卫条件、2b 空态
B3 状态怎么流转 版本有四个状态:draft(草稿)→ running(生成中)→ done(已生成),任一步出错进 failed(失败)。done 可以重新生成,覆盖同一版本,不另起一个 用户拍板 原话「草稿 → 生成中 → 已生成,可重新生成」 2a 状态迁移表
B4 失败了怎么办 给出失败原因,给一键重试。重试停在同一个版本里,不新建版本 用户拍板 原话「弹提示可重试」 2a F9、2b 工作台右栏
B5 输入什么、产出什么、谁维护、存在哪 输入=文本框,可输入也可上传 .md / .txt;产出=单个 HTML,存 designs/<项目>/<版本>.html;维护人=用户自己;存在本地 用户拍板 原话定死了路径与格式 2a F7/F8、2b 工作台
B6 权限怎么算 单人,没有角色系统,也没有越权这回事 用户拍板 原话「单人,无角色系统」 2a 六项治理
B7 同一件事被做两次会怎样 生成中按钮锁死,点不动;重新生成覆盖同一版本文件,不留重复产物 用户拍板 前半依据原话「生成按钮防重复点击」,后半的「不留重复」是我补口径 2a F6/F11、2a 幂等
B8 持久化到什么程度 项目、版本、需求、产物路径全部存浏览器本地,刷新和重开浏览器都不丢;清掉浏览器存储就会丢,这一条要明说 【假设】 原始决策是「浏览器本地存储即可,无需后端账号体系」,我把它展开成可判据 2a 六项治理、1d 风险
B9 生成这一步怎么实现 原型期用「生成过程可视 + 占位产物」模拟技能调用,留一个真接口接入点。真实接入不在本版 【假设】 原始决策是「原型期内以模拟实现」,我写清它的代价 2a F8、1d 关键假设
B10 空的时候显示什么 没有项目、没有版本时,列表区换成新建引导(一句话 + 主操作),不显示空表格 【假设】 原始决策已定调,我补了「不显示空表格」这一半 2a F3、2b 页1/页2 空态

三、假设台账(每条【假设】的归宿)

规矩:每条【假设】只能落在三种归宿里的一种 —— 已确认 / 待实现且已排定确认时机 / 已按假设落地。既没确认、又已经写进实现、还没有落地说明的,不许存在。

# 假设 归宿 说明
A2 成功算「能拿到一份可打开的 HTML」 ② 待实现且已排定确认时机 在 2a 落盘前必须问一次用户:验收是否只认「能打开」,还是要加别的
A4 现在靠手记或搜索认路径 ① 已确认 用户拍板「只项目名称、需求名称、版本名称,点进能看」隐含认路径这件事是问题
A10 技能真接口暂缺、原型期用模拟 ③ 已按假设落地 影响面:生成结果只是占位产物,不能当真实交付。回退口径:接上真接口后只换 F8 的生成实现,其余不动
A12 不依赖后端服务 ③ 已按假设落地 影响面:换设备看不到自己的东西。回退口径:要跨设备时再加账号与云端存储,前端骨架不用改
B8 数据存浏览器本地 ③ 已按假设落地 影响面:清浏览器存储等于清库。回退口径同 A12
B9 生成过程可视 + 占位产物 ③ 已按假设落地 影响面:生成本身不产生真实页面。回退口径:同 A10
B10 空态用新建引导替代空表格 ③ 已按假设落地 影响面:无。回退口径:无需回退,若改成空表格要回②段改

四、待复核清单(一次性过)

下面 7 条是模型补的,用户还没逐条回应。请一次看完,逐条说「可以」或「不对」:

  1. A2 成功口径 —— 只认「能打开一份 HTML」够不够?
  2. A4 现状描述 —— 现在真是「靠手记或搜索认路径」吗?
  3. A10 技能接口 —— 是不是确实还没接、暂且用模拟?
  4. A12 后端 —— 确认不要任何后端?
  5. B8 存储 —— 存浏览器本地可以吗?(换设备会看不到)
  6. B9 生成实现 —— 原型期用模拟生成,接受吗?
  7. B10 空态 —— 空的时候用引导页替代空表格,可以吗?

五、待确认项(三字段齐全才落盘)

条目 复核人 复核时机 结论落点
A2 成功口径 用户 2a 落盘前必须问 1a-需求文档.md A2 行;若改口径,同步 2a-产品功能.md 的验收要点
A4 现状描述 用户 1c 定稿前 1c-用户画像.md 的痛点段
A10 / B9 技能接入 用户 ③段开工前(原型期结束的分界) 1a-需求文档.md A10 行;同步 2a-产品功能.md F8

六、这一版跟上一版的实质差别

上一版是 2026-10-07 01:46 的稿子,四节(做什么 / 为谁 / 明确不做什么 / 两张决策表)+一段假设归宿。这一版逐条比下来,动了这些地方:

  1. 决策表从 4 列改成 6 列,补上「理由」和「影响范围」。上一版只记了「拍板结果」,看不出为什么这么拍、拍了会牵动谁;下游 2a/2b 拿不到依据。
  2. 决策粒度从 13 项拆到 23 项。上一版把「界面结构」「版本状态」「数据契约」各压成一行,实际每一行里塞了两三件事;拆开后每行只回答一个问题,来源列才说得准。
  3. 分支覆盖补了四个 —— 上一版完全没有的:「素材与数据」(A10)、「约束」(A11)、「依赖」(A12)、「替代方案」(A13)。grill-me 的 A 节必问支里这四支一个都没出现。
  4. 「交付形态」这一支从隐含改成显式三问:价值在哪一层(A7)、几个界面(A8)、信息承载到哪层(A9)。上一版只有「价值层=界面为主」一栏,另两问散在 B 节里。
  5. B 节从 4 项(B1 界面结构 / B2 版本状态 / B3 不成立条件 / B4 数据契约)扩到 10 项,补齐 grill-me B 节要求的「失败与恢复」「权限」「并发与幂等」三支,并把「持久化」「生成实现」「空态」单列。
  6. 顶部状态行从「用户拍板 9 项/模型补全 4 项」改成「已确认 15 项/模型补全 8 项(7 项【假设】+ 1 项【事实】)」,并显式写明 7 项未经确认。上一版那句「可推翻」不等于把「未经确认」摆出来。
  7. 假设归宿段从「一句话打包」(B5–B8 已落地)改成逐条三归宿表,补影响面与回退口径。
  8. 新增 §四待复核清单与 §五待确认项三字段表 —— 上一版没有这两节,「假设」与「待定」都没有回收时机。
  9. 边界收紧:按 stage-discovery 硬约束,本份不写功能清单,B1 只给粗粒度骨架,精确板块与排列推给 2b。

七、说人话评分

已过内容准则(humanizer / humanizer-zh),评分 47/50:直接性 10、节奏 9、信任度 10、真实性 9、精炼度 9。

扣分处:决策表的「理由」列为了保持一行一条,写成了短句串,读起来略紧;「影响范围」列在大表里重复出现「2a / 2b」,可以再压。