返回博客列表

开发 AI Agent CLI,Python、TypeScript、Rust、Go 怎么选?12 款明星项目给出了答案

2026-05-30T14:00:00+08:00
AI AgentCLIPythonTypeScriptRustGo开源

开发 AI Agent CLI,Python、TypeScript、Rust、Go 怎么选?12 款明星项目给出了答案

如果你准备开发一个面向 AI Agent 的命令行工具(CLI),第一个要做的技术决策就是选语言。选错了,后面每一步都是代价。

与其泛泛而谈各语言的优劣,不如直接看市场上跑出来的选手们选了什么、为什么这么选。我把 GitHub 上最火的 12 款 Agent CLI 拉了个清单,用数据说话。

本文提纲

  1. 12 款 Agent CLI 语言全景图
  2. TypeScript 阵营:从开发效率到分发体验的全能选手
  3. Python 阵营:AI 原住民的直觉选择
  4. Rust 阵营:性能至上主义者的逆袭
  5. Go:缺席的种子选手
  6. 四维度横向对比:生态、性能、分发、开发效率
  7. 选型决策树

12 款 Agent CLI 语言全景图

先上数据。以下是截至 2026 年 5 月 GitHub 上最具代表性的 Agent CLI 项目:

项目 开发者 ⭐ Stars 主语言 定位
Claude Code Anthropic 128K TypeScript 终端编程 Agent
Gemini CLI Google 105K TypeScript 官方命令行 Agent
Codex CLI OpenAI 87K Rust 终端编程 Agent
OpenHands All-Hands-AI 75K Python 多 Agent 编排平台
Cline 社区 63K TypeScript VS Code Agent 插件
goose Block 46K Rust 开源自主 Agent
Aider Paul Gauthier 46K Python 终端结对编程
DeepSeek TUI Hmbown 36K Rust 终端编程 Agent
Continue Continue.dev 33K TypeScript IDE Agent 插件
SWE-Agent Princeton NLP 19K Python 学术研究 Agent
avante.nvim yetone 18K Lua Neovim Agent 插件
Amazon Q CLI AWS 2K Rust 官方命令行助手

按语言分组统计:

语言 项目数 总 Stars 代表项目
TypeScript 4 329K Claude Code、Gemini CLI、Cline、Continue
Rust 4 171K Codex CLI、goose、DeepSeek TUI、Amazon Q CLI
Python 3 140K OpenHands、Aider、SWE-Agent
Lua 1 18K avante.nvim
Go 0 无主流项目

数据揭示了一个很明确的格局:TypeScript 是当前 Agent CLI 的头号语言,不仅在项目数上和 Rust 并列,总 Star 数更是遥遥领先。Python 在 AI 研究和快速原型场景依然强势,Rust 则是大厂追求性能和安全的首选。

TypeScript 阵营:从开发效率到分发体验的全能选手

TypeScript 是这轮 Agent CLI 浪潮的最大赢家。四个项目加起来超过 32 万 Star,Top 2 全是 TypeScript。

为什么选 TypeScript

Claude Code 是 Anthropic 的旗舰产品,128K Star 位居榜首。很多人以为它是 Python 写的——GitHub 仓库里确实有大量 Python 代码(评估框架和测试脚本),但 CLI 本体是 TypeScript,基于 Bun 运行时编译为原生二进制分发(240MB 单文件,通过 npm 安装)。这个架构选择透露了 Anthropic 的思路:

  • TypeScript 的类型系统让复杂的 Agent 状态管理(工具调用链、上下文窗口、多轮对话)变得可靠
  • 通过 Bun 编译成单二进制,兼顾了 JS 生态的开发效率和原生二极型的分发体验
  • npm 作为分发渠道,覆盖了全球绝大多数开发者

Gemini CLI 是 Google 官方出品,105K Star。选 TypeScript 的理由同样直接:

  • npx @google/gemini-cli 一行命令即可使用,分发体验极佳
  • TypeScript 的异步模型(async/await)天然适合 Agent 的请求-响应循环
  • Google 内部的前端工具链本身就是 TypeScript 生态

Cline(63K Star)和 Continue(33K Star)都是 IDE 插件型 Agent。TypeScript 是 VS Code 扩展的唯一选择——这代表了一类特殊的 Agent CLI:嵌入式 Agent,不是独立运行在终端,而是寄生在 IDE 里。核心逻辑在 VS Code 扩展和独立 CLI 之间共享,一套代码两种形态。

TypeScript 的架构进化

Claude Code 的 Bun 编译方案值得单独说。传统上,TypeScript CLI 最大的诟病是"需要 Node.js 运行时"——用户得先装 Node,再 npm install,启动还慢。Bun 的单二进制编译直接解决了这个问题:开发者用 TypeScript 写代码,用户拿到的是一个 240MB 的原生可执行文件,无需任何运行时。这是 TypeScript 在 CLI 领域的重要进化。

