发布于 2026-01-06 3 阅读
0

我测试了 Gemini CLI 和其他顶级编码代理 - 以下是我的发现 DEV 的全球展示挑战赛,由 Mux 呈现:展示你的项目!

我测试了 Gemini CLI 和其他一些顶级代码代理——以下是我的发现

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

如果你一直关注面向开发者的AI工具的兴起,你可能已经在开发者推特、Hacker News和GitHub等平台上的讨论中看到过Gemini CLI的身影。它是谷歌最新的命令行编码助手,旨在将智能的、能够感知上下文的AI直接引入你的终端。

但是,在开源代理和 AI 开发工具层出不穷的领域,Gemini CLI 的实际表现如何呢?

为了找到答案,我花了不少时间测试 Gemini CLI 以及其他一些流行的代码代理,包括 Claude CLI、Cody CLI、GPT Engineer 等等。我让它们完成了一系列实际任务:调试出错的脚本、生成测试、重构混乱的代码以及搭建简单的 API 框架。

有些工具功能强大得惊人,而有些工具甚至连安装都还没完成。

为什么命令行编码代理很重要

CLI代理程序完美地介于功能齐全的IDE辅助工具和基于浏览器的代码生成器之间。它们更轻量、更快速,并且可以直接集成到许多开发人员已经使用的工作流程中,特别是那些使用Docker、Git或服务器端技术栈的开发人员。

它们让你可以直接在终端中自动生成代码、调试、搭建代码框架,甚至进行任务规划。如果你喜欢在 Python tmux、Vim 中工作,或者只是不想每隔 10 秒就离开终端,这些工具或许代表着未来。

我是如何测试它们的

为了公平起见,我在相似的条件下测试了每款工具:

  • 操作系统: Windows 11
  • CPU:英特尔酷睿i7(第13代)
  • GPU: NVIDIA RTX 3060(笔记本电脑)
  • 内存: 32GB DDR5
  • 环境: VS Code + Git + Windows 终端
  • 附加组件: WSL2(Ubuntu)、Docker Desktop、Python 3.11、Node.js LTS

语言重点:

  • Python
  • JavaScript

使用案例:

  1. 搭建一个简单的 CRUD API
  2. 为函数生成单元测试
  3. 调试损坏的脚本
  4. 重构混乱的代码
  5. 用自然语言提问有关本地项目的问题

评价标准:

  • 设置时间和稳定性
  • 代码输出质量
  • 易用性(命令、提示、界面)
  • 上下文感知能力(它是否理解我的项目?)
  • 在实际开发工作流程中的实用性

我在真实世界的存储库(而不是演示项目)中测试了这些代理,并记录了每个代理在这些限制条件下的性能。

代理商概览

Gemini CLI

它的功能:

这是一个基于终端的开源人工智能助手,由谷歌的Gemini模型驱动。你可以用它进行代码生成、调试、执行shell命令、编写文档、解决问题以及处理各种人工智能辅助工作流程——所有操作都无需离开终端。

设置:

  • 通过 Homebrew/Linux 软件包管理器安装(支持 macOS 和 Linux-WSL)。
  • 需要一个免费的 Gemini Code Assist 账户。
  • 无需 Docker 或大量依赖项——快速干净的安装。

表现:

  • 对编码提示和 shell 问题做出快速、灵活的响应。
  • 非常适合生成代码片段、编写测试、修复错误或运行研究命令。
  • 支持本地自定义和使用 CLI 标志进行提示链式调用。

优点:

  • 将谷歌级别的LLM直接引入您的终端
  • 简洁、可扩展的接口(Apache 2.0 许可证)
  • 与 Gemini Code Assist 集成,实现上下文共享和效率提升。

缺点:

  • 需要联网和 Gemini 账户
  • 作为近期发布的一部分,部分功能仍在不断扩展。

判决:

Gemini CLI是 AutoCode 的绝佳现代替代方案。它界面简洁流畅、功能强大,显然是专为喜欢使用终端的开发者而设计的。如果您正在寻找一款技术领先、维护活跃的命令行代理,那么 Gemini CLI 是目前最佳选择之一。

