All agent CLIs
aider in NeuroSquad

aider,with a canvas around it

aider has no hooks, no plugins and no MCP. NeuroSquad adds them from the inside: a small Python extension that loads with aider in each card, reports its turns and questions, and lets its model use the canvas — terminals, browsers, notes, other agents.

Official siteaider.chat
  • The real aider, your own models and keys
  • Nothing written to ~/.aider.conf.yml
  • Free, for Windows 10 and 11
Lifecycle

It knows when aider is done — and when it’s asking

aider’s only built-in signal, `--notifications-command`, fires the same way for “finished” and “asking you”. So NeuroSquad’s extension listens at aider’s own control points instead: sending to the model, asking a question, waiting at the prompt.

Coder.send_messageaider method
Working

aider starts sending your message to the model. The card’s icon spins and the Squad status card counts it as working. Tool rounds and aider’s own lint and test fixes stay one turn.

io.confirm_askaider method
Needs you

aider asks a question — run a command, add a URL, create a git repo. The card pulses and the toast leads with aider’s question and its subject, like “Run shell command? — rm -rf dist”.

io.get_inputaider method
Finished

aider is back at its > prompt. That, not a quiet terminal, ends the turn: the next queued prompt goes out, the journal gets the answer, a toast says it’s done.

Only real questions

Nothing is reported when aider answers itself (--yes-always, “don’t ask again”). The “what’s new” notice after an update is turned off with --no-show-release-notes.

One status everywhere

The card, the sidebar, the Squad status card, custom cards and the phone all read the same status.

Leaves no trace in your shell

The extension removes its own variables and restores your PYTHONPATH, so /run, /test and lint commands start clean.

Watch it work

Three things you’ll do every day

Replicas of the app, played step by step. When aider asks, the answer is yours.

aider fixes the parser and commits it, then suggests a shell command and asks before running it — the card waits for you, the journal writes itself.

Everything it gets

Everything aider can do in NeuroSquad

aider brings no integration points of its own, so nearly all of this is built by NeuroSquad’s extension on aider’s own mechanisms. Each card says how — and the last group says where it stops.

  • 01

    Knows its state

    aider’s own control points, patched from inside the process, report every turn and every question.

  • Finished and waiting are different

    Coder.send_message marks the card working, confirm_ask and prompt_ask — waiting on you, get_input — finished: aider is back at its prompt. Emulated from aider’s own control flow, not guessed from silence.

    Docs: Finished and waiting are different
  • A notification with aider’s question

    The toast leads with aider’s words and their subject — Add URL to the chat? — https://…, Run shell command? — npm test. One per agent; a click flies to the card.

    Docs: A notification with aider’s question
  • Every card is its own session

    aider keeps one history per folder, so two cards in one project would restore each other. Each card gets its own history files, and --restore-chat-history after a restart. /clear and /reset start a new session.

    Docs: Every card is its own session
  • The Squad status card

    Every AI agent of the workspace on one card, with aider’s model from its last request (before that AIDER_MODEL or your .aider.conf.yml) and the live time of its turn.

    Docs: The Squad status card
  • Custom cards can follow it

    Cards built with the Card SDK see the same statuses and turn events, and read aider’s last answer from the card’s session log.

    Docs: Custom cards can follow it
  • 02

    Works through the canvas

    An arrow from the card is a set of tools. The extension is the MCP client aider doesn’t have.

  • Arrows are tools — without a restart

    An arrow to a terminal, browser, note or agent gives aider’s model terminal_*, browser_*, note_* or agent_*. The extension re-reads the tool list before every request, so a new arrow works on the very next one.

    Docs: Arrows are tools — without a restart
  • It can add cards itself

    canvas_spawn_card opens a terminal, browser, note or helper agent next to it, joined by an arrow — an aider helper gets its first prompt once it reports it is at its prompt.

    Docs: It can add cards itself
  • Canvas mode

    --no-suggest-shell-commands and --no-detect-urls switch off aider’s only two ways to run a command and reach the web. Neither is an approval, so --yes-always can’t bring them back.

    Docs: Canvas mode
  • MCP servers from the registry

    Servers you installed in NeuroSquad reach aider through a second client. Each call asks first through aider’s own confirm_ask — “Run third-party tool?” — with an explicit yes.

    Docs: MCP servers from the registry
  • Skills from skills.sh

    An arrow to a skill card gives aider’s model skill_load through the same bridge, live on the next request.

    Docs: Skills from skills.sh
  • 03

    Built for long runs

    Full contexts, rate limits and long queues are handled on the card.

  • Context meter and Compact

    The ring shows the last request’s prompt against the model’s window from aider’s own model info. aider has no manual compaction — the extension adds /compact, running aider’s own summariser over the whole chat.

    Docs: Context meter and Compact
  • Continues after a rate limit

    After aider’s own retries give up, the final error reaches the card. A reset time like “try again in 2h 15m” is read from it, and “continue” goes out then.

    Docs: Continues after a rate limit
  • Prompt queue

    Line up the next messages: each goes out when aider is back at its prompt — exactly, not after a pause. Daily prompts too.

    Docs: Prompt queue
  • Hand off to a fresh agent

    Start a new agent beside it — aider or any other CLI — with a summary of the work typed in, ready for you to send.

    Docs: Hand off to a fresh agent
  • Journal

    Each finished answer is added to a connected note. The text comes from the card’s session log, with the tool calls cut out.

    Docs: Journal
  • 04

    Works in a team

    aider next to other aider cards, or next to Claude Code and Codex, on one project.

  • Isolated worktrees

    Give an aider card its own git worktree, so its auto-commits never collide with another agent’s edits. A setup command and files to copy prepare it first.

    Docs: Isolated worktrees
  • Add a reviewer

    One click starts an agent on a different CLI in the same worktree, with an arrow from the author and a prompt to review without editing anything.

    Docs: Add a reviewer
  • Lead or helper

    An arrow to another agent gives aider agent_send and agent_wait — or makes it the helper. Tested live: an aider lead spawned an aider helper and got its answer back.

    Docs: Lead or helper
  • Dangerous mode, per card

    --yes-always answers aider’s questions for you. aider still insists on an explicit yes before a shell command — its own rule, kept.

    Docs: Dangerous mode, per card
  • Roles

    Reviewer, tester, researcher or your own: the role is typed in as a first prompt you can see and edit, and never re-sent behind your back.

    Docs: Roles
  • 05

    Cost, control and access

    What it spends, what it may spend, which model it runs on, and how you reach it.

  • Usage and cost per request

    aider prints tokens and cost and forgets them. The extension logs each request with the provider’s own usage block — cache included — and counts the side calls aider leaves out of its totals, like commit messages.

    Docs: Usage and cost per request
  • Budget brake

    A limit per workspace. Past it, aider gets one Ctrl+C — which only interrupts, it doesn’t quit — and automatic prompts stop. Raise the limit and it’s lifted.

    Docs: Budget brake
  • OpenRouter models

    Run a card on an OpenRouter model with NeuroSquad’s key. It goes only into that card’s environment, and is re-applied after aider loads your .env files, so the card bills the key you chose.

    Docs: OpenRouter models
  • Dictation into the prompt

    Hold a hotkey and speak. Speech is recognised on your machine and typed into aider’s prompt.

    Docs: Dictation into the prompt
  • From your phone

    Scan a QR code and the whole canvas opens in the phone’s browser: read aider’s terminal, answer its question, send the next prompt.

    Docs: From your phone
  • 06

    How it’s done — and where it stops

    What NeuroSquad has to build around aider, and what it deliberately doesn’t.

  • A Python extension, loaded by Python itself

    Emulated. The card puts NeuroSquad’s folder first on PYTHONPATH; its sitecustomize.py patches aider as it loads. Every patch is guarded — if a new aider renames a method, only that feature switches off.

    Docs: A Python extension, loaded by Python itself
  • Tools through a text protocol

    aider sends its model no tools at all. So the model writes <neurosquad_call tool="…"> in its reply, and the extension runs it and sends the result back. Strong models follow it; a weak one may describe a call instead of making it.

    Docs: Tools through a text protocol
  • Ctrl+C lands when bytes arrive

    On Windows, aider notices an interrupt only when the next bytes of the reply come in. A provider that stalls without streaming holds the interrupt until it answers.

    Docs: Ctrl+C lands when bytes arrive
  • No AGENTS.md — on purpose

    Impossible natively: aider reads no instructions file by itself (conventions only with --read). NeuroSquad doesn’t slip AGENTS.md in, because that would change what aider sends for everyone.

    Docs: No AGENTS.md — on purpose
  • Installed by you, not the wizard

    aider is a Python app (pip, uv, pipx). The setup wizard installs only through npm and winget, so it leaves aider to you. The card finds aider wherever it is on PATH.

    Docs: Installed by you, not the wizard
