对照 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 更新
6.1 KiB
6.1 KiB
/comp - 竞品商业维度分析
命令定位
从商业模式、价值主张、定价、获客、壁垒五个维度分析竞品, 而不是比较功能列表。
第 0 步:加载项目状态
执行本指令前,先读取项目根目录下的 .yxstack/_state.md(如果项目 CODEBUDDY.md
自定义了 YxStack 存档路径,则使用自定义路径):
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
- 确认已有的关键假设和决策
- 检查是否有与本次指令相关的待处理项
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
然后按原有规则检查历史记录:
执行本指令前,先检查当前项目根目录下的 .yxstack/ 目录(如果项目 CODEBUDDY.md
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(comp)或相关(pos)的历史记录:
- 如果已有历史竞品分析 → 标注市场变化/竞品动向
- 如果已有定位分析 → 作为竞品判断的参照系
- 如果没有历史记录 → 跳过,正常执行
Confusion Protocol(假设暴露)
在执行本指令时,遇到以下情况停止推理,转为追问用户:
- 对用户业务场景的关键事实在猜测而非确认
- 对市场/用户行为的判断缺少定量或定性证据
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
加载知识库
读取 .yxstack/learn/knowledge.md(如果存在):
- /comp 优先参考:竞品全景、市场数据
- 如果有相关数据,直接引用而非重新追问用户
- 如果知识库信息与本次分析结论矛盾,标记为「待验证」并追问
- 如果 knowledge.md 不存在,跳过
加载近期学习
搜索 .yxstack/_timeline.jsonl 中最近 10 条高置信度(≥7)的学习记录(type=insight/decision/pitfall):
- 若有与本次竞品分析相关的洞察 → 引用而非重新推理
- 若发现与历史洞察矛盾的结论 → 标记为「待验证」
- 若无相关记录 → 跳过
核心追问清单
1. 竞品识别
- 直接竞品是谁?(解决同一问题)
- 间接竞品是谁?(不同方案解决同一问题)
- 隐形竞品是谁?(用户"什么都不用"本身也是竞品)
2. 价值主张对比
- 每个竞品的核心价值主张是什么?
- 他们的目标用户和你重叠吗?
- 用户为什么选他们而不选你?(不一定是功能原因)
3. 商业模式对比
- 竞品怎么赚钱?收入结构如何?
- 他们的定价体系是什么?免费层给多少?
- 他们的 LTV/CAC 比你高还是低?
4. 获客与增长
- 竞品的用户从哪来?(渠道、SEO、投放、BD、社区)
- 他们的增长引擎是什么?(付费投放、病毒传播、内容营销、销售团队)
- 他们在哪个阶段的用户增长是最快的?
5. 竞争壁垒
- 竞品的护城河是什么?(规模效应、网络效应、品牌、技术、数据、关系)
- 你能不能用不同的打法绕开他们的壁垒?
- 竞品最大的弱点是什么?为什么还没人打?
6. 动态预判
- 如果他们进你的市场,会怎么打?
- 如果你进他们的市场,他们怎么防守?
- 这个市场还有没有新玩家进场?门槛多高?
输出结构
- 竞品全景图:直接/间接/隐性竞品分类
- 五维对比表:价值主张 × 商业模式 × 定价 × 获客 × 壁垒
- 优劣势矩阵:每家的最强点和最大弱点
- 动态推演:可能的竞争演变路径
常见误区
- 只比功能不比商业模式——功能可以抄,商业模式抄不走
- 低估「什么都不用」这个竞品——很多用户宁愿忍受也不换
- 静态分析——不看竞品会怎么动
存档规则
执行完毕生成报告后,按以下规范存档:
默认路径:{项目根目录}/.yxstack/comp-{日期}-{一句话摘要}.md
(如果项目 CODEBUDDY.md 自定义了 YxStack 存档路径,优先使用自定义路径)
格式:YAML frontmatter + 报告正文
---
title: "{一句话标题}"
author: "{执行者}"
date: "{YYYY-MM-DD}"
tags: ["关键词1", "关键词2"]
status: draft # draft → validated → outdated
---
更新项目状态
追加事件日志
向 .yxstack/_timeline.jsonl 追加一行:
{"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 才能新增
自动发现(Operational Self-Improvement)
本指令执行完成后,回顾本次产出的核心结论:
- 是否有对后续指令有参考价值的洞察?→ 追加
_timeline.jsonl,type: insight - 是否有可复用的决策模式?→ 追加
_timeline.jsonl,type: decision - 是否发现了需要避免的判断陷阱?→ 追加
_timeline.jsonl,type: pitfall
判断标准:「下次执行同类分析时,这个洞察能省时间吗?」 不记录:显而易见的事实、一次性结论、与已有知识完全重复的内容。
追加格式:
{"skill":"comp","event":"completed","type":"insight|decision|pitfall","key":"kebab-case-键","insight":"一句话洞察","confidence":N,"ts":"当前时间"}