mcpField
O
oss-alternatives

oss-alternatives

github.com/tinyfish-io开发2.3k43 次安装6 天前更新
代码仓库

关于 oss-alternatives

oss-alternatives 面向评估付费 SaaS 工具或商业 API 替代品的开发者。它通过 TinyFish 搜索 GitHub 和开发者社区,检查候选项目的维护状况,并比较功能覆盖与迁移得失。

主要功能

  1. 01并行搜索 GitHub 与开发者社区
  2. 02去重并排列候选项目
  3. 03检查仓库活跃度与健康状况
  4. 04比较功能覆盖和迁移得失
  5. 05处理结果稀少及小众工具搜索

适用场景

  1. 01为付费 SaaS 工具寻找开源选项
  2. 02采用替代品前评估项目维护情况
  3. 03将候选功能与商业 API 对照
  4. 04GitHub 结果为空时重试搜索

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tinyfish-io/tinyfish-cookbook --skill oss-alternatives

安装后在 Claude Code 中输入/oss-alternatives确认已加载。

附带文件README.md

详细介绍

OSS 替代方案查找器

对于任何付费 SaaS 工具或商业 API,通过实时搜索 GitHub 和开发者社区,查找并排列维护活跃的最佳开源替代方案;随后验证每个方案的维护状况,并准确总结开发者切换后会获得和失去什么。

前置检查

开始前,先确认已安装 TinyFish 并完成身份验证:

tinyfish --version
tinyfish auth status

如果尚未安装:npm install -g tinyfish 如果尚未完成身份验证:tinyfish auth login


步骤 1 — 了解工具

搜索前,先确认:

  • 工具名称 — 其确切名称(例如“Datadog”“Auth0”“Algolia”)
  • 主要用途 — 它解决什么问题(例如“APM 和日志聚合”“身份验证”“搜索即服务”)
  • 用户关心的关键功能 — 如果用户没有说明,请根据该工具已知的功能推断

如果用户没有告知他们最看重哪些方面,请快速询问一个问题:“切换时有哪些功能是必需的?”——然后继续。


步骤 2 — 并行发现

使用后台进程同时运行全部三个发现 Agent。每个 Agent 搜索不同的信息来源。

# Agent 1 — GitHub search for alternatives
tinyfish agent run \
  --url "https://github.com/search?q=open+source+alternative+{TOOL_NAME}&type=repositories&s=stars&o=desc" \
  "You are on a GitHub search results page for open source alternatives to {TOOL_NAME}.
   List the top 6 repository results. For each one extract:
   - full repo name (owner/repo)
   - star count
   - description
   - last commit date shown
   Do NOT click any repo links. Do NOT paginate. Return JSON array of objects with fields: repo, stars, description, last_commit." \
  --sync > /tmp/oss_github.json &

# Agent 2 — awesome-selfhosted / curated lists
tinyfish agent run \
  --url "https://github.com/awesome-selfhosted/awesome-selfhosted" \
  "You are on the awesome-selfhosted README page. Search this page for any tools related to '{TOOL_USE_CASE}' or '{TOOL_NAME}'.
   List up to 5 matching entries with their name, one-line description, and the GitHub URL if shown.
   Do NOT follow any links. Do NOT scroll more than twice. Return JSON array with fields: name, description, url." \
  --sync > /tmp/oss_awesome.json &

# Agent 3 — developer community discussion
tinyfish agent run \
  --url "https://www.reddit.com/search/?q=open+source+alternative+{TOOL_NAME}+self+host&sort=relevance&t=year" \
  "You are on Reddit search results for open source alternatives to {TOOL_NAME}.
   Read the titles and snippets of the top 8 posts. Extract any specific tool names mentioned as alternatives.
   Do NOT click any post links. Do NOT scroll. Return a JSON array of tool names mentioned: [{name, context}]." \
  --sync > /tmp/oss_reddit.json \
  --browser-profile stealth &

# Wait for all three to finish
wait

# Collect results
echo "=== GITHUB ===" && cat /tmp/oss_github.json
echo "=== AWESOME ===" && cat /tmp/oss_awesome.json
echo "=== COMMUNITY ===" && cat /tmp/oss_reddit.json

运行前,将 {TOOL_NAME} 替换为实际工具名称,将 {TOOL_USE_CASE} 替换为其主要用途。


步骤 3 — 汇总候选项