Claude Code CLI

它的功能:

这是一款基于终端的AI编码助手,采用Anthropic公司的Claude 3模型。它专为本地或项目特定任务而设计,能够编写、解释、调试和重构代码,并注重上下文深度和安全输出。

设置:

可通过 pip 或 npm 安装(取决于社区版本)。需要 Anthropic API 密钥。轻量级,无需 Docker 或其他额外依赖项。

表现:

Claude Code CLI 在处理大型代码上下文时表现出色。它能够处理完整的文件,并且比大多数代理程序更好地理解跨多个文件的复杂逻辑链。在单体仓库或混乱的遗留项目中使用时,它的表现尤其令人印象深刻。


优点:

  • 非常擅长在长文件中保持上下文
  • 输出结果安全、易读且可解释。
  • 反应迅速,几乎没有幻觉
  • 非常适合结对编程或审查遗留代码

缺点:

  • 需要 Anthropic API 密钥(不适用于免费套餐)
  • 没有主动记忆或逐步任务规划器
  • 仍在快速开发中——功能因版本而异

判决:

Claude Code CLI 就像终端里最聪明的结对程序员。如果你正在处理棘手的重构、遗留代码,或者需要可靠的多文件推理,那么它绝对是最佳选择——尤其是在长远理解方面,它远胜于其他模型。

小开发者

它的功能:

Smol Developer 是一款极简的命令行代理,专为速度而生。你只需输入提示,它就会返回代码、解释或文件建议——无需代理、内存占用或复杂的用户界面。

设置:

极其简单。克隆仓库,安装依赖项,然后运行即可。无需 Docker,也无需繁琐的 API 密钥设置。

表现:

它能轻松处理诸如“构建 FastAPI CRUD 应用”或“为这个 Flask 应用添加登录功能”之类的基本提示。虽然它不维护项目级内存,但它速度快、实用且很少出错。

优点:

  • 快速响应
  • 易于安装
  • 不试图做太多事。

缺点:

  • 无持久内存
  • 无法跨文件推理

判决:

一款出色的助手,可用于快速生成代码片段或文件。学习曲线低,实用性强。

OpenHands(以前称为 OpenDevin)

它的功能:

力求成为你的完全自主开发者——规划任务、执行步骤,并在“大声思考”的同时编写代码。

设置:

第一次尝试很痛苦。需要 Docker、特定的 Python 版本和系统资源。经常会遇到容器问题。

表现:

雄心壮志令人印象深刻。它生成了完整的文件树,讨论了其逻辑,并尝试了多步骤工作流程。但失败的次数多于成功的次数。

优点:

  • 富有远见的设计
  • 多步骤推理
  • 终端图形用户界面很流畅

缺点:

  • 设置脆弱
  • 表现不稳定
  • 需要大量系统资源

判决:

非常有前途,但目前还不够稳定,无法用于日常工作。

继续 CLI

它的功能:

Continue IDE 插件的命令行配套工具。它就像一个基于 GPT 的 REPL,可以访问你的代码库。

设置:

很简单,安装运行即可。

安装完成后,您通常会使用如下命令:

表现:

有助于提问、编写简短函数和解释错误。虽然缺乏深层文件上下文信息,但速度很快,弥补了这一不足。

优点:

  • 干净的界面
  • 便于快速问答
  • 轻的

缺点:

  • 项目意识有限
  • 不会自动编辑文件

判决:

一款可靠的“终端助手”,非常适合解答小问题和提供编码指导。

Devika CLI

它的功能:

它接收提示,规划子任务,并分阶段构建项目。它会解释每一步的操作。

Devika 安装

Devika是一个本地 AI 编码代理(类似于自主开发者)。以下是各个步骤的详细说明:

  • 克隆仓库:
  • 使用以下命令设置 Python 虚拟环境uv
  • 安装 Playwright 依赖项(用于浏览):
  • 运行后端:
  • 运行前端:
  • 通过浏览器访问:http://127.0.0.1:3001

