Skip to main content Skills Marktplatz Entdecken und erkunden Sie KI-Skills, die von der Community erstellt wurden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Prompt kopierenPrompt-Details anzeigen Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
npx skills add https://github.com/tutti-os/competitive-product-analysis --skill product-swipefileDer Befehl bleibt in einer Zeile. Scrollen Sie horizontal, um ihn vor dem Kopieren vollständig zu prüfen.
Sie bevorzugen eine lokale Kopie? Laden Sie die Dateien herunter, die SkillsMP derzeit vorliegen.
ZIP herunterladen Herunterladen...
Verwandte Berufe SOC
Basierend auf der SOC-Berufsklassifikation
name product-swipefile description 对一个明确命名的产品或产品集做深度产品调研(网站、App、SaaS、AI 工具、开源项目或创业公司),仅当用户用任意语言明确要求「调研 / 分析某个具名产品」时使用。
产品调研 Skill(入口)
本文件是唯一入口。先读本文件,再按阶段读取 references/ 下对应的补充文件。
目标模型:本 skill 为 Claude 模型设计。可由任何能运行 Claude 的宿主使用——Claude Code 自带 skills、终端直接 claude -p、OpenCode 等通过 Anthropic API 接 Claude 的 CLI——只要后端是 Claude 模型即可。换用其他模型可能因纪律遵循度、上下文窗口或工具支持差异而无法稳定产出 skill 承诺的质量级报告。
质量级执行:若当前环境能运行本地脚本,完整深度调研默认走仓库根 run.py。它把采集和写作拆成两个 headless 进程,中间强制验证与 checkpoint,以分阶段证据驱动方式产出“先证据、后写作”的质量级报告。交互式执行只作为 fallback:可以手动完成同样阶段、同样产物、同样验证,但不得把未完成卡点的交互式草稿当作质量级报告。
脚本解释器:下文命令中的 python3 / ./run.py 为默认写法;若宿主指定了其他 Python 解释器,按宿主提供的解释器替换 python3 执行(未指定则用 python3)。
1. 触发边界
用户用任意语言明确要求「调研 / 分析 <产品>」时使用。
行业或宏观市场问题:只有当能明确出一个产品对象或产品集时,才转为产品调研;否则先问清产品或品类边界。
闲聊式产品问答、文案、写代码、泛泛建议:不使用本 skill。
用户给一次性覆盖(如「这次用英文」「这次存到 Obsidian」):本次生效,不改持久设置。
2. 文件边界
产品调研只允许读取:
本文件 SKILL.md
references/inventory.md
references/writing.md
references/delivery.md
本次 run 的 inventory.md 与 inventory.md 明确引用的 raw/ 文件
不得读取与本任务无关的其他模板或文件。references/ 与 scripts/ 相对本 skill 目录解析。
3. 首跑 Setup(陌生用户 / 持久设置缺失时走这一遍)
已有持久设置就跳过这一节,直接进 Phase 0。 没有持久设置的用户第一次触发时,按下面顺序问完再开跑。问答全部在调研开始前 完成;问完用户选"记住",下次就不再问。
3.1 采集工具 opencli(建议先装)
开跑前先跑 python3 scripts/research_helper.py opencli-check。如果 available: false,给用户这段告知(不阻塞,用户可以选择装或跳过):
检测到没装 opencli。
调研仍然能做,我会用网页搜索兜底。但装上 opencli 信息会全面很多——很多平台的「站内真实数据」只有 opencli 能抓到,网页搜索只能看到摘要。
涉及 opencli 的信息举例:
• X / Twitter:官方账号粉丝数、发帖、互动量
• YouTube / TikTok / Bilibili:创作者视频、播放、评论
• 小红书 / 微博 / 抖音:中文平台的种草内容和热度
• Reddit / Hacker News / Product Hunt:社区讨论、真实用户声音
没有它,以上模块(创作者策略、用户声音、官方渠道、中国市场)会偏薄。
安装(约 1 分钟):
npm i -g @jackwener/opencli
装好回来告诉我,或直接说"跳过"用网页搜索继续。
available: true 时这一步无感跳过,不提示。
3.2 报告语言 检测到你用 <中文/英文> 输入,默认 <中文/英文>。要换吗?
• 中文(默认)
• 英文
3.3 报告存到哪(多选) 存到哪?前三个阅读体验最好,可多选:
• Obsidian — 本地离线、Markdown 原生
• 飞书 / Lark — 团队协作场景
• Notion — 已有 Notion 工作流
都没装也可以选:
• 本地 Markdown 文件 — 最简单,但阅读体验不如上面三个
用户每选一个目标,按 3.4 走该目标的配置子流程。多目标分别问完所有配置后再进 Phase 0 。
3.4 各目标的配置子流程 Obsidian vault 路径是?
(vault 通常在 Obsidian 应用 "Vault 设置 → Files & Links" 能看到,
或直接告诉我 vault 文件夹路径,例如 /Users/你/Documents/MyVault)
检查路径是否存在 + 可写。不存在直接报错让用户重输 ,不自动建目录、不列候选位置猜。vault 内不再问 folder 子目录——报告直接落在 vault 根目录,用户既然指定了这个 vault 就视为可写。
飞书 / Lark — 必须问 connector 是否配过:
飞书 Page Connector 配过吗?
• 配过
• 没配过
(a) 现在给你配置指引(一段说明,按指引装好 connector 再回来)
(b) 本次先跳过飞书,导其他已选目标
(c) 不导飞书了
选 (a) 时给一段简短指引:飞书开放平台 → 建 app → 开启文档读写权限 → 拿 connector 配置 → 粘到 ~/.config/product-swipefile/settings.json 或对应 MCP 配置。完成后用户回来确认 connector_ready。
Notion 需要:
• NOTION_TOKEN 环境变量
• parent page 或 database 的 ID
缺哪个?要配置指引吗?
指引:Notion → Settings → Connections → Develop or manage integrations → 建 internal integration → 复制 token,把 token 设成环境变量 (如 export NOTION_TOKEN=...,可写进 shell 配置);settings.json 只存环境变量名(NOTION_TOKEN),绝不写 token 原文 。再把目标 page 或 database 分享给 integration → 复制 page/database ID,把 parent type、parent id 写入 settings.json。
本地 Markdown 存到哪个目录?
• 默认 ~/Documents/ProductResearch
• 或告诉我别的路径
3.5 记住默认 要不要把这套配置(语言 + 已选目标 + 各目标路径与环境变量名,不含 token 原文)记成默认?
• 是 — 以后说"调研 X"直接跑,不再问
• 否 — 只这次用
选"是"写入 ~/.config/product-swipefile/settings.json。
3.6 改默认 已经记过默认的用户,第二次起一律不再问,触发即跑 。
4. 强制阶段顺序 按下表执行,不跳阶段、不颠倒、不合并。一次深度调研是分阶段产物流水线,不是一次连续写作。
阶段 干什么 读哪个文件 落地产物 Phase 0 建 run 目录 → 读 writing.md → 建章节渲染映射 writing.md run 目录 + 章节映射 Phase 1 公开证据采集 → 写 inventory + raw inventory.md inventory.md + raw/ Phase 1 卡点 Gap Check + Inventory Readiness + validate-inventory → 冻结 inventory 或回采集 inventory.md 校验通过的 inventory + 卡点 Phase 2 基于已冻结 inventory 写正文 writing.md report.md Phase 3 Evidence-Relative 完整性 + validate-report → 修正或回采集 writing.md 校验通过的 report.md Phase 4 导出 / 同步 + 交接通知 delivery.md 各目标产物 + 交接通知
可用本机脚本时,优先用根目录 launcher 完整执行质量级调研:
./run.py "<产品名>" --language zh
run.py 启动一个 claude -p headless 子进程跑 Stage 1 采集,validate-inventory 通过后再启动全新的 headless 子进程跑 Stage 2 写作(工具白名单移除 WebSearch/WebFetch,并在 prompt 中禁止新增 inventory 之外的事实),最后 validate-report。整个流程外部 timeout 默认 90 分钟/阶段,关闭 auto-memory。
需要手动分阶段或恢复时,Phase 0 先建 run 目录,全程使用其返回路径:
python3 scripts/research_helper.py new-run --product "<产品名>"
不复用固定的产品级临时路径;陈旧产物会让新报告看起来「有来源」实则没有。恢复任务或进入下一阶段前,先运行 stage-status --run-dir <run_dir> 取机械化的下一步读数,不靠对上次对话的记忆。
5. 硬约束(贯穿全程)
不跳阶段:Phase 1 未全部完成不进 Phase 1 卡点;卡点未完成不进 Phase 2。
写作期不回头临时查:Phase 2 发现缺字段,回 Phase 1 走采集与 Gap Check 流程并更新 inventory,不在 Phase 2 临时 search/fetch 绕过。
零幻觉、可追溯:正文每个数据、融资额、用户数、人名、时间、引用都能回溯到 inventory 的具体字段;inventory 没有的,标状态,不补全、不编造。
口径不混:网站访问量 ≠ MAU;下载量 ≠ 活跃用户;社媒粉丝 ≠ 用户规模;自报用户 / 注册 / MAU / DAU / 付费 / ARR 分别记录。
不抄表:inventory 是证据总账,正文是解读层。不得把 inventory 表格逐字搬进正文当分析。
不读无关模板:只读第 2 节列出的文件。
6. 脚本 可用本机脚本执行时,确定性操作走脚本,相对本 skill 目录解析。完整深度调研优先用根目录 run.py;以下命令用于恢复、诊断或手动分阶段:
python3 scripts/research_helper.py new-run --product "<产品名>"
python3 scripts/research_helper.py stage-status --run-dir <run_dir>
python3 scripts/research_helper.py validate-inventory --inventory <inventory.md>
python3 scripts/research_helper.py checkpoint --run-dir <run_dir> --stage stage1
python3 scripts/research_helper.py validate-report --report <report.md> --inventory <inventory.md>
python3 scripts/research_helper.py opencli-check
python3 scripts/research_helper.py opencli-run --platform youtube --query "<产品名>" --raw-dir <raw_dir>/opencli
python3 scripts/research_helper.py export --input <report.md> --title "<标题>" --target local_markdown
无本机脚本执行能力时,以下等价物全部强制、不可因无脚本而跳过:
new-run → 在运行时提供的唯一 per-run 目录手动建 inventory.md / report.md / meta.json / raw/,不复用固定产品级路径,并在 meta.json 记录「无脚本」限制。
stage-status → 手动检查上述产物是否存在/非空,据此判定当前阶段,不靠对上次对话的记忆。
validate-inventory / validate-report → 按 inventory.md 的缺口检查与一致性硬规则、writing.md 的最终检查清单逐条人工核对,记录结论。
checkpoint → 在 run 目录手动写 checkpoint_stage1.md / checkpoint_stage2.md,含 run 目录、各产物路径、校验结论、剩余证据限制、下一阶段指令。
opencli-run → 按 references/inventory.md 第 4.2 节手动执行 opencli 并把原始输出存入 raw/opencli,保留确切命令日志。
7. 阶段隔离 Phase 1 卡点后必须先通过 validate-inventory,再创建卡点交接:
python3 scripts/research_helper.py validate-inventory --inventory <inventory.md>
python3 scripts/research_helper.py checkpoint --run-dir <run_dir> --stage stage1
证据丰富或采集量大的 run,卡点后停止,Phase 2 在全新上下文继续:只读已冻结的 inventory.md 与 references/writing.md,仅用定向片段打开 raw,不把采集上下文带进写作。不得以「上下文还安全」为由跳过这条隔离。根目录 run.py 已按此规则拆成 Stage 1 / Stage 2 两个 headless 进程。
交互式 fallback 也必须完成同等隔离:若不能创建 checkpoint、不能运行验证、不能保留 raw 证据,就停在当前阶段并交接缺口,不输出完整报告。不要用聊天里的“看起来差不多”替代验证文件。
8. 输出与交接 正文是文档交付目标(local_markdown / obsidian / notion / feishu / lark)的唯一 canonical Markdown 源。聊天 / IM 只承载最终交接通知(在哪读报告、哪些导出成功或失败、影响判断的来源缺口、本地 canonical 路径),不作为报告导出目标。导出与同步细节读 references/delivery.md。
结束时给一段简洁交接:报告位置、用到的导出目标、本地 canonical 路径、导出失败(若有)、影响解读的来源/工具覆盖缺口。不进入交互模式。