运行时依赖
版本
Step 4:四维对比表
安装命令
点击复制技能文档
GitHub 项目调研与对比 技能 何时激活
当用户提出以下类型需求时,激活本 技能:
"搜一下 GitHub 上 XX 相关的项目" "对比一下这几个项目"(提供具体仓库名) "哪个项目最受欢迎?" "帮我选一个 XX 工具" "这个项目怎么样?" "评估一下 XX 项目" "查一下 XX 项目的活跃度" "哪些项目在维护?" 核心方法论:六维评估法
每个项目从以下六个维度评估,最终输出对比表和推荐:
维度 权重 说明 ⭐ Stars 20% 社区认可度,越大越成熟 🕐 最近更新 25% 最后一次 commit 时间,越近越活跃 🐛 Issues 15% open issues 数量(太多说明不稳定) 📖 功能完整性 25% README 中功能列表的覆盖度 🔮 未来规划 15% 有无 roadmap、change记录、release 说明 🏗️ 技术栈 加分项 技术栈是否现代、文档是否完整 执行流程 Step 1:初步搜索 # 基础搜索,按 stars 排序 curl -s "https://API.github.com/搜索/repositories?q=关键词&排序=stars&order=desc&per_page=15"
# 如果有多个相关关键词,用 + 连接 curl -s "https://API.github.com/搜索/repositories?q=OpenClaw+ui&排序=stars&order=desc"
# 也可用 GitHub 命令行工具 gh 搜索 repos "OpenClaw 仪表盘" --排序=stars --limit 15
输出字段:full_name, description, stargazers_count, language, open_issues_count, pushed_at, 更新d_at
Step 2:基本信息采集
对候选项目逐个执行:
# 单项目基础信息 curl -s "https://API.github.com/repos/owner/repo"
# 最后一次 commit(判断活跃度) curl -s "https://API.github.com/repos/owner/repo/commits?per_page=1"
# 最近 3 个 release curl -s "https://API.github.com/repos/owner/repo/releases?per_page=3"
# 最近 5 个 open issues(用于判断维护状态) curl -s "https://API.github.com/repos/owner/repo/issues?状态=open&排序=创建d&per_page=5"
Step 3:README 深度解析 # 获取 README 内容 curl -s "https://API.github.com/repos/owner/repo/readme" | python3 -c " 导入 sys,json,base64 d=json.load(sys.stdin) print(base64.b64decode(d['content']).decode('utf-8')) "
解析要点:
核心特性列表(Features) 快速开始指南(Quick 启动) 技术栈说明 部署方式(Docker / 源码 / npm) 有无 Roadmap 或 CHANGE记录 Step 4:四维对比表
构建对比表:
| 维度 | 项目A | 项目B | 项目C |
|---|---|---|---|
| Stars | 100+ | 1000+ | 500+ |
| 最后更新 | 近30天内 | 近7天内 | 近30天内 |
| 语言 | TypeScript/Node | TypeScript/Node | TypeScript/Node |
| Issues | <50 | <200 | <100 |
| 部署方式 | Docker/npm | 应用/Docker | Docker |
| 核心功能 | 监控/安全 | 全功能工作台 | 沙箱/协作 |
📌 上表为通用模板骨架,实际对比时替换为真实数据。
Step 5:需求匹配
根据用户明确表达的需求和隐含需求,做功能匹配:
用户需求 → 必须有 → 最好有 → 加分项
示例: 用户说要"管理 代理","不用命令行","易扩展"
必须有:代理 CRUD、UI 管理界面 最好有:Cron 管理、技能s 管理 加分项:多渠道支持、远程桌面 Step 6:结构化输出
最终输出包含:
一句话定位 — 每个项目是做什么的 四维对比表 — 基础数据并列 详细分析 — 每个项目的优缺点 推荐结论 — 针对用户需求的最优选择 备选方案 — 其他值得考虑的选择 常见场景的快速判断 场景:选一个 XX 工具
优先级顺序:
Stars 数 > 1000 → 成熟度高 最后 commit < 1个月 → 还在维护 Issues < 100 → 相对稳定
快速筛选公式:
# 查看 stars > 100 且 最后更新 < 30天 的项目 curl -s "https://API.github.com/搜索/repositories?q=关键词+stars:>100&排序=更新d&order=desc" | \ python3 -c "导入 sys,json; d=json.load(sys.stdin); [print(f\"{r['full_name']} | {r['stargazers_count']}⭐ | {r['pushed_at'][:10]}\") for r in d['items'][:10]]"
场景:对比 A 和 B 两个项目
直接抓两个项目的关键数据并列对比,重点看:
功能差异 最后更新时间 Issues 处理速度(看 open vs closed 比例) 文档完整性 场景:评估某个项目能不能用
必查项:
最后 commit 时间(> 3个月 → 谨慎) Open issues 数(> 500 → 可能有遗留 bug) 有无 CI/CD(.github/工作流s) README 是否详细 有无 CHANGE记录 或版本发布记录 输出模板 # 📊 GitHub 项目调研报告
调研背景
用户需求:{用户说的话}候选项目概览
| 项目 | ⭐ Stars | 🕐 最近更新 | 🐛 Issues | 语言 |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
深度对比
1. [项目名]
定位: 一句话描述 优点: 缺点: 适合场景:2. [项目名]
...推荐结论
🥇 最佳选择:项目名 原因:针对用户需求的第一选择
🥈 备选:项目名 原因:适合 XX 场景
❌ 不推荐:项目名 原因:维护状态不佳 / 功能不符合需求
下一步建议
- 如需安装,提供安装步骤
- 如需进一步调研,指出需要确认的问题
注意事项 所有数据实时从 GitHub API 获取,不要只凭记忆 Stars 数量只是参考,很多优质项目 Stars 不高但很实用 最后更新时间是最重要的指标,Stars 高但停更的项目不值得选 结合用户实际场景,功能再强但不适合用户场景的不推荐 主动提出备选方案,不要只给一个选项 明确说明缺点,让用户做知情决策 遇到 403 rate limit 时,换用 gh API 或等待