返回项目目录
开发工具精选项目

Aider

以 Git 和 Repo Map 为核心的终端 AI Pair Programming 工具。

主要语言Python
开源许可Apache-2.0
项目类型开发工具
维护状态活跃维护
OVERVIEW

项目概述

Aider 在终端中与模型协作编辑本地代码,使用 Repo Map 理解大型仓库,并通过自动提交、撤销、Lint 和测试形成可审查的修改循环。

Aider 是采用 Apache-2.0 许可证的开源 AI Pair Programming 工具,主要在终端中运行并直接修改本地 Git 仓库。开发者可以显式把文件加入对话,也可以让 Aider 借助 Repo Map 从整个仓库选取相关上下文。它会展示模型生成的代码改动,默认自动提交 AI 修改,并可使用 /diff 和 /undo 审查或撤销。Aider 通过 LiteLLM 连接多家云模型和本地 OpenAI 兼容模型,还提供 Code、Ask、Architect、Help 等对话模式、自动 Lint/Test、图像与网页上下文、语音输入和实验性浏览器界面。

当前包版本PyPI v0.86.2
核心工作流Terminal + Git + Repo Map
主要模式Code / Ask / Architect / Help
FEATURES

主要特点

Aider 把模型生成、仓库上下文、代码编辑和 Git 历史组合为一个紧凑的终端协作流程。

01

终端 Pair Programming

直接在 Shell 中与模型讨论和修改代码,可从命令行指定文件,也能在会话中使用 /add、/read-only 和 /drop 管理上下文。

02

Repo Map

利用 Tree-sitter 提取仓库中的关键类、函数、类型和调用签名,以较少 Token 向模型提供跨文件结构信息。

03

Git 自动提交与撤销

默认把每轮 AI 修改保存为带说明的 Git Commit,可用 /diff 查看变化、用 /undo 撤销最近一次 Aider 提交。

04

多种对话模式

Code 模式直接修改代码,Ask 模式只讨论,Architect 模式由规划模型提出方案、编辑模型落实改动,Help 模式解答使用问题。

05

广泛的模型支持

通过 LiteLLM 连接 OpenAI、Anthropic、Gemini、DeepSeek、OpenRouter、Bedrock 等服务,也可使用 Ollama 或兼容 API 的本地模型。

06

自动 Lint 与测试

编辑后可运行内置或自定义 Linter,并通过 /test、test-cmd 和 auto-test 把失败输出交给模型继续修复。

07

多种编辑格式

根据模型能力选择 Diff、Whole、Architect/Editor 等编辑策略,使推理模型与代码编辑模型可以各自承担合适角色。

08

丰富的输入方式

除文本和文件外,还能加入网页、图像、剪贴板内容与语音输入,并提供实验性浏览器界面和编辑器集成方式。

USE CASES

适用场景

适合喜欢在终端中工作、希望每轮 AI 修改都有清晰 Git 记录,并愿意主动控制文件上下文的开发者。

小步功能开发

选择少量相关文件,用连续对话完成实现、调整和测试,并通过独立 Commit 保留每一步变更。

跨文件重构

借助 Repo Map 理解符号和依赖关系,在不把整个仓库塞入上下文的情况下修改调用方与实现。

代码理解与方案讨论

先使用 Ask 模式分析现状和比较方案,确认方向后切回 Code 模式落实修改。

推理与编辑模型协作

在 Architect 模式中让强推理模型制定方案,再由擅长精确编辑的模型生成文件改动。

测试驱动修复

配置项目的 Lint、编译和测试命令,让 Aider 根据失败输出反复修正语法、类型和行为问题。

配置与文档维护

除源代码外,也可编辑 Markdown、Dockerfile、Shell 配置和其他文本文件,并利用 Git 审查改动。

EVALUATION

优点与注意事项

技术选型不仅要看能力,也要理解它带来的团队成本。

主要优点

Aider 擅长的地方

  • Git 原生工作流让 AI 修改容易审查、比较和撤销
  • Repo Map 能以紧凑形式提供大型仓库的关键结构
  • 文件加入与只读上下文机制让开发者明确控制编辑范围
  • Code、Ask 和 Architect 模式支持从讨论到落地的渐进协作
  • LiteLLM 覆盖大量云模型、聚合服务与本地模型
  • 自动 Lint 和测试可把生成、验证、修复串成短反馈循环

需要注意

采用前应考虑的问题

默认会创建 Git 提交

Aider 默认自动提交模型修改,也可能先提交已有的 Dirty Changes。团队若有严格 Commit 规范,应提前调整 auto-commits 和 dirty-commits。

Commit Hook 默认可能被跳过

Aider 默认使用 --no-verify 创建提交;依赖 pre-commit 校验的项目应启用 git-commit-verify,或在合并前单独运行完整检查。

没有操作系统级隔离

限制聊天文件和保留 Git 历史不等于沙箱。执行命令、访问外部路径或处理不可信仓库时,仍应使用低权限账户或容器。

