首页 › tips-tricks › 不交订阅也能写:Aider八个暗开关

导语:你以为 AI 写代码必须买 Cursor,其实终端里早有个"换什么模型都能跑"的开源老炮

在中国开发者的认知里,"AI 写代码"几乎等于三条路:Cursor 订阅、Claude Code 订阅、国产 Trae。但海外 Hacker News 上常年置顶、被所有 coding 大模型拿来做基准的那个工具——Aider——国内却少有人用。它的杀手锏不是某个花哨功能,而是三件事:开源免费、不绑任何一家模型(Claude/GPT/Gemini/DeepSeek/GLM/本地 Ollama 全能接)、改动全是原生 Git commit。最新版本已经到 v0.86.2(2026年2月)。

更关键的是:90% 的人装完 Aider 只会 aider 回车然后打字聊天,把它当了个"终端版 ChatGPT"。它真正值钱的八个暗开关——双模型架构师模式、ask/code 弹跳流、CONVENTIONS 规范缓存、--watch-files 内联注释、Repo Map 图排序、思考预算拨号、Git 原生回滚、editor 廉价编辑——几乎没人碰。这篇就把这八扇门一扇扇推开,每扇都给你命令、效果和场景。


暗门 1:/architect 双模型分工——让"会想不会改"的推理模型脱胎换骨

操作步骤:

aider --architect                      # 启动即进架构师模式
# 或在会话里粘性切换:
/chat-mode architect
# 指定一个便宜的"编辑"模型来落地:
aider --architect --editor-model deepseek/deepseek-chat

它干了什么:架构师模式下,Aider 把你的请求拆成两次调用——先让主模型(架构师)描述怎么解决,再把这份方案交给editor 模型翻译成具体的文件编辑指令。两者可以是同一个模型,也可以一贵一廉。

预期效果:对"推理强、但不会一次性给出干净 diff"的模型(典型如 OpenAI o 系列、Gemini 2.5 Pro thinking、DeepSeek-R1),配一个会改文件的 editor(GPT-4o、Sonnet、DeepSeek-V3),效果往往反超单模型的 code 模式。代价是两次请求,更慢更贵——但成功率拉满。

适用场景:跨多文件的大重构、有明确设计意图的复杂改动。简单补全别用,浪费钱。


暗门 2:/ask ↔ /code 弹跳流——单模型也能"先想后做"

操作步骤:

> /ask 我想给这个服务加个限流,有哪些方案?
(讨论两轮,敲定用令牌桶)
> do it                       # 注意:此刻已自然回到 code 模式,一句话就执行

它干了什么:用 /ask 模式只讨论、不动文件;聊到方案定死,回到 /code 模式,一句"go ahead"或"do 4"就让它照着刚才的共识动手。Aider 官方原话:这相当于"用单个模型模拟出 architect 模式"。

预期效果:省掉第二个模型的调用费,又能避免"边想边改、改到一半跑偏"。讨论阶段积累的上下文会完整带进执行阶段。

适用场景:不想为 architect 模式多花一次 API 钱,但又怕直接 code 模式乱改时。


暗门 3:CONVENTIONS.md + /read——只读规范文件,命中缓存不重复计费

操作步骤:

# 1. 在仓库根写个 CONVENTIONS.md,例如:
#    - HTTP 请求一律用 httpx,不用 requests
#    - 所有函数加类型注解
#    - 测试用 pytest

# 2. 以只读方式喂给它(关键:用 read,不是 add)
aider --read CONVENTIONS.md useragent.py
# 或会话内:
/read CONVENTIONS.md
# .aider.conf.yml —— 让它每次自动加载
read: CONVENTIONS.md
# 多个规范文件:
read: [CONVENTIONS.md, SECURITY.md]

它干了什么:用 --read / /read 加载的文件被标记为只读,并进入 prompt caching。同一份规范在长会话里反复出现时,命中缓存、不再重复计费。

预期效果:实测同样一个 httpbin 任务——不喂 CONVENTIONS 时 GPT 默认用 requests 且不加类型;喂了之后乖乖用 httpx 并补全类型注解。团队风格从此稳定,且几乎不增加 token 成本。社区还维护了一个 conventions 仓库 可直接抄。

适用场景:团队统一技术栈选型、强制代码风格、安全规范(如"禁止 eval")。


暗门 4:--watch-files 内联 AI 注释——在你熟悉的编辑器里就地发指令

操作步骤:

aider --watch-files

然后在任意代码里写一行注释,Aider 会盯着所有文件:

# 把这个函数改成令牌桶限流。AI!        # AI!  = 触发改代码
# 这里为什么要除以 1000? AI?         # AI?  = 触发回答问题
# 顺便把日志级别改成 DEBUG。 AI       # AI   = 仅标记,等下面的 AI! 一起触发
function factorial(n) // Implement this. AI!

它干了什么:--watch-files 让 Aider 监控全仓库,识别 # / // / -- 开头、且以 AI / AI! / AI? 起始或结尾的单行注释。AI 只标记,AI! 触发"收集所有 AI 注释并改代码",AI? 触发"回答问题"。

预期效果:你可以在 VSCode/Vim 里把指令写在要改的那一行旁边(in-context),不用切到 Aider 终端打字。还能跨多个文件散布 AI 注释,最后一个 AI! 统一触发——天然适合"在好几个地方协同改动"。

适用场景:重度 IDE 用户、需要在精确位置提精确需求、多文件联动重构。


暗门 5:Repo Map 图排序 + --map-tokens——不用 add 全仓,模型也知道全局长什么样

