关于 oss-alternatives
oss-alternatives 面向评估付费 SaaS 工具或商业 API 替代品的开发者。它通过 TinyFish 搜索 GitHub 和开发者社区,检查候选项目的维护状况,并比较功能覆盖与迁移得失。
主要功能
- 01并行搜索 GitHub 与开发者社区
- 02去重并排列候选项目
- 03检查仓库活跃度与健康状况
- 04比较功能覆盖和迁移得失
- 05处理结果稀少及小众工具搜索
适用场景
- 01为付费 SaaS 工具寻找开源选项
- 02采用替代品前评估项目维护情况
- 03将候选功能与商业 API 对照
- 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