Files
agency-agents/integrations/aider
Hotragn Pettugani d3a3f573e3 fix(aider): CONVENTIONS.md is a roster index, not 3.8 million characters of agents (#871)
Aider loads a conventions file into context and keeps it there for the whole
session — that is what the file is for, and the docs say to load it with
--read so prompt caching can hold it. This integration concatenated every
agent body into it. At 279 agents that is 3,816,372 characters, roughly a
million tokens. No model takes that. Anyone who ran

    ./scripts/install.sh --tool aider

got a CONVENTIONS.md that either blows the context window on the first turn
or bills for a million tokens trying.

CONVENTIONS.md is now the roster index it was described as: one entry per
agent with the name, the description, the division, and the path to the
agent file. 96,823 characters, down from 3.8 million. The header explains
how to pull a single agent's full instructions into the session:

    /read-only /path/to/agency-agents/engineering/engineering-frontend-developer.md

Naming an agent in a prompt still works the way it did — the description is
what the model needed for that, and it is still there.

test-convert-outputs.sh now holds the index to being an index: it fails if
CONVENTIONS.md grows past 250,000 characters, if it does not list exactly
one path per roster agent, or if any path it prints does not resolve. The
existing round-trip check on the accumulated file still covers the names and
descriptions.
2026-09-20 18:35:10 -05:00
..

Aider Integration

CONVENTIONS.md is the roster index: every agent's name, what it is for, its division, and the path to its full instructions.

Why an index and not the agents

Aider keeps a conventions file in context for the whole session — that is the point of the file. The 279 agent bodies together are about 3.8 million characters, roughly a million tokens, so a conventions file holding all of them does not fit in any model and costs a fortune in the attempt.

The index is about 97,000 characters (~24k tokens). Load it read-only so aider marks it cacheable, and pull in a single agent's full instructions when you actually need them.

Install

# Run from your project root
cd /your/project
/path/to/agency-agents/scripts/install.sh --tool aider

Use an agent

Naming the agent is usually enough — its description is already in context:

Use the Frontend Developer agent to refactor this component.

When you want the agent's full instructions, read its file into the session. The index gives you the path:

/read-only /path/to/agency-agents/engineering/engineering-frontend-developer.md

Manual usage

aider --read CONVENTIONS.md

--read marks the file read-only and lets aider cache it when prompt caching is enabled, so the index is not re-sent on every turn.

Regenerate

./scripts/convert.sh --tool aider