Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 22 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
|------|------|------|
| **日常编码** | Claude Code 或 Aider | 最强推理 / 最好 Git 集成 |
| **免费使用** | Qwen Code 或 Gemini CLI | 1000 次/天免费 OAuth / Google 账号 |
| **多模型切换** | OpenCode 或 Goose | 100+ models.dev / 58+ 提供商 |
| **多模型切换** | OpenCode、GooseQwen Code | 100+ models.dev / 58+ 提供商 / Arena 多模型竞争 |
| **VS Code 用户** | Cline 或 Continue | IDE 原生集成 / PR Checks |
| **中文开发者** | Qwen Code 或 Kimi CLI | 6 语言 UI / 月之暗面中文模型 |
| **CI/CD 自动化** | SWE-agent 或 OpenHands | 批量评估 / Docker 沙箱 |
Expand All @@ -67,27 +67,27 @@

## 快速对比表

> 为减少动态数字重复维护,Stars / 下载量 / 免费层等高频变化数据已迁移到 [`docs/data/agents-metadata.json`](./docs/data/agents-metadata.json)。

| Agent | 开发者 | 许可证 | 语言 | 提供商 | 特色 |
|------|--------|--------|------|-------|------|
| [OpenCode](./docs/tools/opencode/) | Anomaly | MIT | TypeScript(Bun) | 100+ | 多客户端(TUI+Web+桌面),37 LSP |
| [Gemini CLI](./docs/tools/gemini-cli/) | Google | Apache-2.0 | TypeScript | 1 | 8 策略模型路由,TOML 策略引擎 |
| [Claude Code](./docs/tools/claude-code/) | Anthropic | 专有 | Rust | 1 | 50ms 启动,24 Hook 事件,Channels |
| [OpenHands](./docs/tools/openhands.md) | OpenHands | MIT | Python | 100+ | Docker 沙箱,三层安全,多代理 |
| [Codex CLI](./docs/tools/codex-cli/) | OpenAI | Apache-2.0 | Rust | 1 | 三平台 OS 沙箱,Cloud 远程执行 |
| [Cline](./docs/tools/cline.md) | Cline | Apache-2.0 | TypeScript | 48+ | VS Code 原生,Git Checkpoint |
| [Aider](./docs/tools/aider/) | Paul Gauthier | GPL-3.0 | Python | 100+ | 14 编辑格式,三槽位模型,/undo |
| [Goose](./docs/tools/goose/) | Block | Apache-2.0 | Rust | 58+ | MCP 原生,11 Platform Extension,Recipe + Cron 调度 |
| [Continue](./docs/tools/continue.md) | Continue | Apache-2.0 | TypeScript | 60+ | PR Checks CI 审查,语义索引 |
| [Warp](./docs/tools/warp.md) | Warp | 专有 | Rust | 多种 | GPU 渲染终端,块结构输出 |
| [Qwen Code](./docs/tools/qwen-code/) | 阿里云 | Apache-2.0 | TypeScript | 6+ | 免费 1000 次/天,Arena 多模型竞争,41 命令 |
| [SWE-agent](./docs/tools/swe-agent.md) | Princeton | MIT | Python | 100+ | SWE-bench 评估,Docker 沙箱 |
| [Copilot CLI](./docs/tools/copilot-cli/) | GitHub | 专有 | TypeScript | 多种 | 67 GitHub 工具,GitHub 生态集成 |
| [Kimi CLI](./docs/tools/kimi-cli/) | 月之暗面 | Apache-2.0 | Python | 6 | Wire 协议,D-Mail 时间回溯 |
| [Cursor](./docs/tools/cursor-cli.md) | Cursor | 专有 | TypeScript | 多种 | AI 原生 IDE,Background Agent |
| [Qoder CLI](./docs/tools/qoder-cli/) | QoderAI | 专有 | Go | 多种 | Quest 模式,Claude Code 兼容 |
| [Oh My OpenAgent](./docs/tools/oh-my-openagent.md) | code-yeongyu | SUL-1.0 | TypeScript | 多种 | OpenCode Harness 层,7~10 Discipline Agent |
> 高频变化数据(Stars / 下载量 / 免费层)的权威来源为 [`docs/data/agents-metadata.json`](./docs/data/agents-metadata.json)。下表 Stars 列为 **2026-03-31 快照**,按 Stars 降序排列;后续更新将通过脚本从数据层自动生成,不再手工同步

