Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
20d322be2f | ||
|
|
a24b1d4d70 | ||
|
|
ce844cdf51 | ||
|
|
3bfe1a7cbe | ||
|
|
3abd9b4e52 | ||
|
|
427e10214b |
50
CHANGELOG.md
50
CHANGELOG.md
@@ -1,5 +1,55 @@
|
||||
# 圆心商业化工作流(YxStack)变更记录
|
||||
|
||||
## v0.2.1 (2026-05-03)
|
||||
|
||||
### 新增
|
||||
- **Confusion Protocol**:8 条命令统一引入假设暴露机制——关键事实缺证据时停止推理,转为追问
|
||||
- **假设验证路径**:每个 active 假设必须附带可证伪的验证标准(一句话)
|
||||
- **假设上限**:同时 active 假设 ≤ 5 条,超过必须先标记旧假设为 outdated
|
||||
- **项目边界显式声明**:CWD 即 YxStack 项目根,不搜索父目录
|
||||
- **前置摘要恢复**:pos.md 回溯 pfit 结论,uj.md 回溯 pfit + pos 结论
|
||||
- `_timeline.jsonl` 新增 `conflict` 可选字段
|
||||
- `templates/state_template.md` 增加验证标准列 + 假设状态取值规范
|
||||
|
||||
### 设计参考
|
||||
- 对比 gstack(YC Garry Tan)的设计模式,基于上下文设计显式适配调整版:
|
||||
- gstack 用 Confusion Protocol + 跨模型验证 → YxStack 用 Confusion Protocol + 假设验证路径 + 上限
|
||||
- gstack 用 CWD 隐含边界 + /freeze 目录锁 → YxStack 用 CWD 显式声明
|
||||
- gstack 用 checkpoint.md + timeline.jsonl 双轨 → YxStack 沿用 _state.md + _timeline.jsonl
|
||||
- gstack 的 /context-restore 用 Summary + Remaining → YxStack 新增「前置指令摘要」
|
||||
|
||||
### 路线图同步
|
||||
- v0.2.0 5 项 checklist 标记为已完成
|
||||
- v0.2.1 新立项填补 v0.1.0 遗留缺口
|
||||
|
||||
## v0.2.0 (2026-05-03)
|
||||
|
||||
### 新增
|
||||
- **多轮对话状态保持**:跨会话上下文记忆,产出递进而非重复
|
||||
- `_state.md`(`.yxstack/` 下):项目级状态快照,记录当前阶段、关键假设、决策链
|
||||
- `_timeline.jsonl`(`.yxstack/` 下):append-only 事件日志,作为事实来源,不可变
|
||||
- 每条命令增加「第 0 步:加载项目状态」,执行前读取 `_state.md`
|
||||
- 每条命令增加「更新项目状态」,执行后更新 `_state.md` + 追加 `_timeline.jsonl`
|
||||
- `install.sh` 注入会话状态恢复逻辑:会话开始时自动读取 `_state.md`,给出欢迎摘要
|
||||
- `templates/state_template.md`:模板与阶段流转参考
|
||||
|
||||
### 设计参考
|
||||
- 借鉴 gstack 的 Context Recovery + append-only JSONL 模式
|
||||
- 保留 YxStack 的 YAML frontmatter + Markdown 风格
|
||||
|
||||
### 路线图调整
|
||||
- v0.2.0 改为「多轮对话状态保持」(原「指令深度增强」后移)
|
||||
- v1.0.0 精简为「完整评测体系」(移除使用数据追踪)
|
||||
|
||||
## v0.1.2 (2026-05-03)
|
||||
|
||||
### 新增
|
||||
- **自动升级**:Agent 会话启动时自动检查远端版本,有更新主动提醒
|
||||
- `VERSION` 文件,记录当前版本号,作为升级对比基准
|
||||
|
||||
### 变更
|
||||
- `install.sh` 安装/升级合二为一,跑两次效果相同
|
||||
|
||||
## v0.1.1 (2026-05-03)
|
||||
|
||||
### 新增
|
||||
|
||||
@@ -67,7 +67,14 @@ git clone http://82.157.208.197:3000/qiukai/yxstack-skill.git ~/.codebuddy/yxsta
|
||||
|
||||
装完直接在你的 CodeBuddy Code 里输入 `/pfit`、`/pos` 等指令即可使用。
|
||||
|
||||
**纯离线安装**:先下载 `install.sh`,手动跑 `bash install.sh`。
|
||||
**升级**:安装和升级是同一条命令,再跑一次即可:
|
||||
```bash
|
||||
bash ~/.codebuddy/yxstack/install.sh
|
||||
```
|
||||
|
||||
## 自动升级
|
||||
|
||||
安装后,Agent 每次会话启动时自动检查远端版本号。如果发现新版本,会主动提醒你升级,确认后自动执行。
|
||||
|
||||
## 项目负责人
|
||||
|
||||
|
||||
47
ROADMAP.md
47
ROADMAP.md
@@ -6,6 +6,13 @@
|
||||
- [x] 8 条命令执行模板(Checklist + 输出结构 + 常见误区)
|
||||
- [x] 全局 CODEBUDDY.md 集成机制
|
||||
|
||||
## v0.1.2 — 自动升级(已完成)
|
||||
|
||||
- [x] Agent 会话启动时自动检查远端版本号
|
||||
- [x] 发现新版本主动提醒用户升级
|
||||
- [x] `VERSION` 文件 + git tag 双重版本标记
|
||||
- [x] install.sh 兼做安装和升级
|
||||
|
||||
## v0.1.1 — 一键安装(已完成)
|
||||
|
||||
- [x] `install.sh` 安装脚本,一行命令完成全部配置
|
||||
@@ -28,41 +35,61 @@
|
||||
- [x] 每条指令新增「存档规则」——执行完按规范存档
|
||||
- [x] 报告标注与历史结论的一致性/矛盾/更新
|
||||
|
||||
### 待完成
|
||||
### 待完成(→ 下移到 v0.2.1)
|
||||
- [ ] 知识冲突自动检测——新结论与历史矛盾时主动提醒
|
||||
- [ ] 指令执行时自动识别项目边界,找到对应 yxstack/ 目录
|
||||
- [ ] YxStack 使用统计看板——哪个指令用得多、哪个领域踩坑多
|
||||
|
||||
## v0.2.0 — 指令深度增强
|
||||
## v0.2.0 — 多轮对话状态保持(已完成)
|
||||
|
||||
- [x] 跨会话上下文记忆——今天跑了 `/prd`,三天后跑 `/money` 时能回溯 PRD 的假设
|
||||
- [x] 对话产出递进检测——同项目多轮对话之间,产出应递进而非重复
|
||||
- [x] 项目级全局状态文件——`{项目根目录}/.yxstack/_state.md`,记录当前阶段、关键假设、决策链
|
||||
- [x] 会话开始时自动读取 `_state.md`,结束会话前自动更新
|
||||
- [x] 状态过期/矛盾标注——假设发生变化时,标记旧假设为 outdated 并记录变化原因
|
||||
|
||||
## v0.2.1 — 漏洞修补 ← 当前
|
||||
|
||||
借鉴 gstack(YC CEO Garry Tan 开源的 AI 工程团队工作流)的设计模式,补齐遗留项。
|
||||
|
||||
- [ ] **Confusion Protocol** — 8 条命令统一引入假设暴露机制:关键事实缺证据时停止推理,转为追问
|
||||
- [ ] **假设验证路径** — 每个 active 假设必须附带可证伪的验证标准
|
||||
- [ ] **假设上限** — 同时 active 假设 ≤ 5 条,超过必须先标记旧假设为 outdated
|
||||
- [ ] **项目边界显式声明** — CWD 即 YxStack 项目根,不搜索父目录(对标 gstack CWD + /freeze 模式)
|
||||
- [ ] **前置摘要恢复** — pos.md 回溯 pfit 结论,uj.md 回溯 pfit + pos 结论(对标 gstack /context-restore 的 Summary + Remaining 结构)
|
||||
- [ ] ROADMAP 同步 — v0.2.0 标记完成,v0.1.0 遗留项下移
|
||||
|
||||
## v0.3.0 — 指令深度增强(原 v0.2.0)
|
||||
|
||||
- [ ] 为每条命令增加典型场景案例库
|
||||
- [ ] 细化各阶段追问权重与优先级
|
||||
- [ ] 增加"未完待续"处理策略(信息不足时怎么收口)
|
||||
|
||||
## v0.3.0 — 命令组合模式
|
||||
## v0.4.0 — 命令组合模式(原 v0.3.0)
|
||||
|
||||
- [ ] `/prd + /pfit` = 完整产品评审流程
|
||||
- [ ] `/pos + /comp` = 市场定位全景分析
|
||||
- [ ] `/uj + /metric` = 用户体验指标体系
|
||||
- [ ] 组合命令的输出融合规范
|
||||
|
||||
## v0.4.0 — 场景自动识别
|
||||
## v0.5.0 — 场景自动识别(原 v0.4.0)
|
||||
|
||||
- [ ] 模型无需用户显式使用 `/xxx`,自动识别当前场景
|
||||
- [ ] 自动匹配最相关的 1-2 条指令
|
||||
- [ ] 渐进式引导——先判断在哪个阶段,再切入对应清单
|
||||
|
||||
## v0.5.0 — 扩展生态
|
||||
## v0.6.0 — 扩展生态(原 v0.5.0)
|
||||
|
||||
- [ ] 支持行业定制模板(SaaS、电商、医疗、教育等)
|
||||
- [ ] 集成到 Hookify 体系——通过 prompt 钩子自动匹配场景
|
||||
- [ ] 社区贡献机制——开放命令模板 Pull Request 流程
|
||||
|
||||
## v1.0.0 — 产品级可靠
|
||||
## v1.0.0 — 完整评测体系
|
||||
|
||||
- [ ] 完整评测体系(每个指令的一致性、准确性、覆盖度)
|
||||
- [ ] 使用数据追踪与持续优化
|
||||
- [ ] 多轮对话状态保持与上下文管理
|
||||
- [ ] 一致性评测——同一场景多轮输出是否自洽
|
||||
- [ ] 准确性评测——标准场景下输出是否命中关键点
|
||||
- [ ] 覆盖度评测——每条命令的 Checklist 是否覆盖边界情况
|
||||
- [ ] 评测集构建——10-20 个标准场景 + 期望输出标准
|
||||
- [ ] 发版前自动评测流程
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
从商业模式、价值主张、定价、获客、壁垒五个维度分析竞品,
|
||||
而不是比较功能列表。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(comp)或相关(pos)的历史记录:
|
||||
@@ -12,6 +21,14 @@
|
||||
- 如果已有定位分析 → 作为竞品判断的参照系
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 竞品识别
|
||||
@@ -72,3 +89,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"comp","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
设计从 0 到 1 的冷启动策略和推广方案,核心问题是"第一批用户从哪来"
|
||||
和"怎么让他们留下来并帮你带人"。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(gtm)或相关(pos/comp)的历史记录:
|
||||
@@ -12,6 +21,14 @@
|
||||
- 如果已有历史推广方案 → 标注执行结果/调整点
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 冷启动策略
|
||||
@@ -67,3 +84,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"gtm","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
搭建能真正指导决策的业务指标体系,而不是堆砌指标看板。
|
||||
含复盘框架,确保从数据中找到可行动的点。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(metric)或相关(prd)的历史记录:
|
||||
@@ -12,6 +21,14 @@
|
||||
- 如果已有历史指标体系 → 对比历史数据趋势
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 北极星指标
|
||||
@@ -71,3 +88,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"metric","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -3,7 +3,16 @@
|
||||
## 命令定位
|
||||
设计可持续的商业模式和定价体系,打通付费转化链路。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(money)或相关(prd/comp)的历史记录:
|
||||
@@ -11,6 +20,14 @@
|
||||
- 如果已有历史定价方案 → 标注迭代点/市场变化
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 收入模型
|
||||
@@ -67,3 +84,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"money","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
在投入产品资源之前,验证用户所述「痛点」是否真实存在、
|
||||
是否足够痛、是否值得解决。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(pfit)的历史记录:
|
||||
@@ -12,6 +21,14 @@
|
||||
- 如果历史结论是 No-Go → 追问"现在的条件跟当时有什么变化?"
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 痛点来源验证
|
||||
@@ -66,3 +83,22 @@ status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
**文件名示例**:`pfit-2026-05-03-药企科普合规路径.md`
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"pfit","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -3,7 +3,16 @@
|
||||
## 命令定位
|
||||
明确产品在市场中的独特位置、核心价值主张、以及与竞品的差异点。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(pos)的历史记录:
|
||||
@@ -11,6 +20,20 @@
|
||||
- 如果历史定位已被市场验证失败 → 追问"现在的基础条件有什么变化?"
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### 前置指令摘要
|
||||
读取 `.yxstack/` 中最近 pfit(痛点验证)记录,提取:
|
||||
- 已验证的痛点结论(一句话)
|
||||
- 未解决的待处理项
|
||||
- 本次定位需基于已验证痛点,而非从零重建假设
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 价值主张提炼
|
||||
@@ -61,3 +84,22 @@ status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"pos","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
从业务视角写一份可执行的 PRD,聚焦业务逻辑流、角色分工、
|
||||
数据流转,明确 MVP 的精确边界和功能优先级。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(prd)或相关(pfit/pos)的历史记录:
|
||||
@@ -12,6 +21,14 @@
|
||||
- 如果已有同类 PRD → 标注与历史版的差异/迭代点
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 业务目标
|
||||
@@ -69,3 +86,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"prd","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
@@ -4,7 +4,16 @@
|
||||
还原用户从「第一次听说」到「成为忠实用户」到「可能流失」的完整
|
||||
行为路径,标注每个节点的情绪曲线、决策障碍和流失原因。
|
||||
|
||||
## 第 0 步:回溯历史
|
||||
## 第 0 步:加载项目状态
|
||||
|
||||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||||
- 确认已有的关键假设和决策
|
||||
- 检查是否有与本次指令相关的待处理项
|
||||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||||
|
||||
然后按原有规则检查历史记录:
|
||||
|
||||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(uj)的历史记录:
|
||||
@@ -12,6 +21,20 @@
|
||||
- 如果历史已有流失节点结论 → 追问"当前数据跟当时比有什么变化?"
|
||||
- 如果没有历史记录 → 跳过,正常执行
|
||||
|
||||
### 前置指令摘要
|
||||
读取 `.yxstack/` 中最近 pfit(痛点验证)+ pos(产品定位)记录,提取:
|
||||
- 已验证的痛点结论(来自 pfit)
|
||||
- 已确认的产品定位(来自 pos)
|
||||
- 旅程分析应基于已知痛点和定位,而非重新猜测用户卡点
|
||||
|
||||
### Confusion Protocol(假设暴露)
|
||||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||||
- 对用户业务场景的关键事实在猜测而非确认
|
||||
- 对市场/用户行为的判断缺少定量或定性证据
|
||||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||||
|
||||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||||
|
||||
## 核心追问清单
|
||||
|
||||
### 1. 旅程阶段划分
|
||||
@@ -61,3 +84,22 @@ tags: ["关键词1", "关键词2"]
|
||||
status: draft # draft → validated → outdated
|
||||
---
|
||||
```
|
||||
|
||||
## 更新项目状态
|
||||
|
||||
### 追加事件日志
|
||||
向 `.yxstack/_timeline.jsonl` 追加一行:
|
||||
```json
|
||||
{"skill":"uj","event":"completed","ts":"当前时间","phase":"当前阶段","summary":"本次产出核心结论","assumption":"本次新增假设(有则填,无则留空)","decision":"本次关键决策(有则填,无则留空)"}
|
||||
```
|
||||
|
||||
### 更新状态快照
|
||||
更新 `.yxstack/_state.md`:
|
||||
- 如果本次执行推动了项目阶段前进,更新 `phase` 字段
|
||||
- 本次新增的假设 → 写入「关键假设」表,status: active
|
||||
- 如果本次结论推翻了旧假设 → 将对应旧假设标记为 challenged 或 outdated
|
||||
- 如有重要决策 → 追加「决策链」
|
||||
- 更新「待处理项」:标记已完成的,新增下一步建议
|
||||
- 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md)
|
||||
- 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪)
|
||||
- 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增
|
||||
|
||||
36
install.sh
36
install.sh
@@ -34,6 +34,40 @@ YxSTACK_CONFIG='
|
||||
获取完整执行模板,并按模板中的 Checklist 执行。
|
||||
|
||||
完整定义见 `~/.codebuddy/yxstack/README.md`。
|
||||
|
||||
### 自动升级
|
||||
每次会话开始时(或用户第一次使用 YxStack 指令前),检查版本更新:
|
||||
|
||||
```bash
|
||||
cd ~/.codebuddy/yxstack && \
|
||||
git fetch origin 2>/dev/null; \
|
||||
REMOTE=$(git ls-remote --tags origin 2>/dev/null | awk -F/ \047/v[0-9]/ {print $NF}\047 | sort -V | tail -1); \
|
||||
LOCAL=$(cat VERSION 2>/dev/null); \
|
||||
if [ -n "$REMOTE" ] && [ "$REMOTE" != "$LOCAL" ]; then \
|
||||
echo "YxStack 有新版本:$LOCAL → $REMOTE,建议升级"; \
|
||||
fi
|
||||
```
|
||||
|
||||
如果检测到新版本,提示用户:「YxStack 有新版本 vX.Y.Z,是否升级?」用户确认后执行 \`bash ~/.codebuddy/yxstack/install.sh\`。
|
||||
|
||||
### 会话状态恢复
|
||||
|
||||
每次会话开始时,自动执行以下流程:
|
||||
1. 查找当前项目是否存在 `.yxstack/_state.md`
|
||||
2. 如果存在,读取并给出「上次到这里了:当前在 {phase} 阶段,上次执行了 {last_command}」的 2 句欢迎摘要
|
||||
3. 如果「待处理项」中有明确的下一步指令,主动建议执行
|
||||
4. 如果 `_state.md` 不存在,跳过,正常开始会话
|
||||
|
||||
### 项目边界规则
|
||||
|
||||
YxStack 项目根 = 当前工作目录(CWD)。所有指令的 `.yxstack/` 均指向 CWD 下的路径。
|
||||
无需搜寻父目录或上级项目。不跨项目串读历史记录。
|
||||
|
||||
项目状态文件 `.yxstack/_state.md` 和事件日志 `_timeline.jsonl` 由 YxStack 指令自动维护,
|
||||
参考模板见 `~/.codebuddy/yxstack/templates/state_template.md`。
|
||||
|
||||
开源仓库:http://82.157.208.197:3000/qiukai/yxstack-skill
|
||||
维护方:筑基阁(开阳星)
|
||||
'
|
||||
|
||||
echo ""
|
||||
@@ -74,7 +108,7 @@ else
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo " ★ 安装完成!"
|
||||
echo " ★ 安装完成!版本:$(cat VERSION 2>/dev/null || echo '未知')"
|
||||
echo ""
|
||||
echo " 现在你可以使用以下指令:"
|
||||
echo " /pfit — 验证痛点真伪"
|
||||
|
||||
83
templates/state_template.md
Normal file
83
templates/state_template.md
Normal file
@@ -0,0 +1,83 @@
|
||||
# YxStack 项目状态模板
|
||||
|
||||
## _timeline.jsonl
|
||||
|
||||
追加格式,每行一条指令执行记录:
|
||||
|
||||
```json
|
||||
{"skill":"pfit","event":"completed","ts":"2026-05-03T10:02:22+08:00","phase":"exploration","summary":"XX痛点验证通过,Go","assumption":"用户对XX的需求是刚需","decision":""}
|
||||
```
|
||||
|
||||
字段说明:
|
||||
|
||||
| 字段 | 必需 | 说明 |
|
||||
|------|------|------|
|
||||
| `skill` | 是 | 指令名: pfit/pos/uj/prd/money/gtm/metric/comp |
|
||||
| `event` | 是 | `completed` |
|
||||
| `ts` | 是 | ISO 8601 时间戳,带时区 |
|
||||
| `phase` | 否 | 当前阶段: exploration/validation/positioning/pricing/growth |
|
||||
| `summary` | 否 | 本次产出的核心结论(一句话) |
|
||||
| `assumption` | 否 | 本次新增的关键假设 |
|
||||
| `decision` | 否 | 本次做出的关键决策 |
|
||||
| `conflict` | 否 | 本次发现的冲突(如有),格式:`{冲突假设}:{冲突描述}` |
|
||||
|
||||
特点:
|
||||
- 只追加不修改 — 不会因写入中断损坏历史
|
||||
- 可重建 — _state.md 丢失时从 timeline 重新推导
|
||||
- 零依赖 — `echo '{...}' >> file` 即可
|
||||
|
||||
## _state.md
|
||||
|
||||
从 timeline 推导的当前项目状态快照。首次使用时创建,每次指令执行完更新。
|
||||
|
||||
```yaml
|
||||
---
|
||||
project: "{项目名称}"
|
||||
phase: "{当前阶段}"
|
||||
last_session: "2026-05-03"
|
||||
last_command: "pfit"
|
||||
---
|
||||
|
||||
## 当前阶段
|
||||
{一句话描述当前在 YxStack 流程的哪个位置}
|
||||
|
||||
## 关键假设
|
||||
| 假设 | 状态 | 验证标准 | 来源指令 | 提出时间 |
|
||||
|------|------|----------|----------|----------|
|
||||
| {假设内容} | active/challenged/outdated | {可证伪的一句话} | /xxx | YYYY-MM-DD |
|
||||
|
||||
假设状态取值规范:
|
||||
- `active` — 当前认可,作为后续决策的依据
|
||||
- `challenged` — 发现矛盾或新证据,待重新验证
|
||||
- `outdated` — 已被新结论推翻或环境已变化
|
||||
- 同时 active 假设不超过 5 条,达到上限时先标记旧假设为 outdated 才能新增
|
||||
|
||||
## 决策链
|
||||
1. YYYY-MM-DD /xxx: {决策内容} — {理由}
|
||||
|
||||
## 待处理项
|
||||
- [ ] {事项}
|
||||
```
|
||||
|
||||
### 更新规则
|
||||
|
||||
指令执行完后,更新 _state.md:
|
||||
|
||||
| 字段 | 何时更新 |
|
||||
|------|----------|
|
||||
| `phase` | 本次指令推动了阶段前进时更新 |
|
||||
| `last_session` | 每次更新为当天 |
|
||||
| `last_command` | 每次更新为本次指令 |
|
||||
| `关键假设` | 新增假设(active)、推翻旧假设(challenged/outdated) |
|
||||
| `决策链` | 有重要决策时追加 |
|
||||
| `待处理项` | 标记完成 + 新增下一步 |
|
||||
|
||||
### 阶段流转建议
|
||||
|
||||
```
|
||||
exploration → validation → positioning → pricing → growth
|
||||
(pfit) (uj) (pos) (money) (gtm/metric)
|
||||
↘ (comp)
|
||||
```
|
||||
|
||||
不强制线性,但提供参考。阶段变化是状态更新的核心信号。
|
||||
Reference in New Issue
Block a user