---
title: Aider
description: Aider pair-programming CLI. No session resume; AO tracks activity via terminal classification.
---

import { Accordions, Accordion } from "fumadocs-ui/components/accordion";

<div style={{ display: "flex", alignItems: "center", gap: "0.75rem", margin: "0.5rem 0 1.25rem" }}>
  <Logo name="aider" size={28} />
  <span style={{ fontSize: "0.8125rem", color: "var(--color-fd-muted-foreground)" }}>Slot: <code>agent</code> · Name: <code>aider</code> · Binary: <code>aider</code></span>
</div>

[Aider](https://aider.chat) is a pair-programming CLI built around explicit file edits. It doesn't have a session-resume concept, but it does work well for small, focused issues.

<PlatformSupport macos="full" linux="full" windows="full" />

## Install

```bash
pip install aider-install && aider-install
```

Set your API key via Aider's normal config (`~/.aider.conf.yml` or env vars). AO doesn't manage credentials for you.

## Use

```yaml title="agent-orchestrator.yaml"
agent: aider
```

## How it works

- **Launch:** `aider` runs in the worktree. AO pipes the issue prompt in via the normal Aider UX.
- **Activity tracking:** Aider doesn't emit a structured event log. AO writes `{workspace}/.ao/activity.jsonl` based on terminal output classification — the pattern matcher knows Aider's common prompts (diff review, confirm apply, etc.).
- **PR + git tracking:** PATH wrappers for `gh` / `git` record PRs and commits.
- **Session resume:** Not supported.

## Environment variables

| Variable | Set by AO | Purpose |
|---|---|---|
| `AO_SESSION_ID` | ✓ | AO session id |
| `AO_ISSUE_ID` | ✓ | Issue identifier |
| `PATH` | ✓ | Prepends `~/.ao/bin` |
| `GH_PATH` | ✓ | Absolute path to real `gh` |

## Troubleshooting

<Accordions>
  <Accordion title="Aider hangs on file-edit confirmation">
    Aider prompts before applying diffs. If you want fully autonomous runs, configure Aider's `--yes-always` via `~/.aider.conf.yml`. AO won't inject this for you — it's your call whether the agent should auto-apply.
  </Accordion>
  <Accordion title="Dashboard cost shows $0">
    AO doesn't parse Aider's cost output. The cost column stays empty.
  </Accordion>
</Accordions>