| Agent | 开发者 | 许可证 | 语言 | Stars | 提供商 | 特色 |
|------|--------|--------|------|------|-------|------|
| [OpenCode](./docs/tools/opencode/) | Anomaly | MIT | TypeScript(Bun) | 133k | 100+ | 多客户端(TUI+Web+桌面),37 LSP |
| [Gemini CLI](./docs/tools/gemini-cli/) | Google | Apache-2.0 | TypeScript | 100k | 1 | 8 策略模型路由,TOML 策略引擎 |
| [Claude Code](./docs/tools/claude-code/) | Anthropic | 专有 | Rust | 85k | 1 | 50ms 启动,24 Hook 事件,Channels |
| [OpenHands](./docs/tools/openhands.md) | OpenHands | MIT | Python | 70k | 100+ | Docker 沙箱,三层安全,多代理 |
| [Codex CLI](./docs/tools/codex-cli/) | OpenAI | Apache-2.0 | Rust | 68k | 1 | 三平台 OS 沙箱,Cloud 远程执行 |
| [Cline](./docs/tools/cline.md) | Cline | Apache-2.0 | TypeScript | 60k | 48+ | VS Code 原生,Git Checkpoint |
| [Oh My OpenAgent](./docs/tools/oh-my-openagent.md) | code-yeongyu | SUL-1.0 | TypeScript | ~45k | 多种 | OpenCode Harness 层,7~10 Discipline Agent |
| [Aider](./docs/tools/aider/) | Paul Gauthier | GPL-3.0 | Python | 43k | 100+ | 14 编辑格式,三槽位模型,/undo |
| [Goose](./docs/tools/goose/) | Block | Apache-2.0 | Rust | 34k | 58+ | MCP 原生,11 Platform Extension,Recipe + Cron 调度 |
| [Continue](./docs/tools/continue.md) | Continue | Apache-2.0 | TypeScript | 32k | 68+ | PR Checks CI 审查,语义索引 |
| [Cursor](./docs/tools/cursor-cli.md) | Cursor | 专有 | TypeScript | ~33k | 多种 | AI 原生 IDE,Background Agent |
| [Warp](./docs/tools/warp.md) | Warp | 专有 | Rust | 26k | 多种 | GPU 渲染终端,块结构输出 |
| [Qwen Code](./docs/tools/qwen-code/) | 阿里云 | Apache-2.0 | TypeScript | 21k | 6+ | 免费 1000 次/天,Arena 多模型竞争,41 命令 |
| [SWE-agent](./docs/tools/swe-agent.md) | Princeton | MIT | Python | 19k | 100+ | SWE-bench 评估,Docker 沙箱 |
| [Copilot CLI](./docs/tools/copilot-cli/) | GitHub | 专有 | TypeScript | 10k | 多种 | 67 GitHub 工具,GitHub 生态集成 |
| [Kimi CLI](./docs/tools/kimi-cli/) | 月之暗面 | Apache-2.0 | Python | 7k | 6 | Wire 协议,D-Mail 时间回溯 |
| [Qoder CLI](./docs/tools/qoder-cli/) | QoderAI | 专有 | Go | | 多种 | Quest 模式,Claude Code 兼容 |

---

Expand Down
2 changes: 1 addition & 1 deletion docs/comparison/aider-vs-goose.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
|------|-------|-------|
| **开发者** | Paul Gauthier | Block(原 Square) |
| **许可证** | GPL-3.0 | Apache-2.0 |
| **Stars** | ~42k | ~33k |
| **Stars** | ~43k | ~34k |
| **语言** | Python | Rust |
| **核心代码量** | base_coder.py 2485 行 + 模块 | ~55k 行 Rust |
| **模型支持** | 100+ 模型(LiteLLM) | 58+ 提供商 |
Expand Down
2 changes: 1 addition & 1 deletion docs/comparison/architecture-deep-dive.md
Original file line number Diff line number Diff line change
Expand Up @@ -607,4 +607,4 @@ Harness(环境设计)

