pm-selfcheck
Use when: 需要检查super-pm skills健康状态、定期维护审计、验证元数据完整性 Do NOT use when: 正在使用某个功能skill、仅需执行产品管理任务
Use when: 需要了解市场格局与竞争态势、收集行业数据、分析竞品优劣势、评估市场机会 Do NOT use when: 市场已有充分内部调研数据、仅需简单规模估算无需深度分析
$ npx -y skills add konglong87/superPM --skill pm-market --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/pm-marketContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when: 需要了解市场格局与竞争态势、收集行业数据、分析竞品优劣势、评估市场机会 Do NOT use when: 市场已有充分内部调研数据、仅需简单规模估算无需深度分析
name: pm-market description: | Use when: 需要了解市场格局与竞争态势、收集行业数据、分析竞品优劣势、评估市场机会 Do NOT use when: 市场已有充分内部调研数据、仅需简单规模估算无需深度分析 allowed-tools: - Read - Write - AskUserQuestion - Agent - Bash - WebSearch - mcp__exa__web_search_exa - mcp__exa__web_fetch_exa
bash "$(dirname "${BASH_SOURCE[0]}")/../../check-update.sh" 2>/dev/null || true
# 创建需求调研目录
mkdir -p docs/01-需求调研
# 检查是否有需求调研报告
if [ ! -f "docs/01-需求调研/需求调研报告.md" ]; then
echo "⚠️ 未找到需求调研报告"
echo ""
echo "建议先执行 /pm-demand 完成需求调研"
fi---
当流程要求与用户交互时:
1. 如果当前环境支持 AskUserQuestion,使用 AskUserQuestion(最佳体验)。 2. 如果当前环境不支持 AskUserQuestion,必须用普通聊天消息提出同样问题。 3. 一次只问一个问题。 4. 提问后必须停止当前回合,等待用户回答(STOP and WAIT)。 5. 不得在用户回答前生成文档、写入 docs。 6. 已有 docs 文件不能替代本轮用户回答。
---
**如果有需求调研报告**:
使用 Read 工具读取 `docs/01-需求调研/需求调研报告.md`
提取:
**如果没有需求调研报告**:
进入快速模式,使用 AskUserQuestion 收集基础信息。
---
使用 AskUserQuestion 询问:
> 🎯 我要重点分析哪些方面? > > A) 市场规模与增长趋势 > B) 竞品分析 > C) 用户需求与行为 > D) 行业政策与风险 > E) 全部分析(推荐但耗时较长)
用户选择后,记录到变量 `MARKET_FOCUS`
---
**优化说明**:
---
根据用户选择,构建任务清单:
**如果选择"市场规模"**:
[
{
"task_id": "market_size",
"keywords": ["{行业赛道} 市场规模 2025", "{行业赛道} 增长趋势"],
"domains": ["iresearch.cn", "analysys.cn", "iimedia.cn"]
}
]**如果选择"竞品分析"**:
[
{
"task_id": "competitor_analysis",
"keywords": ["{行业赛道} 竞品分析", "{行业赛道} 主要玩家"],
"domains": ["36kr.com", "huxiu.com", "qimai.cn"]
}
]**如果选择"全部"**:
[
{
"task_id": "market_size",
"keywords": ["{行业赛道} 市场规模"],
"domains": ["iresearch.cn", "analysys.cn"]
},
{
"task_id": "competitor_analysis",
"keywords": ["{行业赛道} 竞品"],
"domains": ["36kr.com", "huxiu.com"]
},
{
"task_id": "user_behavior",
"keywords": ["{目标用户} 消费行为"],
"domains": ["questmobile.com.cn"]
}
]---
**单个任务**:
使用 Agent 工具:
Tool: Agent
Parameters:
subagent_type: "general-purpose"
description: "市场调研-{task_id}"
prompt: |
你是一个市场调研专家。请执行以下任务:
**任务 ID**: {task_id}
**产品名称**: {产品名称}
**行业赛道**: {行业赛道}
**搜索关键词**: {keywords}
**目标数据源**: {domains}
**要求**:
1. 搜索工具优先级:首选 AnySearch(Bash 调用 `anysearch_cli.py(先定位:检查 ~/.claude/skills/anysearch/scripts/ ~/.opencode/skills/anysearch/scripts/ ~/.openclaw/skills/anysearch/scripts/ ~/.cursor/skills/anysearch/scripts/ ~/.anysearch/scripts/ 或 which anysearch_cli.py,找到后 python3 <路径>)`search "查询词" --max_results 5 --domain finance --sub_domain finance.cn_stock),失败降级到 Exa MCP(mcp__exa__web_search_exa),最后才用 WebSearch。使用 WebSearch 时标注「⚠️ 降级模式」
2. 搜索每个关键词
3. 优先搜索目标数据源
4. 提取关键数据(市场规模、增长率、主要玩家等)
5. 返回结构化的 JSON 结果
**输出格式**:
```json
{
"task_id": "{task_id}",
"findings": [
{
"title": "数据标题",
"source": "数据来源",
"value": "数据值",
"date": "数据日期"
}
],
"summary": "关键发现总结"
}**多个任务(并行优化)**: 同时派发多个 subagent:
Agent 1: 市场规模调研 Agent 2: 竞品分析 Agent 3: 用户行为分析
**主 agent 等待所有 subagent 完成**,然后收集结果。
---
### 步骤 4: 整合结果并生成报告(主 agent)
**主 agent 接收所有 subagent 的返回结果**:
1. 读取 subagent 返回的 JSON 数据
2. 整合所有发现
3. 生成结构化的市场调研报告
**使用 Write 工具生成报告**:
```markdown
# 市场调研报告
## 一、市场规模与增长趋势
(从 subagent 结果中提取)
## 二、竞品分析
(从 subagent 结果中提取)
## 三、用户需求与行为
(从 subagent 结果中提取)
## 四、关键发现与建议
(主 agent 综合分析)
---
**生成时间**: {时间}
**调研范围**: {MARKET_FOCUS}---
> ✅ 市场调研报告已生成:`docs/01-需求调研/市场调研报告.md` > > 建议执行: > 1. /pm-priority - 基于市场调研确定优先级 > 2. /pm-position - 基于竞品分析确定产品定位 > 3. /pm-mvp - 规划 MVP 方案
---
主 agent 执行流程: 1. 询问用户(10 tokens) 2. 执行搜索1(500 tokens 结果) 3. 执行搜索2(500 tokens 结果) 4. 执行搜索3(500 tokens 结果) 5. 整理结果(200 tokens) 6. 生成报告(100 tokens) 总计:1810 tokens 耗时:串行执行,约 3-5 分钟
主 agent 执行流程: 1. 询问用户(10 tokens) 2. 派发 subagent(20 tokens) └─ Subagent 执行搜索(不占用主 agent 上下文) 3. 接收结果(100 tokens 结构化数据) 4. 整合报告(100 tokens) 总计:230 tokens 耗时:并行执行,约 1-2 分钟 效率提升:87% token 节省,2.5x 速度提升
---
---
✅ **适合**:
❌ **不适合**:
如果 subagent 执行失败: 1. 主 agent 检测到错误 2. 提供降级方案(手动输入或简化搜索) 3. 记录错误信息供用户排查
---
**v2.0.0** - Subagent 架构重构
**v1.0.0** - 初始版本
---
**✅ Good 示例**:
- 有数据引用:「根据 Q4 数据,留存率从 35% 降至 28%」 - 有验证来源:「数据来源:Google Analytics, 2025-12-01」 - 有明确建议:「建议将新手引导步骤从 5 步减少至 3 步」
**❌ Bad 示例**:
- 模糊结论:「数据表明留存率有所下降」 - 无来源:「根据经验,这个功能很重要」 - 没有行动建议:「留存是个问题」
---
出现以下情况立即停止并回溯:
| 误区 | 正确做法 | |------|---------| | 使用"应该"、"大概"、"看起来"做结论 | 必须基于实际数据和验证 | | 未运行检查就声称已完成 | 先验证,再陈述 | | 因时间紧迫跳过关键步骤 | 没有例外,时间紧更要严格 | | "这次应该没问题"的想法 | 每次都要重新验证 |
---
> ⚠️ 任何一项未通过 → 补全后再标记完成。
Repo: konglong87/superPM
Use when: 需要检查super-pm skills健康状态、定期维护审计、验证元数据完整性 Do NOT use when: 正在使用某个功能skill、仅需执行产品管理任务
Use when: 需要创意方案、探索产品方向、发散思维、本质问题分析 用户说"我想做一个XX""帮我规划XX产品""帮我设计一下需求" 用户给出新产品方向,但尚未完成本轮 brainstorm 交互确认 新产品从0到1的第一步 Do NOT use when: 用户明确说"跳过 brainstorm /…
Use when: 有初步需求清单需要细化细节、需明确需求场景和边界条件、需求描述模糊需要结构化 Do NOT use when: 需求已足够详细可直达开发、仅需快速立项无需深入
Use when: 需要持续监控竞品动态、建立竞品情报预警、定期输出竞品监控月报、追踪竞品版本/定价/功能/舆情/融资异动 Do NOT use when: 仅需一次性竞品调研(用 pm-market / pm-search --type=competitor);产品尚无明确竞品
Use when: 已完成 /pm-brainstorm 后,需要系统化收集需求、验证产品想法真伪、分析用户痛点 用户明确要求"需求调研""需求验证""验证痛点""分析用户痛点" 用户明确选择跳过 brainstorm,直接进入需求调研 Do NOT auto-select when:…
Use when: 需要设计用户访谈/用户调研方案、编写访谈提纲、规划样本与招募、制定访谈执行与分析方法 Do NOT use when: 仅做案头需求调研(用 pm-demand);已有明确结论只需验证单一假设且无需访谈