配置需要花点时间,但还算可以接受。

表现:

它处理简单的网页应用表现非常出色。但对于规模较大或范围不明确的提示,它就会出现幻觉或卡住。不过,观察它的“思考”过程还是很有意思的。

优点:

  • 子任务规划
  • 清晰的解释
  • 可以生成完整的应用程序

缺点:

  • 容易出错
  • 验证效果不佳
  • 输出可能存在噪声

判决:

适合快速原型制作和实验,但不太适合代码润色或维护。

科迪 CLI

它的功能:

Sourcegraph 的 CLI代理能够理解您的实际代码库。您可以向它询问诸如“这个类在哪里使用?”或“重构这个函数”之类的问题。

设置:

与 Sourcegraph 的索引工具紧密集成。如果您已经在使用 Sourcegraph,那就更无需犹豫了。

表现:

就上下文而言,它最“智能”。它会根据实际使用情况和文件关系做出响应。但如果不与 Sourcegraph 完全集成,它的功能就会受到限制。

优点:

  • 深度代码意识
  • 准确的答案
  • 搜索效果极佳

缺点:

  • 需要 Sourcegraph
  • 在生态系统之外,其作用较小。

判决:

对于使用 Sourcegraph 的团队来说,这简直太棒了。虽然小众,但功能强大。

GPT工程师

它的功能:

提供项目规格,它就能从零开始构建项目。包含思路日志和逐文件解释。

设置:

需要正确的 Python 配置和 API 密钥。

表现:

它非常擅长处理结构化提示。比如,你输入“用 Flask 构建一个带登录功能的待办事项应用”,它就能立即开始工作,创建文件和评论。

优点:

  • 易于迭代
  • 解释推理过程
  • 可自定义配置

缺点:

  • 对重大提示反应迟缓
  • 需要打磨
  • 不进行验证或测试

判决:

非常适合用于最小可行产品(MVP)或创意探索。所有输出结果均需手动审核。

聊天开发人员

它的功能:

一家人工智能“公司”,CEO、CTO和开发人员等角色共同协作开发软件。没错,是真的。

设置:

篇幅很长,但资料翔实。

表现:

更像是个玩具。看着人工智能角色们争论架构固然有趣,但结果却前后矛盾,而且往往冗长乏味。

优点:

  • 独特的想法
  • 很有趣
  • 多智能体逻辑

缺点:

  • 慢的
  • 容易出现奇怪的输出
  • 不适用于严肃项目

判决:

仅供娱乐消遣,不适用于生产用途。

对比表

对比表

我的精选推荐

令我惊讶的是

  • 大多数特工在收到非常具体的提示时,出现幻觉的几率会降低。
  • 那些不试图包揽一切的工具,往往表现最好。
  • CLI 用户体验比我想象的更重要——清晰的日志和结构化的步骤会带来巨大的不同。

CLI AI 代理的现状

它们能完全取代你的开发环境吗?不能。

但它们现在有用吗?当然有用。

对于搭建框架、提供解释说明或小型自动化任务,CLI 代理已经非常实用。对于大型重构或全栈构建,它们正在逐步完善,但仍需要监督。

接下来我想看什么

  • 离线/本地LLM支持
  • 更智能的文件编辑(而不仅仅是生成)
  • 更好地处理多文件项目
  • 支持 Git 的工作流程(例如,生成提交消息、建议 PR)

结论

命令行编码代理不再只是概念——它们真实存在,功能齐全,在某些情况下甚至非常出色。虽然大多数命令行编码代理目前还不能做到“一劳永逸”,但它们绝对可以帮助减轻你的精神负担,加快开发速度。

不妨试试,尤其如果你经常待在候机楼的话。不过,别抱太高的期望——而且要保持git diff清洁。

有没有我没提到的你最喜欢的命令行编码代理?告诉我吧——我一直都乐于测试新的代理。

文章来源:https://dev.to/therealmrmumba/i-tested-gemini-cli-and-other-top-coding-agents-heres-what-i-found-om1