From 75152c36c24dffe825811ec8be29c78ddbaa03fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=80=E9=98=B3=E6=98=9F?= Date: Sun, 3 May 2026 05:08:39 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20v0.3.0=20=E2=80=94=20/learn=20=E7=9F=A5?= =?UTF-8?q?=E8=AF=86=E5=BA=93=20+=20=E8=87=AA=E5=8A=A8=E5=8F=91=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 对照 gstack /learn + Operational Self-Improvement 设计: /learn 知识库: - 新增 commands/learn.md 指令模板 - 支持全类型外部材料摄入(PDF/DOCX/XLSX/CSV/HTML/图片等) - 8 模块 knowledge.md(行业背景/市场数据/竞品全景/目标用户/约束/假设/冲突/溯源) - 子命令:ingest、update、show、prune 自动发现: - 8 条命令更新项目状态追加 Operational Self-Improvement 段 - _timeline.jsonl 扩展 type/confidence/key 字段 - 写入标准:省时判断 + 非显而易见 + 置信度标注 8 命令第 0 步增强: - 加载知识库(learn/knowledge.md) - 加载近期学习(_timeline.jsonl 高置信度记录) ROADMAP 版本号重排 + state_template 增强 + install.sh 更新 --- CHANGELOG.md | 26 +++++ ROADMAP.md | 27 ++++- VERSION | 2 +- commands/comp.md | 27 +++++ commands/gtm.md | 27 +++++ commands/learn.md | 205 ++++++++++++++++++++++++++++++++++++ commands/metric.md | 27 +++++ commands/money.md | 27 +++++ commands/pfit.md | 27 +++++ commands/pos.md | 27 +++++ commands/prd.md | 27 +++++ commands/uj.md | 27 +++++ install.sh | 2 + templates/state_template.md | 36 ++++++- 14 files changed, 508 insertions(+), 6 deletions(-) create mode 100644 commands/learn.md diff --git a/CHANGELOG.md b/CHANGELOG.md index d89e465..1204e0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # 圆心商业化工作流(YxStack)变更记录 +## v0.3.0 (2026-05-03) + +### 新增 +- **/learn 指令**(commands/learn.md):摄入外部业务材料,解析并汇总为结构化知识库 + - 支持全类型材料(PDF/DOCX/XLSX/CSV/PPT/HTML/图片OCR/JSON) + - 按 8 模块归类(行业背景/市场数据/竞品全景/目标用户/关键约束/待验证假设/知识冲突/材料溯源) + - 子命令:`/learn <路径>`(摄入)、`update`(增量)、`show`(摘要)、`prune`(修剪) + - 对标 gstack /learn 的 prune 机制(过期检测 + 矛盾检测 + 置信度评估) +- **自动发现**(Operational Self-Improvement):8 条命令执行完毕后自动记录高价值洞察 + - 追加到 `_timeline.jsonl`,type: insight/decision/pitfall + - 判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 + - 对标 gstack 各技能 SKILL.md 中的 Operational Self-Improvement 段 +- **_timeline.jsonl 扩展**:新增 `type`/`confidence`/`key` 三个字段,支持学习记录去重和检索 +- 8 条命令第 0 步增强: + - 「加载知识库」— 读取 learn/knowledge.md + - 「加载近期学习」— 检索 _timeline.jsonl 高置信度记录 +- `templates/state_template.md` 新增 learn/knowledge.md 数据结构说明 + +### 设计参考 +- gstack /learn 的 JSONL append-only + key+type 去重 + confidence 进化模型 +- gstack 的 Operational Self-Improvement + Capture Learnings 双层写入机制 + +### 路线图调整 +- ROADMAP v0.3.0 改为「/learn 知识库 + 自动发现」(原「指令深度增强」后移至 v0.4.0) +- 后续版本顺延:v0.4.0 指令深度增强 → v0.5.0 命令组合模式 → v0.6.0 场景自动识别 → v0.7.0 扩展生态 → v1.0.0 评测体系 + ## v0.2.1 (2026-05-03) ### 新增 diff --git a/ROADMAP.md b/ROADMAP.md index 01026a0..f7c2ebb 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -58,26 +58,45 @@ - [x] **前置摘要恢复** — pos.md 回溯 pfit 结论,uj.md 回溯 pfit + pos 结论(对标 gstack /context-restore 的 Summary + Remaining 结构) - [x] ROADMAP 同步 — v0.2.0 标记完成,v0.1.0 遗留项下移 -## v0.3.0 — 指令深度增强(原 v0.2.0)← 当前 +## v0.3.0 — /learn 知识库 + 自动发现 ← 当前 + +借鉴 gstack 的 /learn + 自动发现机制,建立项目级外部知识摄入和专业洞察自动沉淀能力。 + +### /learn 知识库 +- [ ] `commands/learn.md` — 新指令模板:摄入外部材料(全类型),解析并汇总到 `knowledge.md` +- [ ] `.yxstack/learn/knowledge.md` — 单文件知识库(行业背景/市场数据/竞品/用户/约束/假设/冲突/溯源 8 模块) +- [ ] `/learn update` — 增量检测新材料 +- [ ] `/learn prune` — 修剪过期/矛盾知识(对标 gstack 的冲突检测 + 文件存在性检测) + +### 自动发现 +- [ ] 8 条命令「更新项目状态」统一追加自动发现段(Operational Self-Improvement) +- [ ] `_timeline.jsonl` 扩展 type/confidence/key 三个字段 +- [ ] 自动发现写入标准:省时判断 + 非显而易见 + 置信度标注 + +### 8 命令集成 +- [ ] 第 0 步增加「加载知识库」段落(读取 learn/knowledge.md) +- [ ] 第 0 步增加「加载近期学习」段落(读取 _timeline.jsonl 高置信度记录) + +## v0.4.0 — 指令深度增强 - [ ] 为每条命令增加典型场景案例库 - [ ] 细化各阶段追问权重与优先级 - [ ] 增加"未完待续"处理策略(信息不足时怎么收口) -## v0.4.0 — 命令组合模式(原 v0.3.0) +## v0.5.0 — 命令组合模式 - [ ] `/prd + /pfit` = 完整产品评审流程 - [ ] `/pos + /comp` = 市场定位全景分析 - [ ] `/uj + /metric` = 用户体验指标体系 - [ ] 组合命令的输出融合规范 -## v0.5.0 — 场景自动识别(原 v0.4.0) +## v0.6.0 — 场景自动识别 - [ ] 模型无需用户显式使用 `/xxx`,自动识别当前场景 - [ ] 自动匹配最相关的 1-2 条指令 - [ ] 渐进式引导——先判断在哪个阶段,再切入对应清单 -## v0.6.0 — 扩展生态(原 v0.5.0) +## v0.7.0 — 扩展生态 - [ ] 支持行业定制模板(SaaS、电商、医疗、教育等) - [ ] 集成到 Hookify 体系——通过 prompt 钩子自动匹配场景 diff --git a/VERSION b/VERSION index 22c08f7..268b033 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -v0.2.1 +v0.3.0 diff --git a/commands/comp.md b/commands/comp.md index a2ef734..c26130b 100644 --- a/commands/comp.md +++ b/commands/comp.md @@ -29,6 +29,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /comp 优先参考:竞品全景、市场数据 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次竞品分析相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 竞品识别 @@ -108,3 +121,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"comp","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/gtm.md b/commands/gtm.md index 3a50e79..20c7e46 100644 --- a/commands/gtm.md +++ b/commands/gtm.md @@ -29,6 +29,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /gtm 优先参考:目标用户(画像+决策链)、行业背景 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次推广方案相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 冷启动策略 @@ -103,3 +116,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"gtm","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/learn.md b/commands/learn.md new file mode 100644 index 0000000..868d7a8 --- /dev/null +++ b/commands/learn.md @@ -0,0 +1,205 @@ +# /learn - 知识库学习与检索 + +## 命令定位 +摄入外部业务材料(报告、调研、数据、文档等),解析并汇总为结构化知识库, +供所有 YxStack 指令在执行时自动加载参考。 + +## 子命令 + +| 子命令 | 用途 | +|--------|------| +| `/learn <路径>` | 摄入指定文件/目录,解析并更新知识库 | +| `/learn update` | 增量更新,检测新增或修改的材料 | +| `/learn show` | 查看当前知识库摘要(模块、材料数、最近更新) | +| `/learn prune` | 修剪过期或矛盾的知识条目 | + +--- + +## /learn <路径> — 摄入外部材料 + +### Step 1: 扫描材料 + +扫描目标路径,识别所有可处理文件: + +**支持格式**: +- 文档:`.md`, `.txt`, `.pdf`, `.docx` +- 表格:`.xlsx`, `.csv` +- 演示:`.pptx` +- 网页:`.html`, 直接输入 URL +- 图片:`.png`, `.jpg`(OCR 文字提取) +- 结构化数据:`.json` + +**跳过规则**:`.yxstack/`, `node_modules/`, `.git/`, `.DS_Store` +**目录处理**:递归扫描,按修改时间排序 + +### Step 2: 逐份解析 + +对每个文件,使用 Read 工具读取内容,AI 模型提取结构化信息: + +**信息提取维度**: +| 维度 | 提取内容 | +|------|----------| +| 行业数据 | 市场规模、增长率、政策环境、技术趋势(数字+来源页) | +| 竞品信息 | 名称、定位、核心优势、主要劣势、价格带、目标用户 | +| 用户信息 | 画像描述、痛点清单、采购/使用决策链、付费意愿 | +| 约束条件 | 预算范围、时间节点、合规/监管要求、资源限制 | +| 假设与观点 | 非事实性判断、预测性结论 → 务必标注为"假设",归入待验证 | + +### Step 3: 知识汇总 + +- **按模块归类**:行业背景 / 市场数据 / 竞品全景 / 目标用户 / 关键约束 / 待验证假设 +- **去重合并**:相同信息点合并为一条,标注多来源 +- **冲突处理**:矛盾信息点保留双方观点,归入「知识冲突」区域 +- **溯源标注**:每条关键信息标注来源材料 + 页码/段落 + +### Step 4: 写入知识库 + +将汇总结果写入 `.yxstack/learn/knowledge.md`: + +**新增模式**(knowledge.md 不存在):创建新文件,写入全部模块 +**增量模式**(knowledge.md 已存在):合并新材料信息,更新对应模块,追加材料溯源 + +**knowledge.md 格式**: +```markdown +--- +title: "项目知识库" +project: "{项目名称}" +last_updated: "{YYYY-MM-DD}" +materials_processed: {N} +--- + +# 项目知识库 + +> 最近更新:{YYYY-MM-DD} +> 已处理材料:{N} 份(详见 [材料溯源](#材料溯源)) + +## 行业背景 +- 关键事实1 [来源:材料A] +- 关键事实2 [来源:材料B] + +## 市场数据 +| 指标 | 数值 | 来源 | +|------|------|------| +| 市场规模 | XXX | 材料A (p.12) | + +## 竞品全景 +| 竞品 | 定位 | 核心优势 | 主要劣势 | 价格带 | 来源 | +|------|------|----------|----------|--------|------| + +## 目标用户 +- 核心用户画像:[来源] +- 痛点清单(按严重程度): + 1. 痛点1 [来源] + 2. 痛点2 [来源] +- 付费意愿与能力:[来源] + +## 关键约束 +- 预算约束: +- 时间约束: +- 合规/监管约束: +- 资源约束: + +## 待验证假设 +| 假设 | 验证路径 | 来源 | +|------|----------|------| +| XXX | 如何验证 | 材料C | + +## 知识冲突 +| 主题 | 观点A | 来源A | 观点B | 来源B | +|------|-------|-------|-------|-------| + +## 材料溯源 +| 材料 | 类型 | 处理时间 | 关键信息贡献 | +|------|------|----------|-------------| +``` + +### Step 5: 更新元数据 + +更新 `.yxstack/learn/_learn_meta.json`: +```json +{ + "project": "{项目名称}", + "last_updated": "{ISO时间戳}", + "materials_processed": N, + "materials": [ + { + "name": "材料名称", + "path": "原始路径", + "type": "pdf", + "processed_at": "ISO时间戳", + "sha256": "可选:文件哈希" + } + ] +} +``` + +--- + +## /learn update — 增量更新 + +重新扫描已记录的材料目录,检测: +- 新增文件 → 解析并追加到 knowledge.md +- 修改过的文件 → 标记对应模块为「待更新」,重新解析 +- 删除的文件 → 保留历史知识,标记来源材料已不可用 + +--- + +## /learn show — 查看摘要 + +读取 `.yxstack/learn/knowledge.md`,简洁展示: +- 知识库覆盖的模块列表 +- 已处理材料数量 +- 最近更新时间 +- 待验证假设数量 +- 知识冲突数量 + +--- + +## /learn prune — 修剪知识库 + +对标 gstack 的 `/learn prune` 机制: + +1. **过期检测**:检查每条信息的来源材料是否仍可访问 +2. **矛盾检测**:检查同一主题下是否存在相互矛盾的结论 +3. **置信度评估**:标注每条知识的可靠性(从来源材料质量推断) +4. **用户确认**:对标记条目逐条询问: + - 删除(知识已过时) + - 保留(仍有效) + - 降级(标注为「待验证」) +5. 修剪后更新 knowledge.md + +判断标准:「下次执行分析时,这条知识还有参考价值吗?」 + +--- + +## 存档规则 + +/learn 本身不产生报告文件(不同于其他 YxStack 指令),而是直接维护 `.yxstack/learn/knowledge.md`。 + +执行 `/learn` 后,追加事件日志: +```json +{"skill":"learn","event":"completed","ts":"当前时间","summary":"摄入 N 份材料,知识库已更新","decision":"新增/更新模块列表"} +``` + +--- + +## 与其他指令的关系 + +| 指令 | 如何引用知识库 | +|------|---------------| +| /pfit | 参考目标用户(痛点清单)、待验证假设 | +| /pos | 参考竞品全景、行业背景、市场数据 | +| /uj | 参考目标用户(画像+决策链)、痛点清单 | +| /prd | 参考全部模块 | +| /money | 参考市场数据、竞品全景(价格带)、关键约束(预算) | +| /gtm | 参考目标用户(画像+决策链)、行业背景 | +| /metric | 参考市场数据(行业基准)、关键约束 | +| /comp | 参考竞品全景、市场数据 | + +--- + +## 常见误区 +- 把个人观点当事实写入知识库(应标注为假设) +- 材料之间的信息不核实矛盾直接合并(应标注冲突) +- 知识库只建不维护(应定期 prune) +- 把单个来源的结论当作确定事实(应标注置信度) diff --git a/commands/metric.md b/commands/metric.md index 94b2364..01fac2b 100644 --- a/commands/metric.md +++ b/commands/metric.md @@ -29,6 +29,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /metric 优先参考:市场数据(行业基准)、关键约束 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次指标分析相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 北极星指标 @@ -107,3 +120,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"metric","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/money.md b/commands/money.md index 2ecf9ec..6ef0fa0 100644 --- a/commands/money.md +++ b/commands/money.md @@ -28,6 +28,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /money 优先参考:市场数据、竞品全景(价格带)、关键约束(预算) +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次商业模式分析相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 收入模型 @@ -103,3 +116,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"money","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/pfit.md b/commands/pfit.md index 21e4e7f..ca2e253 100644 --- a/commands/pfit.md +++ b/commands/pfit.md @@ -29,6 +29,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /pfit 优先参考:目标用户(痛点清单)、待验证假设 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次痛点验证相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 痛点来源验证 @@ -102,3 +115,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"pfit","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/pos.md b/commands/pos.md index f3789db..466a0cd 100644 --- a/commands/pos.md +++ b/commands/pos.md @@ -34,6 +34,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /pos 优先参考:竞品全景、行业背景、市场数据 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次定位分析相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 价值主张提炼 @@ -103,3 +116,17 @@ status: draft # draft → validated → outdated - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"pos","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` + diff --git a/commands/prd.md b/commands/prd.md index 4a4bc4b..b136411 100644 --- a/commands/prd.md +++ b/commands/prd.md @@ -29,6 +29,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /prd 优先参考:全部模块 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次 PRD 相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 业务目标 @@ -105,3 +118,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"prd","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/commands/uj.md b/commands/uj.md index 1cdd976..3b6bb8f 100644 --- a/commands/uj.md +++ b/commands/uj.md @@ -35,6 +35,19 @@ 激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。 +### 加载知识库 +读取 `.yxstack/learn/knowledge.md`(如果存在): +- /uj 优先参考:目标用户(画像+决策链)、痛点清单 +- 如果有相关数据,直接引用而非重新追问用户 +- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问 +- 如果 knowledge.md 不存在,跳过 + +### 加载近期学习 +搜索 `.yxstack/_timeline.jsonl` 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall): +- 若有与本次旅程分析相关的洞察 → 引用而非重新推理 +- 若发现与历史洞察矛盾的结论 → 标记为「待验证」 +- 若无相关记录 → 跳过 + ## 核心追问清单 ### 1. 旅程阶段划分 @@ -103,3 +116,17 @@ status: draft # draft → validated → outdated - 如果 _state.md 不存在,按模板创建(参考 templates/state_template.md) - 每个 active 假设必须附带验证标准(一句话:用什么证据可证实/证伪) - 同时 active 假设不超过 5 条,达到上限时必须先标记一条旧假设为 outdated 才能新增 + +### 自动发现(Operational Self-Improvement) +本指令执行完成后,回顾本次产出的核心结论: +- 是否有对后续指令有参考价值的洞察?→ 追加 `_timeline.jsonl`,type: insight +- 是否有可复用的决策模式?→ 追加 `_timeline.jsonl`,type: decision +- 是否发现了需要避免的判断陷阱?→ 追加 `_timeline.jsonl`,type: pitfall + +判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 +不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。 + +追加格式: +```json +{"skill":"uj","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"} +``` diff --git a/install.sh b/install.sh index e0e9e55..be41f02 100755 --- a/install.sh +++ b/install.sh @@ -29,6 +29,7 @@ YxSTACK_CONFIG=' | /gtm | 冷启动与推广方案 | | /metric | 业务指标与复盘 | | /comp | 竞品商业分析 | +| /learn | 知识库学习与检索 | 使用指令时,需读取 `~/.codebuddy/yxstack/commands/{command}.md` 获取完整执行模板,并按模板中的 Checklist 执行。 @@ -119,4 +120,5 @@ echo " /money — 商业模式与定价" echo " /gtm — 冷启动方案" echo " /metric — 业务指标体系" echo " /comp — 竞品商业分析" +echo " /learn — 知识库学习与检索" echo "" diff --git a/templates/state_template.md b/templates/state_template.md index 0e08273..e976697 100644 --- a/templates/state_template.md +++ b/templates/state_template.md @@ -12,7 +12,7 @@ | 字段 | 必需 | 说明 | |------|------|------| -| `skill` | 是 | 指令名: pfit/pos/uj/prd/money/gtm/metric/comp | +| `skill` | 是 | 指令名: pfit/pos/uj/prd/money/gtm/metric/comp/learn | | `event` | 是 | `completed` | | `ts` | 是 | ISO 8601 时间戳,带时区 | | `phase` | 否 | 当前阶段: exploration/validation/positioning/pricing/growth | @@ -20,6 +20,9 @@ | `assumption` | 否 | 本次新增的关键假设 | | `decision` | 否 | 本次做出的关键决策 | | `conflict` | 否 | 本次发现的冲突(如有),格式:`{冲突假设}:{冲突描述}` | +| `type` | 否 | 学习记录类型:`insight` / `decision` / `pattern` / `pitfall`(自动发现时写入) | +| `confidence` | 否 | 置信度 1-10,自动发现时赋予,prune 时可调整 | +| `key` | 否 | kebab-case 短键,用于去重和检索(自动发现时必填) | 特点: - 只追加不修改 — 不会因写入中断损坏历史 @@ -81,3 +84,34 @@ exploration → validation → positioning → pricing → growth ``` 不强制线性,但提供参考。阶段变化是状态更新的核心信号。 + +## learn/knowledge.md — 项目知识库 + +由 `/learn` 指令维护的外部知识摄入产物,存储于 `.yxstack/learn/knowledge.md`。 + +**格式**:YAML frontmatter + Markdown 模块 +```yaml +--- +title: "项目知识库" +project: "{项目名称}" +last_updated: "2026-05-03" +materials_processed: 5 +--- +``` + +**模块结构**: +- 行业背景 — 市场规模、政策环境、技术趋势 +- 市场数据 — 用户规模、增长率、行业基准 +- 竞品全景 — 竞品定位/优势/劣势/价格带 +- 目标用户 — 画像、痛点清单、决策链、付费意愿 +- 关键约束 — 预算、时间、合规、资源 +- 待验证假设 — 非事实性判断,标注验证路径和来源 +- 知识冲突 — 相同主题的矛盾观点,分别溯源 +- 材料溯源 — 已处理材料清单 + 贡献 + +**更新方式**: +- `/learn <路径>` — 手动摄入外部材料 +- `/learn update` — 增量检测新增/修改的材料 +- `/learn prune` — 修剪过期/矛盾的知识条目 + +**自动发现**:8 条命令执行完毕后,自动将高价值洞察写入 `_timeline.jsonl`(type: insight/decision/pitfall)。