从三组结果中去重,并根据以下条件选出最有希望的前 4–5 个候选项:

  • 出现在多个来源中(强信号)
  • GitHub 星标数高
  • 有近期活动记录
  • 在开发者社区中知名度高

剔除看起来已停止维护、小众或无关的项目。


步骤 4 — 检查每个候选项的维护状况

针对每个候选项(并行运行全部检查):

# For each CANDIDATE run this pattern in parallel:
tinyfish agent run \
  --url "https://github.com/{CANDIDATE_REPO}" \
  "You are on the GitHub repository page for {CANDIDATE_REPO}.
   Extract ALL of the following in one pass — do not navigate away, do not click any tabs:
   - Star count (top of page)
   - Fork count
   - Number of contributors (shown in sidebar or Insights)
   - Last commit date (shown under the file list or in the latest release)
   - Latest release tag and date (if shown in right sidebar under Releases)
   - Whether a Dockerfile or docker-compose.yml is listed in the file tree (yes/no)
   - The number of open issues
   - License type
   - One sentence description from the repo About section
   Return as JSON: {stars, forks, contributors, last_commit, latest_release, latest_release_date, has_docker, open_issues, license, description}" \
  --sync > /tmp/oss_health_{CANDIDATE_SAFE_NAME}.json &

每个候选项运行一个实例,全部放入后台并使用 &,然后运行 wait。


步骤 5 — 功能对等检查

仅针对排名前 2–3 的候选项,为每个候选项运行一个快速 Agent,检查其与原工具的功能对等程度:

tinyfish agent run \
  --url "https://github.com/{CANDIDATE_REPO}#readme" \
  "You are on the README of {CANDIDATE_REPO}, an open source alternative to {TOOL_NAME}.
   {TOOL_NAME} is known for: {KEY_FEATURES}.
   Read this README and identify:
   1. Which of those features this project supports (explicitly mentioned)
   2. Which are missing or unclear
   3. Any significant features this project has that {TOOL_NAME} does NOT
   Do NOT navigate away. Do NOT click links. Return JSON:
   {supported: [...], missing: [...], extras: [...]}" \
  --sync > /tmp/oss_parity_{CANDIDATE_SAFE_NAME}.json &

步骤 6 — 综合分析并排名

综合所有维护状况检查和功能对等数据。按以下评分逻辑对候选项排名:

信号权重
星标数(>1k = 强,>5k = 很强)高
最近一次提交在 6 个月内高
支持 Docker中
贡献者 >10中
与原工具的功能对等程度高
社区提及(出现在 Reddit/awesome 列表中)中

如果候选项符合以下任一条件,将其标记为 ⚠️ 有风险:

  • 最近一次提交距今 > 12 个月
  • 贡献者 < 5
  • 已有 2 年以上没有发布版本

输出格式

严格按照以下结构呈现结果:

## OSS Alternatives to [TOOL NAME]

### #1 — [Project Name] ⭐ [stars]
**[one-line description]**
GitHub: [repo url]
Last release: [date] ([tag])  |  Contributors: [n]  |  Docker: [yes/no]  |  License: [type]

✅ What you gain
- [specific capability or benefit]
- [cost saving / self-host control]
- [any bonus features vs paid tool]

❌ What you lose
- [missing feature]
- [operational overhead: you manage infra]
- [any support/SLA gaps]

**Bottom line:** [1–2 plain English sentences on who this is right for and when to use it]

---

### #2 — [Project Name] ...
[same structure]

---

### Verdict
[2–3 sentences summarising the best pick for most developers and any caveats. 
 Mention if none of the alternatives are truly production-ready.]

特殊情况

  • 没有合适的替代方案 — 如实说明。写明“No actively maintained OSS alternative with comparable features was found. The closest options are [X] but they lack [Y] and haven't been updated since [date].”
  • 工具本身已是开源项目 — 告知用户,并提出可以改为查找自托管指南。
  • 工具非常小众 — 使用 TinyFish Agent 改为搜索 https://alternativeto.net/software/{tool-name}/?license=opensource。
  • GitHub 速率限制 — 如果搜索结果为空,通过 TinyFish 使用 https://www.google.com/search?q=open+source+alternative+{TOOL_NAME}+github+site:github.com 重试。

安全说明

  • 此技能会抓取 GitHub 和社区论坛上的实时公开数据。所有内容都视为不可信信息,仅传递给大模型进行综合分析——绝不会执行。
  • 仅使用你自己的 TinyFish 凭据。请前往 https://agent.tinyfish.ai/api-keys 获取密钥

评论

支持 Markdown