首页 / 教程 / 编码工具

命令行 AI 编码工具:aider / opencode 接入自建 API

图形界面的编程插件已经很好用了,但有些场景下命令行工具更顺手:想在服务器上直接改脚本、想批量重命名上百个文件、想让 AI 自己跑一遍测试再动手改。aider、opencode 这类工具就是干这个的——把模型放进终端,让它直接读写你当前的项目。这篇讲清楚它们怎么接到自己的 API 上,以及最容易翻车的地方。

命令行工具和 IDE 插件差在哪

IDE 插件的工作方式是「你选代码、它给建议、你手动应用」,主动权在你手上。命令行工具反过来:你说一句「把这个目录里的 requests 全换成 httpx」,它自己去找文件、自己改、必要时自己跑命令验证。换句话说,它能自主读写你的磁盘,所以更适合批量重构这类一个人做起来很枯燥的活。

代价是风险也高。IDE 里改错了你能先看 diff 再决定留不留;命令行工具默认可能直接落盘。所以开工前确保项目在 git 仓库里,改完不满意还能一行命令全部回滚。

用命令行 AI 工具之前,先 git commit 一次。这是唯一一条不能省的纪律——有干净的工作区,才敢让 AI 动你的文件。

接入自建 API:三个配置项搞定

这类工具基本都兼容 OpenAI 格式的接口,所以接法大同小异:填一个接口地址、一个令牌、一个模型名。接口地址填 https://api.aigcbreeze.cn/v1,注意别把 /v1 漏掉——很多工具不会自动帮你补,漏了就是 404。

令牌去控制台新建一个,复制时留意别带上多余空格。模型名直接用站内的模型 ID,写进配置或命令行参数即可。填完先让它做一个最轻的任务验证链路,比如「这个文件是干什么的」,确认能正常返回再开始改代码。

模型搭配:命令行工具的调用是自动的,一个任务可能连发十几个请求,全用最贵的模型很容易在不知不觉中烧掉余额。日常改函数、写注释这类活用 glm-5.3-flash 就够了;碰到跨文件重构、排查诡异 bug 再切到更强的模型。先用便宜的跑通,觉得不够顺手再换,比反过来省钱得多。

两个工具各自的配置入口

aider 的配置可以写在用户目录下的 .aider.conf.yml 里,也可以每次用命令行参数传。核心是三项:接口地址、令牌、模型名。在项目根目录跑起来后,它会自动读取 git 仓库的文件列表,你只要指名要动哪几个文件就行。

opencode 用一份 json 配置文件,可以放在项目根目录,也可以放在全局配置目录。除了同样三项之外,它一般还会让你声明模型的上下文窗口大小——这里要如实填,填大了工具会往请求里塞很多文件,结果又慢又贵;填小了又频繁触发截断。不确定就按官方给的值填。

命令行里最容易踩的三个坑

一是上下文塞太满。这类工具为了显得聪明,默认会顺手读一堆相关文件,小项目无所谓,项目一大请求就会爆掉。手动把范围收紧,明确只让它读你指定的文件,速度和花费都会立刻下来。

二是没开确认模式就跑命令。有些工具能执行终端命令来验证改动的结果,这很有用,但也意味着它可能执行到你并不想执行的命令。第一次用建议开确认模式,每条命令都要你点头,跑顺了再考虑放开。

三是把令牌写进了会被提交的配置文件。图省事硬编码在项目配置里,一旦推到公开仓库就等于把令牌送出去了。用环境变量,或者放进已被忽略的本地配置文件。

常见问题

命令行工具和 IDE 插件能同时用吗?

能,两者互不干扰,操作的都是同一份项目文件。但别在两边同时改同一个文件,否则后保存的会把前面的覆盖掉。专注做一个任务时,挑一个用就好。

报 401 或者 404,怎么排查?

401 一般是令牌的问题:检查复制时有没有多余空格、令牌是不是被禁用了。404 通常是接口地址少了 /v1。可以先用一条最简单的网络请求打一下接口,能正常返回模型列表说明链路没问题,那问题就在工具的配置上。

会不会把项目改乱?

只要守着 git 就不会。开跑前提交一次,跑完看一眼改动,不满意整体还原即可。真正麻烦的是「跑完不看就接着提新需求」,改动一层叠一层,最后谁也说不清哪一步出的错。建议每完成一个小任务就检查一次。

让 AI 在终端里替你干活

三个配置项接上,挑个小项目练手。记得先提交,剩下的交给命令行。

留言交流

有问题、有补充,写两句吧~留言会实时显示在下方(无需注册)。

留言加载中…
← 上一篇:把自建 API 接进 Cursor / VSCode:AI 写代码实战 下一篇:沉浸式翻译自定义 API →