它干了什么:Aider 用 tree-sitter 抽取整个仓库的类/函数/签名,构建一张文件依赖图,再用图排序算法(PageRank 式)挑出"被引用最多、最相关"的符号,动态塞进上下文。你不用 /add 一堆文件,它也大致知道仓库里有哪些抽象、怎么调用。

--map-tokens 2048     # 默认 1k;加大让它看得更全(小仓库推荐)

预期效果:模型能复用现有模块而不是重复造轮子;当它判断需要看某文件时,会主动请求把那个文件加进上下文。注意它会动态膨胀——尤其在你一个文件都没 add 时,会自动放大 map 去理解全仓。

适用场景:接手大型陌生代码库。调优口诀:小仓调大、超大会话调小。


暗门 6:/think-tokens 与 /reasoning-effort——给推理模型"拨思考预算"

操作步骤:

/think-tokens 2000          # 限制思考 token 上限
/reasoning-effort medium    # 调推理强度 low/medium/high

它干了什么:对接推理模型(o 系列、R1、GLM thinking 等)时,控制它"想多久"。简单活儿别让它烧思考税,难题再放开。

预期效果:同一个推理模型,简单改个 typo 用 low、设计新模块用 high——延迟和账单都按需调节。这是把"模型越想越贵"的痛点直接做成了旋钮。

适用场景:日常混用推理模型、对延迟/成本敏感的批量任务。


暗门 7:Git 原生 + /undo 回滚——AI 写崩了,一条命令退回去

操作步骤:

/undo      # 撤销最近一次 AI commit,可连按多次退多步
/diff      # 看当前未提交改动
/commit    # 手动提交
aider --no-auto-commits    # 关闭自动提交(默认是开的)

它干了什么:Aider 的每一次文件改动都自动 git commit,message 是描述性的,且就是普通的 Git commit——git log、git reset 全部照常工作。/undo 撤销最近一次 AI 提交,可连按。

预期效果:这是 Aider 相对 Cursor/Copilot 的结构性优势——后者的"checkpoint"是各自私有的回滚机制,迁移/审计都麻烦;Aider 直接用你仓库的 Git,每一步可追溯、可 diff、可回退,团队协作零摩擦。

适用场景:所有场景。把它当"AI 操作的事后保险"。


暗门 8:/editor-model + 任意模型——把"价格差"玩到极致

# 架构师用强的,编辑用便宜的:
aider --architect --model gemini/gemini-2.5-pro --editor-model deepseek/deepseek-chat

# 全本地、零 API 成本:
aider --model ollama/qwen2.5-coder

# 国产模型走 OpenAI 兼容端点直接接(DeepSeek / GLM 等)

它干了什么:Aider 不绑任何一家厂商。Claude、GPT、Gemini、DeepSeek、GLM 都能接,本地走 Ollama / llama.cpp。配合暗门 1,可以把"贵的当大脑、廉价的当手"。

预期效果(中国用户最大信息差):DeepSeek / GLM 通过 OpenAI 兼容端点直连,成本是 Claude/GPT 的零头;纯本地 Ollama 则数据完全不出机器。而且 Aider 是终端工具,SSH 登服务器直接干活,比 GUI 类工具(Cursor/Trae)在无头环境顺得多——国内大量开发/运维在远端服务器上写脚本,这正好补上了 Cursor 够不到的盲区。

适用场景:预算敏感的独立开发、数据合规要求高的内网、纯服务器工作流。


一图看懂 Architect 模式的双模型流水线

flowchart LR
    U[你的需求] --> A[主模型·架构师<br/>提出解决方案]
    A -->|方案文本| E[Editor 模型<br/>翻译成文件编辑指令]
    E -->|editor-diff / whole| F[(修改源文件)]
    F --> G[Git 自动提交<br/>可 /undo 回滚]
    G --> R{满意?}
    R -->|否| U2[/undo 退回<br/>调整 /think-tokens 重来]
    R -->|是| DONE[完成]
    U2 --> A

配合暗门 6 的 --map-tokens 提供全局上下文、暗门 3 的 CONVENTIONS 约束风格,这条流水线就是 Aider 的"完整态"。


信息差总结:你知道的 vs 别人不知道的

维度 大多数人的认知 Aider 玩家在用的(信息差)
接入模型 绑定单一厂商订阅 任意模型 + 本地 Ollama,价格差十倍
思考成本 推理模型越想越贵,无控 /think-tokens /reasoning-effort 当旋钮拧
复杂改动 单模型一次写崩 /architect 双模型,成功率反超
改动追溯 Cursor 私有 checkpoint 原生 Git commit,/undo 一键退
规范约束 每次手打提醒 CONVENTIONS.md + /read 命中缓存
发指令方式 切到 AI 面板打字 --watch-files 就地写 AI! 注释
全局理解 手动 add 一堆文件 Repo Map 图排序自动挑相关符号
运行环境 必须有 GUI SSH/服务器终端直接跑

行动指南:今晚就能上手的三步

  1. 装好 + 接便宜模型:pip install aider-install && aider,先用 DeepSeek 或本地 Ollama 跑通,零成本验证它适不适合你的工作流。
  2. 建一份 CONVENTIONS.md:把你团队最在意的 3 条规范写进去,配 .aider.conf.yml 的 read: 永久加载——这一步立刻让输出风格稳定。
  3. 试一次完整流水线:在一个陌生仓库里,aider --architect --watch-files --map-tokens 2048,用 AI! 注释就地提一个跨文件需求,写崩了 /undo 退回。这一套跑下来,你就理解了为什么海外把它当 coding 模型基准。

优先级排序:先暗门 7(Git 回滚,保命)→ 暗门 8(接便宜/本地模型,省钱)→ 暗门 3(规范缓存,提质量)→ 暗门 1(架构师模式,啃硬骨头)。


参考来源


本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护。 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入