**关键实证**:LangChain coding agent 仅修改 Harness(不改模型),Terminal Bench 2.0 分数从 52.8% 提升到 66.5%——表明 Harness 优化可以在不更换模型的情况下带来显著性能提升。详见[构建自己的 AI 编程 Agent](../guides/build-your-own-agent.md)中的「Harness Engineering」章节。

**实践案例**:[Oh My OpenAgent](../tools/oh-my-openagent.md)(~44K Stars)在 OpenCode 之上构建了 7~10 个 Discipline Agent 编排 + 分类模型路由 + Hash-Anchored Edit,是目前最成功的开源 Harness 层实践。
**实践案例**:[Oh My OpenAgent](../tools/oh-my-openagent.md)(~45k Stars)在 OpenCode 之上构建了 7~10 个 Discipline Agent 编排 + 分类模型路由 + Hash-Anchored Edit,是目前最成功的开源 Harness 层实践。
27 changes: 17 additions & 10 deletions docs/comparison/evolution-community.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,27 @@
# 13. 版本迭代与社区数据

> 采集时间: 2026-03-25。数据来源: GitHub API (`gh api repos/X`)
> 采集时间: 2026-03-31。Stars / Forks / 贡献者 / 创建时间来自 GitHub API`gh api repos/X`);许可证和语言字段部分结合仓库文档或人工校验(如 GitHub 返回 `NOASSERTION` 或 `null` 时以实际声明为准)

## 项目概览

| Agent | Stars | Forks | 贡献者 | 创建时间 | 语言 | 许可证 |
|------|-------|-------|--------|---------|------|--------|
| **Gemini CLI** | 99,025 | 12,601 | 447 | 2025-04 | TypeScript | Apache-2.0 |
| **Claude Code** | 82,456 | 6,901 | 47 | 2025-02 | Shell/Bun | 专有 |
| **Codex CLI** | 67,475 | 9,029 | 386 | 2025-04 | Rust | Apache-2.0 |
| **Aider** | 42,362 | 4,065 | 170 | 2023-05 | Python | Apache-2.0 |
| **Goose** | 33,552 | 3,124 | 398 | 2024-08 | Rust | Apache-2.0 |
| **Qwen Code** | 21,039 | 1,877 | 350 | 2025-06 | TypeScript | Apache-2.0 |
| **OpenCode** | 11,578 | — | — | 2025-03 | Go | MIT |
| **Copilot CLI** | 9,559 | 1,298 | 19 | 2023-01 | Shell | 专有 |
| **Kimi CLI** | 7,364 | 760 | 53 | 2025-10 | Python | Apache-2.0 |
| **Gemini CLI** | 99,571 | 12,601 | 447 | 2025-04 | TypeScript | Apache-2.0 |
| **Claude Code** | 84,642 | 6,901 | 47 | 2025-02 | Shell/Bun | 专有 |
| **OpenHands** | 70,225 | — | — | — | Python | MIT |
| **Codex CLI** | 68,455 | 9,029 | 386 | 2025-04 | Rust | Apache-2.0 |
| **Cline** | 59,676 | — | — | — | TypeScript | Apache-2.0 |
| **Oh My OpenAgent** | 44,992 | — | — | — | TypeScript | SUL-1.0 |
| **Aider** | 42,575 | 4,065 | 170 | 2023-05 | Python | GPL-3.0 |
| **Goose** | 33,771 | 3,124 | 398 | 2024-08 | Rust | Apache-2.0 |
| **Cursor** | 32,532 | — | — | — | TypeScript | 专有 |
| **Continue** | 32,175 | — | — | — | TypeScript | Apache-2.0 |
| **Warp** | 26,267 | — | — | — | Rust | 专有 |
| **Qwen Code** | 21,360 | 1,877 | 350 | 2025-06 | TypeScript | Apache-2.0 |
| **SWE-agent** | 18,888 | — | — | — | Python | MIT |
| **OpenCode** | 132,999 | — | — | 2025-03 | TypeScript | MIT |
| **Copilot CLI** | 9,673 | 1,298 | 19 | 2023-01 | Shell | 专有 |
| **Kimi CLI** | 7,455 | 760 | 53 | 2025-10 | Python | Apache-2.0 |

