Aider
开源的终端 AI 结对编程工具,用自然语言驱动它直接改代码、跑测试并自动 Git 提交,模型可自选,本地模型也能接。
Aider是什么
Aider 是一款开源的终端 AI 结对编程工具,官网 https://aider.chat,官方标语是「AI pair programming in your terminal」。它把大模型接到命令行里:你在项目目录中开启一次会话,用自然语言说清这轮想改什么,它自己检索文件、给出补丁、改完代码、跑一遍验证,然后把改动提交进 Git。
按 AI编程 分类的口径看,Aider 属于终端型的那一档——和图形界面的补全型助手不同,它更像是在命令行里与你轮流改同一个仓库:一轮对话对应一批可以回滚的提交,改了什么、为什么改,都留在 Git 历史里,而不是留在某个聊天窗口里。
几个细节决定了它实际好不好用:
- 代码库地图(repo map):它为整个代码库生成一张结构地图,把关键文件与符号位置交给模型,仓库规模大时不容易跑偏。
- 模型不锁死:官方点名效果较好的组合包括 Claude 3.7 Sonnet、DeepSeek R1 与 Chat V3、OpenAI 的 o1、o3-mini 与 GPT-4o,同时支持几乎任意大模型,本地权重模型也能接;国内用 DeepSeek 这类国产模型的接口同样能跑。
- 改动自带验证:每次改完代码自动执行 linter 与测试套件,测试红了自己去修。
- 上下文可以贴进来:图片与网页能作为视觉上下文与参考文档塞进对话,需求也可以用语音说出来。
它覆盖 100+ 编程语言,python、javascript、rust、ruby、go、cpp、php、html、css 都在其中。在 IDE 里也能用:加个注释说明想要什么,它照着做。从别的网页聊天窗口复制粘贴代码回来接着改,同样是被支持的用法。
可用性与中文支持
- 官网 aider.chat 与文档托管在境外,境内访问通常需自备国际网络,pip 源可换国内镜像。
- 帮助文档与命令行提示以英文为主,中文材料多来自社区翻译与示例。
- 工具本体不需注册账号,但要自备所选模型服务的 API 密钥才能开始干活。
- 软件开源免费无订阅门槛,费用只来自你自选模型的接口调用计费。
主要功能
- 终端里与 LLM 结对编程
- 代码库地图(repo map)
- 自动 Git 提交与撤销
- 云端与本地模型都能接
- 改完自动跑 lint 与测试
- 支持图片、网页与语音输入
如何使用Aider
- 装命令行工具:执行 python -m pip install aider-install,装好后终端里就有 aider 命令,pip 源可换成国内镜像。
- 把模型与密钥交给它:以 DeepSeek 为例,aider --model deepseek --api-key deepseek=密钥,密钥写进环境变量或配置文件更省事。
- 进到代码目录再启动:在仓库根目录执行 aider,它会认出这是个 Git 仓库,并把工作区状态准备好。
- 用自然语言下达这轮任务:说清目标即可,它会先列出准备改动的文件,你确认后再动手。
- 审阅与提交:改动用熟悉的 git diff 去看,用 aider 自带的撤销或 git reset 回退不想要的部分,保留的部分由它写成提交信息提交。
- 接上 lint 与测试:把项目的检查命令配好,之后每轮改动自动执行,红了它会尝试修复自己造成的问题。
- 补充上下文:贴参考网页、贴界面截图,或者直接用语音描述需求。
第一次用建议挑一个小仓库跑通完整循环,先熟悉它读文件、给补丁、提交这三步,再拿到大项目里用。
核心优势
优点
- 开源免费,模型完全自选
- 改动即提交,Git 历史可回溯
- 大仓库靠代码库地图定位
- 可接国产模型与本地模型
局限
- 命令行门槛高,编辑器用户要适应
- 效果取决于所选模型与提示写法
- 需自备模型 API key 与可用网络
- 多文件改动仍要人工核对 diff
使用示例
- 场景一:空目录起步——把要做的东西说清楚,它搭目录、写首版代码、留下第一次提交。
- 场景二:给老项目加功能——真实仓库里说「给登录接口加失败次数限制」,它先读相关文件再改,代码库地图在这种场景里最见价值。
- 场景三:跨文件重构——改一处签名牵动几十个调用点,搜索、修改、跑测试串成一轮,改完一次性提交。
- 场景四:测试红了让它查——把报错贴进对话,它定位到出问题的位置并修掉,再跑一遍确认。
- 场景五:说不清就截图——需求还是模糊时,把界面截图丢进去让它照着实现。
这几类活儿的共同点是「有明确的验收标准」:代码能不能跑、测试过不过,比写文案那种主观题好判断得多,也正因如此它更适合被信任去改真实仓库。
同类工具对比
| 工具 | 形态 | 谁来驱动流程 | 适合谁 |
|---|---|---|---|
| Aider | 终端命令行,人机轮流 | 人确认每一步 | 熟悉命令行、要自选模型与成本的开发者 |
| Cursor | 图形界面编辑器 | 人在编辑器里边看边改 | 想要可视化与多文件并行改写的人 |
| Claude Code | 终端通用编码 agent | 派任务,agent 自己跑完 | 想把整段任务交出去的人 |
| GitHub Copilot | 插件形态铺进主流编辑器 | 行内补全为主,聊天为辅 | 看重团队协作与补全体验的人 |
| Cline | VS Code 里的开源 agent | 每步自己确认,密钥自备 | 要模型自由与步骤可控的人 |
| Replit | 浏览器里的云端开发环境 | 云端 agent 加在线运行环境 | 不想在本地装环境的人 |
| OpenHands | 长流程工程 agent | 派任务让它自己跑,自己回 PR | 想把流程整段自动化的人 |
分野主要在两处:一是界面形态,决定你能不能边写边看到结果;二是方向盘在谁手里,Aider 保留人在环里逐步确认,Claude Code 与 OpenHands 更接近把任务整段交出去,Cline 同样保留确认但把模型与密钥交给你自己指定。
产品定价
工具本体开源免费,没有订阅门槛;实际费用来自你自选模型的接口调用,用本地模型则不产生调用费用。
价格与档位可能随时调整,以上信息以官网为准。
应用场景
- 给已有仓库加功能
- 跨文件重构与批量修改
- 修测试与 lint 报错
- 新项目脚手架起步
常见问题
Aider 适合哪些人?
已经在终端里干活、熟悉 Git 分支与 diff 的人用起来最顺:它的每轮产出都是一次提交,出了问题回滚成本很低。反过来,如果你依赖图形界面的调试器、侧边文件树与可视化 diff,或者习惯在浏览器里点按钮完成一切,终端式的交互会有一段适应期,这部分成本要自己估进去。
国内能正常用吗?
服务与文档托管在境外,访问官网与文档通常需自备国际网络。安装走 pip 源,换成国内镜像一般能装上;真正的变量在模型调用——如果接的是 DeepSeek 这类国产模型的接口,模型请求本身可直连,不受境外链路影响。这一条决定了它在境内是「能用」还是「要绕路」。
必须自己准备模型账号吗?
是。Aider 本身不托管模型,你需要准备所选模型服务的 API 密钥并按调用量付费,也可以指向自己部署的本地权重模型,这时连调用费都不产生。工具免费、可选模型多,是它成本得分靠前的关键原因。
和图形界面的 AI 编辑器怎么选?
想边写边看到改动的实时效果、习惯用鼠标点选代码,图形界面那套更顺手;愿意接受命令行交互、看重每次改动都进 Git 历史、想按自己的需求挑模型,Aider 的路径更短。两者也可以并存——在 IDE 里写代码,把需要大范围改造的部分交给终端里的 Aider 处理。
相关工具与内容
- Aider 工具页:完整功能、优缺点与使用示例。 - Cursor:图形界面里的 AI 原生编辑器,改动预览更直观。 - Claude Code:终端形态的通用编码 agent,任务派出去后自己跑完。 - Cline:VS Code 里自带密钥的开源 agent,每一步都要你点头。
类似Aider的工具
以下工具与 Aider 在场景上有交集或重叠,可一并比较:
集成在编辑器与代码平台里的编程助手,从行内补全到对话问答、智能体任务与代码评审都能参与其中。
Anysphere 推出的 AI 代码编辑器,把编程工作流从「以文件为中心」改为「以 Agent 为中心」
跑在终端里的 AI 编码代理,能直接读改仓库、执行命令并提交改动,适合习惯命令行与 Git 流程的开发者
开源 AI 编程智能体,装在编辑器或终端里,每一步操作都先给你看、再执行,可自带你自己的模型密钥
AI编程的其他工具
腾讯云的低代码开发平台,拖拽加可视化配置就能搭出 PC Web、H5 与小程序应用,并能接通企业内部数据与微信生态
百度推出的智能代码助手,多智能体协同与全局上下文检索是主要特色,支持接入企业私有知识
腾讯云推出的数据库智能管家(DBbrain),通过采集慢查询日志、执行计划与统计信息,自动分析 SQL 性能瓶颈并给出索引优化、SQL 改写与参数调整建议;结合 AI 大模型生成诊断报告,并提供 tencentdb_ai 插件可在 SQL 内直接做 AI 分析、tencentdb_index_advisor 智能索引推荐,异常事件可定位根因
Cognition 的自主软件工程师,在云端领任务、自建环境跑测试,可在 Slack 与 Teams 内 @Devin 派活。
Aider 相关评测
Aider 评测:终端里的 AI 结对编程到底值不值
Aider 是开源的终端 AI 结对编程工具,能读代码库地图、直接改代码、跑测试并自动 Git 提交,模型可自选。适合熟悉命令行与 Git 的开发者,但境内访问与模型密钥是两道实打实的前置条件。