<!-- title: 不交订阅也能写：Aider八个暗开关 -->
<!-- domain: tips-tricks -->

## 导语：你以为 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` 双模型分工——让"会想不会改"的推理模型脱胎换骨

**操作步骤**：

```bash
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`——只读规范文件，命中缓存不重复计费

**操作步骤**：

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

# 2. 以只读方式喂给它（关键：用 read，不是 add）
aider --read CONVENTIONS.md useragent.py
# 或会话内：
/read CONVENTIONS.md
```

```yaml
# .aider.conf.yml —— 让它每次自动加载
read: CONVENTIONS.md
# 多个规范文件：
read: [CONVENTIONS.md, SECURITY.md]
```

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

**预期效果**：实测同样一个 httpbin 任务——不喂 CONVENTIONS 时 GPT 默认用 `requests` 且不加类型；喂了之后乖乖用 `httpx` 并补全类型注解。团队风格从此稳定，且几乎不增加 token 成本。社区还维护了一个 [conventions 仓库](https://github.com/Aider-AI/conventions) 可直接抄。

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

---

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

**操作步骤**：

```bash
aider --watch-files
```

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

```python
# 把这个函数改成令牌桶限流。AI!        # AI!  = 触发改代码
# 这里为什么要除以 1000？ AI?         # AI?  = 触发回答问题
# 顺便把日志级别改成 DEBUG。 AI       # AI   = 仅标记，等下面的 AI! 一起触发
```

```js
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` 一堆文件，它也大致知道仓库里有哪些抽象、怎么调用。

```bash
--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    # 手动提交
```

```bash
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` + 任意模型——把"价格差"玩到极致

```bash
# 架构师用强的，编辑用便宜的：
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 模式的双模型流水线

```text
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（架构师模式，啃硬骨头）。

---

## 参考来源

- Aider 官方 · Chat modes（code/ask/architect/help 与 ask/code 工作流）：https://aider.chat/docs/usage/modes.html
- Aider 官方 · Separating code reasoning and editing（architect/editor 原理）：https://aider.chat/2024/09/26/architect.html
- Aider 官方 · Conventions（CONVENTIONS.md + /read 缓存）：https://aider.chat/docs/usage/conventions.html
- Aider 官方 · Watch files with AI comments（--watch-files 内联注释）：https://aider.chat/docs/usage/watch.html
- Aider 官方 · Repo map（图排序与 --map-tokens）：https://aider.chat/docs/repomap.html
- Aider Cheat Sheet 2026（v0.86.x，全 41 条斜杠命令与 CLI 标志）：https://toolsbase.dev/en/reference/aider-commands
- Aider GitHub 仓库 + 社区 conventions 仓库：https://github.com/Aider-AI/aider

---
> 本文由「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学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