## 发布节奏

Expand Down
3 changes: 3 additions & 0 deletions docs/data/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@

| 日期 | 文件 | 更新范围 | 数据来源 | 备注 |
|------|------|---------|---------|------|
| 2026-03-31 | `agents-metadata.json` | Stars 全量更新(GitHub API);新增 github_repo 防错字段 | GitHub REST API(17 个 repo) | 回滚 OpenCode 至 133k(anomalyco/opencode);新增 Cursor/Cline/Oh My OpenAgent/OpenHands/SWE-agent/Warp Stars |
| 2026-03-31 | `README.md` | 快速对比表增加 Stars 列,数据同步 | `agents-metadata.json` | 按 Stars 降序重排 |
| 2026-03-31 | `evolution-community.md` | 项目概览 Stars 更新,新增 7 个 Agent | GitHub REST API | 采集时间更新为 2026-03-31 |
| 2026-03-30 | `agents-metadata.json` | 初始化统一数据层;补充 Agent 元数据、免费层、证据状态、最后验证日期 | npm Registry API / PyPI Stats / `gh api` / 各 Agent 文档与 EVIDENCE.md | 首次建立 `docs/data/` |
| 2026-03-30 | `README.md`, `docs/SUMMARY.md` | 收敛高频变化的 Stars / 下载量 / 免费层引用,改为指向数据层 | `docs/data/agents-metadata.json` | 降低重复维护 |
| 2026-03-30 | `scripts/check_stale_data.py`, `scripts/check_all.py` | 新增动态数据漂移检查与统一检查入口 | 本仓库维护脚本 | 用于提交前校验 |
Expand Down
10 changes: 9 additions & 1 deletion docs/data/SCHEMA.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,9 +98,17 @@
- `none`
- `unknown`

### `github_repo`

- 格式:`owner/repo`,如 `anomalyco/opencode`、`anthropics/claude-code`
- 语义:Agent 对应的 GitHub 仓库(Stars 数据的来源)
- 无公开仓库的 Agent 设为 `null`(如 Qoder CLI)
- 校验:`scripts/check_repo_url.py` 会调用 GitHub API 验证仓库存在且 Stars 数量级与 `stars` 字段一致(2x 以内)
- **更新 Stars 前必须核对此字段**,禁止凭记忆猜测仓库地址

### `stars`