At a glance

Who’s waiting, and what it cost

Two cards that answer the questions you ask most when several aider cards run at once.

The Squad status card

Every agent of the workspace with its status, model and turn time. The one waiting on you comes first, with aider’s question. Tap a status to filter.

  • coupon-fixaidergpt-5Run shell command? — rm -rf distNeeds you1:17
  • api-migrationaidergpt-5Move routes to the new clientWorking11:07
  • db-indexesaiderdeepseek-chatAdd the missing indexesWorking5:25
  • docs-passaiderdeepseek-chatUpdate the READMEFinished3 min. ago

Usage & cost

Read from each card’s session log — one line per request, with the provider’s own token counts. The rows always add up to the total.

AgentTokensCost
coupon-fix412,804$0.96
api-migration305,117$0.71
docs-pass88,430$0.03
Total806,351$1.70
Exact to the picodollar; rounded only on screen.Each row includes aider’s side calls: commit messages and history summaries.
Under the hood

The real aider, plus a few options

NeuroSquad starts the same aider you run yourself, in a real terminal in the card. This is everything it adds:

What NeuroSquad adds to the command
❯ aider
PYTHONPATH=<NeuroSquad’s extension>;<yours>every launchNeuroSquad’s extension loads first; yours stays after it
--chat-history-file <this card’s session>.chat.mdevery launchthis card’s own chat history, not the folder’s shared one
--input-history-file <this card’s session>.input.historyevery launchand its own input history
--no-show-release-notesevery launchno “what’s new?” question after an update
--restore-chat-historylater launchesthe same conversation after a restart
--no-suggest-shell-commands --no-detect-urlscanvas modeno shell suggestions, no URL scraping: the canvas’s cards instead
--yes-alwaysdangerous modeanswer yes to aider’s questions

Nothing written to your config

~/.aider.conf.yml, .env files and model settings are never touched. The options above only override the options they name.

Your models, your keys

aider runs on whatever model and key it already uses. Your NeuroSquad account is separate and never sees it.

Secrets stay out of files

The hook URL, the MCP token and any OpenRouter key travel only in that one process’s environment — never on disk, never in arguments.

FAQ

aider in NeuroSquad, answered

Give aider a canvas

Free for Windows 10 and 11. Your code, your keys and your costs stay on your machine.