借鉴 gstack 设计模式: - 8 条命令统一引入 Confusion Protocol(关键事实缺证据停止推理) - 假设验证路径 + 假设上限(≤5 条 active) - CWD 显式项目边界声明 - pos/uj 前置指令摘要(对标 gstack /context-restore) - ROADMAP 同步 + state_template 增强 - CHANGELOG v0.2.1
105 lines
4.5 KiB
Markdown
105 lines
4.5 KiB
Markdown
# /pfit - 痛点真伪验证
|
||
|
||
## 命令定位
|
||
在投入产品资源之前,验证用户所述「痛点」是否真实存在、
|
||
是否足够痛、是否值得解决。
|
||
|
||
## 第 0 步:加载项目状态
|
||
|
||
执行本指令前,先读取项目根目录下的 `.yxstack/_state.md`(如果项目 CODEBUDDY.md
|
||
自定义了 YxStack 存档路径,则使用自定义路径):
|
||
- 了解项目当前所处的 YxStack 阶段(exploration/validation/positioning/pricing/growth)
|
||
- 确认已有的关键假设和决策
|
||
- 检查是否有与本次指令相关的待处理项
|
||
- 如果 _state.md 不存在,说明这是项目首次使用 YxStack
|
||
|
||
然后按原有规则检查历史记录:
|
||
|
||
执行本指令前,先检查当前项目根目录下的 `.yxstack/` 目录(如果项目 CODEBUDDY.md
|
||
自定义了 YxStack 存档路径,则使用自定义路径),查找近期同指令(pfit)的历史记录:
|
||
- 如果有同类问题的分析结论 → 标注一致性/矛盾/更新点
|
||
- 如果历史结论是 No-Go → 追问"现在的条件跟当时有什么变化?"
|
||
- 如果没有历史记录 → 跳过,正常执行
|
||
|
||
### Confusion Protocol(假设暴露)
|
||
在执行本指令时,遇到以下情况停止推理,转为追问用户:
|
||
- 对用户业务场景的关键事实在猜测而非确认
|
||
- 对市场/用户行为的判断缺少定量或定性证据
|
||
- 在多个不相容假设之间跳转(信号:假设 > 3 个未验证)
|
||
|
||
激活时机:上述任一条触发时,列出已知/未知,追问缺失信息,不继续产出。
|
||
|
||
## 核心追问清单
|
||
|
||
### 1. 痛点来源验证
|
||
- [ ] 这个痛点是谁说的?(用户、客户、老板、竞品、猜测)
|
||
- [ ] 有多少人说过?频次如何?(定量证据)
|
||
- [ ] 用户因为这个问题损失了什么?(时间、金钱、情绪)
|
||
|
||
### 2. 痛点强度评估
|
||
- [ ] 用户是否已经在尝试自行解决?如何解决的?
|
||
- [ ] 如果这个问题不解决,用户会怎么办?(放弃、忍受、找替代品)
|
||
- [ ] 用户愿意为此付费吗?愿意付多少?
|
||
|
||
### 3. 真伪判断
|
||
- [ ] 这是真痛点还是痒点?(必须有 vs 有了更好)
|
||
- [ ] 这是高频痛点还是低频痛点?
|
||
- [ ] 是否存在「幸存者偏差」?(只听到了主动反馈的用户)
|
||
|
||
### 4. 竞品验证
|
||
- [ ] 竞品是否在解决同样的问题?效果如何?
|
||
- [ ] 用户对竞品方案的满意度如何?
|
||
|
||
### 5. 可行动性验证
|
||
- [ ] 我们是否有能力解决这个问题?(资源、能力、时间)
|
||
- [ ] 解决后的收益有多大?(用户价值 × 市场规模)
|
||
|
||
## 输出结构
|
||
1. **痛点陈述**:一句话描述痛点
|
||
2. **真伪评分**:1-10 分,附理由
|
||
3. **证据清单**:支持/反对的证据
|
||
4. **行动建议**:Go / No-Go / 需要更多验证
|
||
|
||
## 常见误区
|
||
- 把自己的痛点当成用户的痛点
|
||
- 把「不足」当「痛点」(功能不够炫 vs 核心场景受阻)
|
||
- 因一两个用户的强烈反馈而过度反应
|
||
|
||
## 存档规则
|
||
|
||
执行完毕生成报告后,按以下规范存档:
|
||
|
||
**默认路径**:`{项目根目录}/.yxstack/pfit-{日期}-{一句话摘要}.md`
|
||
(如果项目 CODEBUDDY.md 自定义了 YxStack 存档路径,优先使用自定义路径)
|
||
|
||
**格式**:YAML frontmatter + 报告正文
|
||
```yaml
|
||
---
|
||
title: "{一句话标题}"
|
||
author: "{执行者}"
|
||
date: "{YYYY-MM-DD}"
|
||
tags: ["关键词1", "关键词2"]
|
||
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 才能新增
|