- 默认语义:GitHub Stars 的紧凑展示值,如 `83k`、`~132k`
- 默认语义:GitHub Stars 的紧凑展示值,如 `85k`、`~45k`
- 时间基准:由顶层 `last_updated` 统一表示本批动态数据的采样时间
- 允许哨兵值:`-`、`—`、`unknown`
- 对于闭源或无明确仓库映射的 Agent,可使用 `-` / `unknown`,并在相应文档中说明原因
Expand Down
68 changes: 43 additions & 25 deletions docs/data/agents-metadata.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"last_updated": "2026-03-30",
"last_updated": "2026-03-31",
"maintainer_note": "Dynamic metrics should be updated from official APIs or clearly labeled estimates. Static architecture facts should be sourced from repository analysis or EVIDENCE.md.",
"agents": [
{
Expand All @@ -12,7 +12,8 @@
"implementation_language": "Rust",
"runtime": "Bun(内嵌)/ 原生二进制",
"package_ecosystem": "npm",
"stars": "83k",
"github_repo": "anthropics/claude-code",
"stars": "85k",
"downloads": {
"type": "npm_weekly",
"value": "1020万",
Expand Down Expand Up @@ -49,7 +50,8 @@
"source_type": "binary-analysis",
"evidence_path": "docs/tools/copilot-cli/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "github/copilot-cli"
},
{
"id": "codex-cli",
Expand All @@ -73,7 +75,8 @@
"source_type": "binary-analysis",
"evidence_path": "docs/tools/codex-cli/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "openai/codex"
},
{
"id": "gemini-cli",
Expand All @@ -84,7 +87,7 @@
"implementation_language": "TypeScript",
"runtime": "Node.js >= 20",
"package_ecosystem": "npm",
"stars": "99k",
"stars": "100k",
"downloads": {
"type": "npm_weekly",
"value": "74万",
Expand All @@ -97,7 +100,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/gemini-cli/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "google-gemini/gemini-cli"
},
{
"id": "qwen-code",
Expand All @@ -121,7 +125,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/qwen-code/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "QwenLM/qwen-code"
},
{
"id": "aider",
Expand All @@ -132,7 +137,7 @@
"implementation_language": "Python",
"runtime": "Python >= 3.10",
"package_ecosystem": "pypi",
"stars": "42k",
"stars": "43k",
"downloads": {
"type": "pypi_monthly",
"value": "78万",
Expand All @@ -145,7 +150,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/aider/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "Aider-AI/aider"
},
{
"id": "kimi-cli",
Expand All @@ -169,7 +175,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/kimi-cli/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "MoonshotAI/kimi-cli"
},
{
"id": "opencode",
Expand All @@ -180,7 +187,7 @@
"implementation_language": "TypeScript(v1.0+)",
"runtime": "Bun 1.3+",
"package_ecosystem": "none",
"stars": "130k",
"stars": "133k",
"downloads": {
"type": "none",
"value": "—",
Expand All @@ -193,7 +200,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/opencode/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "anomalyco/opencode"
},
{
"id": "goose",
Expand All @@ -217,7 +225,8 @@
"source_type": "source-analysis",
"evidence_path": "docs/tools/goose/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "block/goose"
},
{
"id": "qoder-cli",
Expand All @@ -241,7 +250,8 @@
"source_type": "binary-analysis",
"evidence_path": "docs/tools/qoder-cli/EVIDENCE.md",
"last_verified": "2026-03-26"
}
},
"github_repo": null
},
{
"id": "oh-my-openagent",
Expand All @@ -252,7 +262,7 @@
"implementation_language": "TypeScript",
"runtime": "OpenCode Harness / Node.js",
"package_ecosystem": "npm",
"stars": "~44k",
"stars": "~45k",
"downloads": {
"type": "unknown",
"value": "—",
Expand All @@ -265,7 +275,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/oh-my-openagent.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "code-yeongyu/oh-my-openagent"
},
{
"id": "cline",
Expand All @@ -276,7 +287,7 @@
"implementation_language": "TypeScript",
"runtime": "VS Code 扩展",
"package_ecosystem": "vscode-marketplace",
"stars": "59k",
"stars": "60k",
"downloads": {
"type": "unknown",
"value": "—",
Expand All @@ -289,7 +300,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/cline.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "cline/cline"
},
{
"id": "continue",
Expand All @@ -313,7 +325,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/continue.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "continuedev/continue"
},
{
"id": "cursor-cli",
Expand All @@ -324,7 +337,7 @@
"implementation_language": "TypeScript",
"runtime": "IDE / Desktop",
"package_ecosystem": "desktop",
"stars": "-",
"stars": "~33k",
"downloads": {
"type": "unknown",
"value": "—",
Expand All @@ -337,7 +350,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/cursor-cli.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "cursor/cursor"
},
{
"id": "openhands",
Expand All @@ -361,7 +375,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/openhands.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "OpenHands/OpenHands"
},
{
"id": "swe-agent",
Expand All @@ -385,7 +400,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/swe-agent.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "SWE-agent/SWE-agent"
},
{
"id": "warp",
Expand All @@ -409,7 +425,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/warp.md",
"last_verified": "2026-03-26"
}
},
"github_repo": "warpdotdev/Warp"
},
{
"id": "mini-swe-agent",
Expand All @@ -433,7 +450,8 @@
"source_type": "summary-analysis",
"evidence_path": "docs/tools/mini-swe-agent.md",
"last_verified": "2026-03-26"
}
},
"github_repo": null
}
]
}
5 changes: 5 additions & 0 deletions docs/data/agents-metadata.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,11 @@
"type": "string",
"minLength": 1
},
"github_repo": {
"type": ["string", "null"],
"description": "GitHub repo in owner/repo format. Null if no public repo.",
"pattern": "^[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+$"
},
"stars": {
"type": "string"
},
Expand Down
Loading