介绍

Coding Agent 的能力其实根本取决于模型的能力。这里结合个人使用体验,介绍四家国外最顶尖的 Coding agent,分别来自 AI 大模型三巨头+1家 AI 编程独角兽:

  • Claude code:来自 Anthropic,使用旗舰模型 claude sonnet 4.5 或 opus 4.5。不开源,需要订阅。
  • Codex:来自 OpenAI,使用旗舰模型 GPT-5.2-Codex-MAX,或 GPT-5.1。开源,需要订阅。
  • Gemini CLI:来自 Google,使用旗舰模型 Gemini-3-pro。开源,免费额度大。
  • Cursor:创业公司,AI Coding 领域龙头。不开源,需订阅。

2026-01-21更新:还要加上一家OpenCode,纯开源,有免费模型,而且可以使用多家的模型。这个是开源社区的优秀作品。

OpenCode安装:

https://opencode.ai/docs#install

尽管有 npm 安装的方法,但是一直卡住没法下载。还是得用教程推荐的 bash 脚本:

curl -fsSL https://opencode.ai/install | bash

注意:

  • 这个得用 git bash 命令行,普通 cmd 和 powershell 没法运行 bash 命令。
  • 得在 git bash 里面设置网络代理,否则没法访问这个资源。
  • 运行完成后,要手动把 opencode 加入到环境变量。

体验

我不太喜欢用命令行coding,所以一般会装它们的vscode插件(cursor里也能装)。使用体验:

  • claude code体验和能力都好,但是太贵,只能换替代模型(换模型后能力肯定打折扣)。除了命令行,也有IDE GUI插件。
  • codex 还可以,价格也便宜。除了命令行,也有IDE GUI插件。
  • gemini cli 免费,效果也不错。命令行操作有些bug(比如默认没有开启回滚功能,还有shift+tab切换自动接受编辑模式的快捷键失效)。IDE GUI插件国内很难登录。
  • cursor综合效果和体验最好,但是订阅不够用,20美金每月的会员很快就会用超。

方案

最终形成的方案:在cursor里安装codex、claude code的GUI插件(这样就不用在命令行里使用了),并窗口调到右侧(move to secondary sidebar)。codex配置中转站付费API,claude code配置中转站API或其它替代模型(GLM)。命令行安装Gemini CLI。这样,打开cursor再开一个Gemini CLI,就同时拥有了4个coding agent:

  • 普通修改用Claude code(GLM模型)。或Gemini CLI(切换为flash模型)。比较快和高效。
  • 需要高智力模型,用 codex插件(GPT-5.2)和Gemini CLI(gemini-3-pro)。
  • 报错修复,用cursor(auto模型),因为命令行context的导入很方便。

费用

费用方面:cursor(auto)免费,Gemini CLI 免费,Claude code用 GLM 包月套餐,codex 用中转站API。

使用trick

1. 回滚机制

回滚机制是最重要的:

  • Gemini CLI 默认没有开启自动checkpoint的机制,所以回滚比较麻烦。官方文档(具体见 https://geminicli.com/docs/cli/checkpointing/)推荐在~/.gemini/settings.json里面新增:

    {
      "general": {
        "checkpointing": {
          "enabled": true
        }
      }
    }
    

    这样,就会在每次运行edit工具后自动checkpoint,然后可以通过/restore命令来回滚这一次对话的编辑。但实际测试效果不好,建议还是自己结合git来手动stage和unstage操作吧。

  • Claude Code 的回滚是通过 /rewind 命令,可以撤销这一轮对话的编辑,非常方便,而且回滚点的提示非常清晰,支持代码和对话独立回滚。

  • Codex 插件自带undo回滚按钮,命令行有/undo命令,也挺好用,可以撤销刚才一次对话的编辑。

2. 新建和切换对话

  • Gemini CLI。每次进入一次 gemini 就是创建了一个新对话,在当前对话里是没法新建对话的,/clear会直接清除当前对话的历史,而不是新建对话,除非退出来重新进,这个设计的不好。/resume可以在对话间切换。
  • Claude code。\clear\new都是新建对话的意思,和Gemini不一样的是,它并不会清空当前对话,而是新建了一个会话。同样/resume切换会话。
  • Codex。直接用 GUI 插件吧,新建和切换会话就是按一个按钮那么简单。

3. input粘贴和换行

命令行一个不好的地方在于,如果要粘贴文本进去,会容易导致意外的结果(比如把换行符当成了确认,就提前发出去了),解决办法:

  • Gemini CLI。ctrl+x ,就可以在记事本里编辑 prompt input。
  • Claude code。ctrl+g,就可以在记事本里编辑 prompt input。
  • Codex。直接用 GUI 插件吧,输入框里想怎么写就怎么写,还可以方便地插入editor里选中的代码行。

关于换行的方法,有的是 shift+enter,有的是ctrl+enter,但又时常失灵。有一个统一的换行快捷键:ctrl+j

添加 HTTP server 类型的 MCP

MCP有http类型的(Streamable HTTP,端点是/mcp),还有SSE类型的(端点是/sse),还有stdio类型的。这里是以本地server(HTTP)为例。

全局安装方法(scope参数指定了在全局,而不是在项目下):

Claude code:

https://code.claude.com/docs/en/mcp#installing-mcp-servers

claude mcp add --transport http --scope user <name> <url>

Gemini CLI:

https://geminicli.com/docs/tools/mcp-server/#managing-mcp-servers-with-gemini-mcp

gemini mcp add --transport http --scope user <name> <url>

Codex:

https://developers.openai.com/codex/mcp/#configure-with-configtoml

~/.codex/config.toml里添加:

[mcp_servers.server_name]
url = "http://xxx:xxx/mcp"

OpenCode:

https://opencode.ai/docs/mcp-servers/#remote

~/.config/opencode/opencode.json里添加(如果没有这个文件,自己新建):

{
    "$schema": "https://opencode.ai/config.json",
    "mcp": {
        "server-name": {
            "type": "remote",
            "url": "http://xxx:xxx/mcp",
            "enabled": true
        }
    }
}
Logo

电影级数字人,免显卡端渲染SDK,十行代码即可调用,工业级demo免费开源下载!

更多推荐