Python 阵营:AI 原住民的直觉选择

Python 阵营项目数从表面看少了,但每一个都是细分领域的王者。

为什么选 Python

Aider 是 Paul Gauthier 的个人项目,46K Star。它可能是最"纯粹"的 Python Agent CLI——单文件起步,快速迭代。Aider 的成功恰恰证明了 Python 在个人开发者场景下的优势:一个人、几周时间,就能做出一个能和 Anthropic、OpenAI 大型团队产品竞争的工具。

OpenHands(前身 OpenDevin)走的是平台化路线,75K Star。Python 的 Web 生态(Flask/FastAPI)让它在架构上天然支持前后端分离、多 Agent 编排。

SWE-Agent 来自 Princeton NLP,19K Star,学术出身。Python 在学术界的主导地位让它成为不二之选——论文的复现、数据集的处理、模型的调用,Python 一条龙。

Python 的核心优势

Python 的杀手锏是 AI/ML 生态的完整性tiktoken 分词、anthropic/openai SDK、transformers 模型加载、langchain 编排——所有 Agent 开发需要的基础设施,Python 都是第一时间支持。对于研究型、实验型的 Agent 项目,Python 的开箱即用无可替代。

Python 的代价

Python 的短板在性能和分发。pip install 的体验不如 npx 稳定,Python 环境管理(venv、conda、pyenv)对新手是门槛。但对于 Agent CLI 来说,瓶颈永远在网络 I/O(等 LLM 返回),而不是本地计算——这让 Python 的性能劣势被大大稀释了。

Rust 阵营:性能至上主义者的逆袭

Rust 阵营是 2025-2026 年增长最快的,四个项目总计 171K Star。更值得关注的是——OpenAI 的 Codex CLI 是从 TypeScript 重写为 Rust 的,这是最强有力的技术选型信号。

为什么选 Rust

OpenAI Codex CLI 的语言分布数据很有意思:Rust 代码占 32.6MB,Python 占 0.99MB(测试/CI),TypeScript 仅 0.08MB。从 TypeScript 重写为 Rust,OpenAI 的理由:

  • Agent CLI 需要处理大量本地文件操作(读代码、写代码、搜索文件),Rust 的零成本抽象让这些操作比 Node.js 快 10-100 倍
  • 沙箱安全是 Agent 的核心需求,Rust 的内存安全保证了隔离层的可靠性
  • 编译成单个二进制文件,无需运行时依赖,分发体验极佳

goose(Block/Square 出品,46K Star)的数据更耐人寻味:Rust 6.36MB + TypeScript 3.0MB。Rust 是核心引擎,TypeScript 负责 IDE 扩展——这是一个很聪明的混合架构。

DeepSeek TUI(36K Star)选 Rust 的原因很纯粹:终端 UI 渲染性能。一个流畅的 TUI 界面对用户体验的影响,远超大多数人的想象。

Amazon Q Developer CLI(AWS 出品,2K Star)选 Rust 则是出于企业级考量:在受限环境中部署,单二进制、无依赖、低内存占用是硬性要求。

Rust 的代价

开发效率。Rust 的学习曲线、编译时间、借用检查器,让快速迭代变得困难。对于需要频繁调整 Agent 策略、快速验证新想法的团队,Rust 的迭代速度可能成为瓶颈。

Go:缺席的种子选手

Go 在 CLI 工具领域有着辉煌的历史——Docker、Kubernetes、Terraform、gh(GitHub CLI)都是 Go 写的。但在 Agent CLI 领域,Go 几乎缺席。

这不是 Go 的问题,而是 Agent 场景的特殊性:

  1. AI/ML 生态薄弱:Go 没有 Python 那样的 transformerslangchaintiktoken,也没有 TypeScript 的 vscode API
  2. 字符串处理不擅长:Agent 80% 的工作是处理文本(prompt、response、diff),Go 的字符串处理不如 Python/TypeScript 方便
  3. 泛型来得太晚:Go 1.18 才有泛型,很多 Agent 框架需要复杂的类型抽象

但 Go 有一个被低估的优势:交叉编译。GOOS=linux GOARCH=amd64 go build 一行命令生成任何平台的二进制。如果 Agent CLI 需要在异构环境中大规模部署,Go 的分发能力仅次于 Rust。

我的判断:Go 不会成为 Agent CLI 的主流语言,但在基础设施层(Agent 编排、任务队列、API Gateway)会有一席之地。

四维度横向对比

1. 开发生态

