竞品分析
competitors-analysis
by daymade
基于本地克隆仓库做竞品跟踪与分析,逐项核对代码、依赖、版本和 Git 记录并标注文件行号来源,拒绝臆测,适合建立竞品画像、输出对比结论和持续更新竞争情报。
做竞品追踪和对标时,它能直接基于克隆代码给出有证据的分析,比靠猜测的竞调更靠谱。
安装
claude skill add --url github.com/daymade/claude-code-skills/tree/main/competitors-analysis文档
Competitors Analysis
Evidence-based competitor tracking and analysis. All analysis must be based on actual code, never assumptions.
CRITICAL: Evidence-Based Analysis Only
在开始分析之前,必须完成以下检查:
Pre-Analysis Checklist
- 仓库已克隆到本地
~/Workspace/competitors/{product}/ - 可以
ls查看目录结构 - 可以
cat package.json(或等效配置文件) 读取版本信息 - 可以
git log -1确认代码是最新的
如果以上任何一项未完成,停止分析,先完成克隆操作。
Forbidden Patterns (禁止的表述)
| 禁止 | 原因 |
|---|---|
| "推测..."、"可能..."、"应该..." | 没有证据支持 |
| "架构图(推测版)" | 必须基于实际代码 |
| "未公开"、"未披露" | 如果不知道就不要写 |
| 不带来源的技术细节 | 无法验证 |
Required Patterns (必须的表述)
| 正确格式 | 示例 |
|---|---|
| 技术细节 + (来源: 文件:行号) | "使用 better-sqlite3 (来源: package.json:88)" |
| 直接引用 + 来源 | > "description text" (README.md:3) |
| 版本号 + 来源 | "版本 1.3.3 (package.json:2)" |
Analysis Workflow
Step 1: Clone Repository (必须)
# 创建产品竞品目录
mkdir -p ~/Workspace/competitors/{product-name}
# 克隆竞品仓库 (SSH,失败则重试)
cd ~/Workspace/competitors/{product-name}
git clone git@github.com:org/repo.git
网络问题处理: 中国网络环境可能需要多次重试。
Step 2: Gather Facts (收集事实)
按顺序读取以下文件,记录关键信息:
2.1 项目元数据
# Node.js 项目
cat package.json | head -20 # name, version, description
cat package.json | grep -A50 dependencies
# Python 项目
cat pyproject.toml # 或 setup.py, requirements.txt
# Rust 项目
cat Cargo.toml
2.2 项目结构
ls -la # 根目录结构
ls src/ # 源码目录
find . -name "*.md" -maxdepth 2 # 文档文件
2.3 核心模块
# 找到入口文件
cat main.js | head -50 # 或 index.js, app.py, main.rs
# 找到核心 helpers/utils
ls src/helpers/ 2>/dev/null || ls src/utils/ 2>/dev/null
2.4 README 和文档
cat README.md | head -100 # 官方描述
cat CHANGELOG.md | head -50 # 版本历史
Step 3: Deep Dive (深入分析)
针对关键技术点,读取具体实现文件:
# 示例:分析 ASR 实现
cat src/helpers/whisper.js # 读取完整文件
grep -n "class.*Manager" src/helpers/*.js # 找到核心类
记录格式:
| 文件 | 行号 | 发现 |
|------|------|------|
| whisper.js | 33-35 | 使用 WhisperServerManager |
Step 4: Write Profile (撰写分析)
使用 references/profile_template.md 模板,确保每个技术细节都有来源标注。
Step 5: Post-Analysis Verification (分析后验证)
自检清单:
- 所有版本号都有来源标注?
- 所有技术栈都来自 package.json/Cargo.toml?
- 架构描述基于实际代码结构?
- 没有"推测"、"可能"等词汇?
- 对比表中的竞品数据都有来源?
Directory Structure
~/Workspace/competitors/
├── flowzero/ # Flowzero 的竞品
│ ├── openwhispr/ # git clone 的仓库
│ └── ...
└── {product-name}/ # 其他产品
{project}/docs/competitors/
├── README.md # 索引(标注分析状态)
├── profiles/
│ └── {competitor}.md # 基于代码的分析
├── landscape/
├── insights/
└── updates/2026/
Templates and Checklists
| 文档 | 用途 |
|---|---|
| references/profile_template.md | 竞品分析报告模板 |
| references/analysis_checklist.md | 分析前/中/后检查清单 |
关键要求:
- 顶部必须标注数据来源路径和 commit hash
- 每个技术细节必须有 (来源: 文件:行号)
- 引用 README 内容必须标注行号
- 无法验证的标记为"待验证"并说明原因
- 分析完成后运行检查清单中的验证命令
Tech Stack Analysis Guide
Node.js / JavaScript
| 信息 | 来源文件 | 关键字段 |
|---|---|---|
| 版本 | package.json | version |
| 依赖 | package.json | dependencies, devDependencies |
| 入口 | package.json | main, scripts.start |
| 框架 | package.json | electron, react, vite 等 |
Python
| 信息 | 来源文件 | 关键字段 |
|---|---|---|
| 版本 | pyproject.toml | [project].version |
| 依赖 | pyproject.toml / requirements.txt | dependencies |
| 入口 | pyproject.toml | [project.scripts] |
Rust
| 信息 | 来源文件 | 关键字段 |
|---|---|---|
| 版本 | Cargo.toml | [package].version |
| 依赖 | Cargo.toml | [dependencies] |
Common Mistakes to Avoid
1. 跳过克隆直接分析
❌ 错误: 从 GitHub 网页或 WebFetch 获取信息后直接写分析
✅ 正确: 必须 git clone 到本地,用 Read 工具读取文件
2. 混合事实和推测
❌ 错误:
## 技术栈
- Electron (推测基于桌面应用特征)
- 可能使用了 React
✅ 正确:
## 技术栈 (来源: package.json)
| 依赖 | 版本 | 来源 |
|------|------|------|
| electron | 36.9.5 | package.json:68 |
| react | 19.1.0 | package.json:96 |
3. 使用过时信息
❌ 错误: 分析时不检查 git log,使用过时的代码
✅ 正确: 分析前运行 git pull,记录分析时的 commit hash
4. 对比表中竞品数据无来源
❌ 错误:
| 维度 | 竞品 | 我们 |
|------|------|------|
| 支持语言 | 25种 | 58种 |
✅ 正确:
| 维度 | 竞品 | 来源 | 我们 |
|------|------|------|------|
| 支持语言 | 25种 | modelRegistryData.json:9-35 | 58种 (FunASR 官方文档) |
Scripts
See scripts/update-competitors.sh for repository management.
./scripts/update-competitors.sh clone # 克隆所有竞品
./scripts/update-competitors.sh pull # 更新所有竞品
./scripts/update-competitors.sh status # 检查状态
相关 Skills
资深架构师
by alirezarezvani
适合系统设计评审、ADR记录和扩展性规划,分析依赖与耦合,权衡单体或微服务、数据库与技术栈选型,并输出Mermaid、PlantUML、ASCII架构图。
✎ 搞系统设计、技术选型和扩展规划时,用它能更快理清架构决策与依赖关系,还能直接产出 Mermaid/PlantUML 图,方案讨论效率很高。
迁移架构师
by alirezarezvani
为数据库、API 与基础设施迁移制定分阶段零停机方案,提前校验兼容性与风险,生成回滚策略、验证关卡和时间线,适合复杂系统平滑切换。
✎ 做数据库与存储迁移时,用它统一梳理表结构和数据搬迁流程,架构视角更完整,复杂迁移也更稳。
资深数据工程师
by alirezarezvani
聚焦生产级数据工程,覆盖 ETL/ELT、批处理与流式管道、数据建模、Airflow/dbt/Spark 优化和数据质量治理,适合设计数据架构、搭建现代数据栈与排查性能问题。
✎ 复杂数据管道、ETL/ELT 和治理难题交给它,凭 Spark、Airflow、dbt 等现代数据栈经验,能更稳地搭起可扩展的数据基础设施。
相关 MCP 服务
PostgreSQL 数据库
编辑精选by Anthropic
PostgreSQL 是让 Claude 直接查询和管理你的数据库的 MCP 服务器。
✎ 这个服务器解决了开发者需要手动编写 SQL 查询的痛点,特别适合数据分析师或后端开发者快速探索数据库结构。不过,由于是参考实现,生产环境使用前务必评估安全风险,别指望它能处理复杂事务。
SQLite 数据库
编辑精选by Anthropic
SQLite 是让 AI 直接查询本地数据库进行数据分析的 MCP 服务器。
✎ 这个服务器解决了 AI 无法直接访问 SQLite 数据库的问题,适合需要快速分析本地数据集的开发者。不过,作为参考实现,它可能缺乏生产级的安全特性,建议在受控环境中使用。
Firecrawl 智能爬虫
编辑精选by Firecrawl
Firecrawl 是让 AI 直接抓取网页并提取结构化数据的 MCP 服务器。
✎ 它解决了手动写爬虫的麻烦,让 Claude 能直接访问动态网页内容。最适合需要实时数据的研究者或开发者,比如监控竞品价格或抓取新闻。但要注意,它依赖第三方 API,可能涉及隐私和成本问题。