你有没有过这种体验:在 Claude 网页里让它改一段代码,它给了一段,你复制回编辑器,发现上下文对不上,又切回去贴报错——一晚上耗在窗口切换上。用 aider 可以把整个项目目录直接交给 AI,你只管在终端里下指令,它读真文件、改真文件、还能替你提交 git。
准备清单:装好 Python 3.8+,用 pip 装 aider(pip install aider-chat);进入你的项目目录并确保是个 git 仓库(没有就 git init);准备一个模型 API key(aider 支持 Claude、GPT、DeepSeek 等,官网文档有各家的配置方式)。第一次跑建议用小项目试水。
第一步,在项目根目录启动:
aider --model claude-3-5-sonnet # 指定模型;想用 GPT 系列可换 --model gpt-4o
启动后它会扫描 git 里的文件,你用 /add 文件名 把要改的文件加进上下文。只加相关文件,别一股脑全加,既省 token 又让模型聚焦。看到提示符变成 > 就成功了。
第二步,用大白话下指令,比如:
给 utils.py 的 format_date 函数加一个参数 timezone,默认本地时区,并补一个测试用例到 test_utils.py
关键在"具体到函数名和文件"——指令越像给同事的交代,它改得越准。aider 会直接改文件、跑测试,把 diff 显示在终端,你按回车接受或拒绝每一处改动。
第三步,验收:改动接受后,让它 /commit,它会用清晰的消息提交;之后你用 git log 或 git diff 复核,确认每个改动都讲得通。判断成功的标准是:功能跑通、diff 你能逐行讲出"为什么这么改",而不是一团看不懂的自动生成。
进阶:把常用的项目约定写进根目录的 .aider.conf.yml(比如"用 TypeScript、禁止 any、测试用 vitest"),以后每次启动自动加载,它给的方案更贴你的栈。长期下来,aider 像一个住进终端、记得你所有约定的搭档。顺便说一句,aider 也支持语音输入模式,开车或手脏时口头下指令也能改文件,但这功能在嘈杂环境识别率一般,关键改动还是建议在终端里确认。
说一个避坑点:涉及删文件、改权限、动数据库迁移这类破坏性操作,务必让它先说清"我要做什么、为什么",你确认后再放行,别闭眼回车。另外别把 .env、密钥、内网地址留在会被 /add 进上下文的文件里,aider 会把上下文发给模型,敏感信息比你想的更容易跟着请求出去。把 AI 当那个随时在线、记性极好的搭档,但最终的回车键,始终握在你手里。