维度 Python TypeScript Rust Go
LLM SDK ★★★★★ ★★★★☆ ★★★☆☆ ★★☆☆☆
文本处理 ★★★★★ ★★★★☆ ★★★☆☆ ★★★☆☆
Web/API ★★★★★ ★★★★★ ★★★☆☆ ★★★★★
IDE 集成 ★★☆☆☆ ★★★★★ ★★☆☆☆ ★★☆☆☆
包管理 ★★★☆☆ ★★★★★ ★★★★☆ ★★★★☆

Python 在 LLM SDK 和文本处理上遥遥领先。TypeScript 在 IDE 集成上有独占优势。Rust 和 Go 的 LLM SDK 生态还在追赶阶段。

2. 运行性能

维度 Python TypeScript Rust Go
文件 I/O ★★☆☆☆ ★★★☆☆ ★★★★★ ★★★★☆
并发处理 ★★☆☆☆ ★★★☆☆ ★★★★★ ★★★★★
内存占用 ★★☆☆☆ ★★★☆☆ ★★★★★ ★★★★☆
启动速度 ★★★☆☆ ★★★☆☆ ★★★★★ ★★★★★

Rust 在性能维度全面领先。但再次强调——Agent CLI 的瓶颈在等 LLM 返回(通常 1-30 秒),本地计算的毫秒级差异用户感知不到。TypeScript 通过 Bun 编译后,启动速度和内存占用也有显著改善。

3. 分发体验

维度 Python TypeScript Rust Go
安装便捷度 ★★★☆☆ ★★★★★ ★★★★☆ ★★★★★
交叉编译 ★☆☆☆☆ ★★☆☆☆ ★★★★☆ ★★★★★
二进制大小 ★★☆☆☆ ★★☆☆☆ ★★★★☆ ★★★★★
运行时依赖 ★☆☆☆☆ ★★★★☆ ★★★★★ ★★★★★

TypeScript 通过 npm 分发体验最好(Claude Code 的 Bun 编译方案解决了运行时依赖问题)。Rust 编译成单二进制,Go 天然支持交叉编译,两者在"零依赖"场景下胜出。Python 需要 Python 环境,是最大的扣分项。

4. 开发效率

维度 Python TypeScript Rust Go
原型速度 ★★★★★ ★★★★☆ ★★☆☆☆ ★★★★☆
调试体验 ★★★★★ ★★★★☆ ★★★☆☆ ★★★★☆
团队扩展 ★★★★★ ★★★★★ ★★☆☆☆ ★★★★☆
招聘难度 ★★★★★ ★★★★★ ★★☆☆☆ ★★★★☆

Python 和 TypeScript 在开发效率上远超 Rust。Rust 招聘难、上手慢、迭代周期长,这对小团队是致命的。

选型决策树

废话少说,直接上结论:

你要做什么类型的 Agent CLI?
│
├─ 终端编程 Agent(类似 Claude Code/Codex)
│   ├─ 追求开发效率和生态 → TypeScript(Bun 编译分发)
│   ├─ 追求极致性能和安全 → Rust
│   └─ 快速验证/学术研究 → Python
│
├─ IDE 插件 Agent(类似 Cline/Continue)
│   └─ TypeScript(没有其他选择)
│
├─ 平台/服务型 Agent(类似 OpenHands)
│   ├─ 需要前后端 → Python(FastAPI + React)
│   └─ 纯后端服务 → Go 或 Rust
│
├─ 研究/实验型 Agent(类似 SWE-Agent)
│   └─ Python(学术生态 + 快速验证)
│
└─ 嵌入式/边缘部署 Agent
    └─ Rust 或 Go(低资源、单二进制)

我的建议

如果你是个人开发者或小团队:选 TypeScript 或 Python。TypeScript 的分发体验更好(npm + Bun 编译),Python 的 AI 生态更完整。两个都是快速迭代的利器。Aider 用 Python 做到了 46K Star,Cline 用 TypeScript 做到了 63K Star——语言不是决定性因素,产品力才是。

如果你是大厂团队:Rust 值得认真考虑。OpenAI 从 TypeScript 重写到 Rust,这个信号太强了。当项目进入成熟期,性能、安全、分发都会变成硬约束,Rust 的前期投入会在后期收回。

如果你做 IDE 插件:TypeScript 是唯一答案。

如果你做基础设施:Go 是最佳选择。Agent 编排、任务调度、API Gateway 这类底层服务,Go 的并发模型和部署便利性无可替代。


作者: itech001
来源: 公众号:AI人工智能时代
网站: https://www.theaiera.cn/ 每日分享最前沿的AI新闻资讯和技术研究。

本文首发于 AI人工智能时代,转载请注明出处。

觉得文章不错?分享给更多人!