模型必须擅长代码编辑

并非所有兼容模型都能稳定生成 Aider 所需的编辑格式;本地或较弱模型可能只输出代码文本,却无法可靠修改文件。

Architect 模式成本更高

Architect 与 Editor 通常会产生两次模型请求,可能提高质量,但也会增加延迟、Token 消耗和模型配置复杂度。

上下文需要主动管理

加入过多完整文件会增加费用并干扰模型;Repo Map 也不保证包含所有业务细节,应按任务选择可编辑与只读文件。

Python 依赖最好单独安装

Aider 依赖较多且部分版本固定,直接安装到业务项目环境可能发生冲突;官方建议使用 aider-install、uv 或 pipx 隔离。

代码会发送给所选模型服务

对话文件、Repo Map、错误输出和提示可能离开本机。使用私有代码前应核对 Provider 的数据政策,妥善保存 API Key。

QUICK START

快速开始

将 Aider 安装到独立 Python 环境,配置模型凭据,然后在 Git 仓库中选择需要修改的文件开始对话。

1安装到独立环境
bash
python -m pip install aider-install
aider-install

aider --version
2配置模型并启动
bash
export ANTHROPIC_API_KEY="<your-api-key>"

cd your-project
aider --model sonnet
3只加入相关文件
bash
aider src/app.ts src/app.test.ts

# 也可以启动后在对话中输入
/add src/app.ts
/read-only package.json
/tokens
4在讨论与编辑间切换
bash
# 以下命令在 Aider 会话中输入
/ask 解释当前认证流程,不要修改文件
/code 按刚才的方案增加令牌过期处理
/architect 重构这一模块并保持公开 API 不变
5配置项目检查
yaml
# .aider.conf.yml
auto-lint: true
lint-cmd: npm run lint
auto-test: true
test-cmd: npm test
git-commit-verify: true
auto-commits: true
dirty-commits: false
6审查与撤销修改
bash
# 以下命令在 Aider 会话中输入
/diff
/test npm test
/undo

# 离开 Aider 后仍可使用普通 Git
git log --oneline -5

下一步:Aider 默认会自动提交 AI 改动,并可能先提交工作区中已有的未提交修改。首次在现有仓库中使用前,请先查看 git status,并根据团队流程配置 auto-commits、dirty-commits 和 git-commit-verify。

ALTERNATIVES

类似项目

这些项目也能在本地代码仓库中执行 AI 辅助开发,但在自主工具调用、客户端形态和 Git 工作流方面有所不同。

COMPARISON

Aider vs OpenCode

Aider 和 OpenCode 都是开源、多模型的本地编码工具。Aider 更像围绕 Git、显式文件上下文和代码编辑优化的终端 Pair Programmer;OpenCode 则提供更完整的 Agent 工具调用、权限系统和多客户端平台。

比较维度AiderOpenCode
核心定位Git 原生的终端 AI Pair Programming跨终端、桌面和 IDE 的 AI Coding Agent
主要界面终端,另有实验性浏览器界面TUI、Desktop、IDE、Web 与 Server
仓库上下文显式聊天文件 + Tree-sitter Repo Map文件工具、搜索、LSP、项目规则与 Agent 上下文
工作模式Code、Ask、Architect、HelpBuild、Plan、自定义 Agent 与 Subagent
变更记录默认每轮自动 Git Commit,可直接 /undo会话 Diff、Undo/Redo 与项目 Git 工作区
模型生态LiteLLM + OpenAI 兼容本地模型AI SDK + Models.dev,支持 75+ Provider
扩展能力配置、模型元数据、Lint/Test 和输入工具MCP、Plugins、Custom Tools、Commands 与 Server API
更适合希望小步编辑并用 Git 精确审查每轮修改需要自主工具循环、细粒度权限和多客户端集成
如何选择

如果你偏好在终端中明确选择文件、逐轮审查 Diff,并让每次 AI 修改自动进入 Git 历史,Aider 的工作流非常直接;如果你需要 Plan、Subagent、MCP、权限规则、桌面或 IDE 客户端,OpenCode 的平台能力更完整。两者都应先在非关键分支试用,并为命令执行、敏感文件和外部服务设置明确边界。

VERIFICATION

资料核验

版本、维护信息与本页采用的官方资料来源。

最后核验2026 年 7 月 28 日
核验版本aider-chat v0.86.2
内容维护Docs100 编辑整理
项目维护状态活跃维护

本页依据 Aider 官方安装、使用、Repo Map、Git、Chat Modes、Lint/Test、模型与配置文档整理。PyPI 包版本、主要语言、许可证和维护状态通过 PyPI 与 GitHub 官方 API 核验。

维护状态核验2026 年 7 月 26 日 · 最近可见代码活动:2026 年 5 月 22 日

官方仓库未归档,核验时最近可见的代码活动日期为 2026 年 5 月 22 日。该状态表示项目近期仍有公开维护活动,不代表固定发布频率或长期支持承诺。

查看官方仓库