Skip to main content

Aider is AI pair programming in your terminal

Project description

Why aider-ce?

aider-ce (aka cecli, pronounced like "Cecily") is a community-driven fork of the Aider AI pair programming tool. Aider is a fantastic piece of software with a wonderful community but it has been painfully slow in receiving updates in the quickly evolving AI tooling space.

We aim to foster an open, collaborative ecosystem where new features, experiments, and improvements can be developed and shared rapidly. We believe in genuine FOSS principles and actively welcome contributors of all skill levels.

If you are looking for bleeding-edge features or want to get your hands dirty with the internals of an AI coding agent, here's your sign. LLMs are a part of our lives from here on out so join us in learning about and crafting the future.

Links

Discord Chat 🞄 Changelog 🞄 Issue Queue

Documentation/Other Notes:

You can see a selection of the enhancements and updates by comparing the help output:

aider --help > aider.help.txt
cecli --help > cecli.help.txt
diff aider.help.txt cecli.help.txt -uw --color

Installation Instructions

This project can be installed using several methods:

Package Installation

pip install aider-ce

or

uv pip install aider-ce

The package exports an aider-ce command that accepts all of Aider's configuration options

Tool Installation

uv tool install --python python3.12 aider-ce

Use the tool installation so aider doesn't interfere with your development environment

Configuration

The documentation above contains the full set of allowed configuration options but I highly recommend using an .aider.conf.yml file. A good place to get started is:

model: <model of your choice>
agent: true
analytics: false
auto-commits: true
auto-save: true
auto-load: false
cache-prompts: true
check-update: true
debug: false
enable-context-compaction: true
env-file: .aider.env
multiline: true
preserve-todo-list: true
show-model-warnings: true
watch-files: false
agent-config: |
  {
    "large_file_token_threshold": 12500,
    "skip_cli_confirmations": false
  }
mcp-servers: |
  {
    "mcpServers":
      {
        "context7":{
          "transport":"http",
          "url":"https://mcp.context7.com/mcp"
        }
      }
  }

Use the adjacent .aider.env file to store model api keys as environment variables, e.g:

ANTHROPIC_API_KEY="..."
GEMINI_API_KEY="..."
OPENAI_API_KEY="..."
OPENROUTER_API_KEY="..."
DEEPSEEK_API_KEY="..."

Project Roadmap/Goals

The current priorities are to improve core capabilities and user experience of the Aider project

  1. Base Asynchronicity (aider-ce coroutine-experiment branch)
  • Refactor codebase to have the main loop run asynchronously
  • Update test harness to work with new asynchronous methods
  1. Repo Map Accuracy - Discussion
  1. Context Discovery - Discussion
  • Develop AST-based search capabilities
  • Enhance file search with ripgrep integration
  • Implement RAG (Retrieval-Augmented Generation) for better code retrieval
  • Build an explicit workflow and local tooling for internal discovery mechanisms
  1. Context Delivery - Discussion
  • Use workflow for internal discovery to better target file snippets needed for specific tasks
  • Add support for partial files and code snippets in model completion messages
  1. TUI Experience - Discussion
  • Add a full TUI (probably using textual) to have a visual interface competitive with the other coding agent terminal programs
  • Re-integrate pretty output formatting
  • Implement a response area, a prompt area with current auto completion capabilities, and a helper area for management utility commands
  1. Agent Mode - Discussion
  • Renaming "navigator mode" to "agent mode" for simplicity
  • Add an explicit "finished" internal tool
  • Add a configuration json setting for agent mode to specify allowed local tools to use, tool call limits, etc.
  • Add a RAG tool for the model to ask questions about the codebase
  • Make the system prompts more aggressive about removing unneeded files/content from the context
  • Add a plugin-like system for allowing agent mode to use user-defined tools in simple python files
  • Add a dynamic tool discovery tool to allow the system to have only the tools it needs in context

All Contributors (Both Aider Main and Aider-CE)

@paul-gauthier @dwash96 @tekacs @ei-grad @joshuavial @chr15m @fry69 @quinlanjager @caseymcc @shladnik @itlackey @tomjuggler @szmania @vk4s @titusz @daniel-vainsencher @bphd @akaihola @jalammar @schpet @iamFIREcracker @KennyDizi @ivanfioravanti @mdeweerd @fahmad91 @itsmeknt @cheahjs @youknow04 @pjcreath @pcamp @ErichBSchulz

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aider_ce-0.89.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aider_ce-0.89.0-py3-none-any.whl (559.4 kB view details)

Uploaded Python 3

File details

Details for the file aider_ce-0.89.0.tar.gz.

File metadata

  • Download URL: aider_ce-0.89.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for aider_ce-0.89.0.tar.gz
Algorithm Hash digest
SHA256 50aa5250eae3bf8b9ead149023c25caaac7d142fd3484518228f7337caa680b6
MD5 6bcf6c449db1e7c037bd31c9ce9bdc6c
BLAKE2b-256 d04bb04e4f6ad0169760e2783774e7691386ab875749b8fd02ae2a92be875c5b

See more details on using hashes here.

File details

Details for the file aider_ce-0.89.0-py3-none-any.whl.

File metadata

  • Download URL: aider_ce-0.89.0-py3-none-any.whl
  • Upload date:
  • Size: 559.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for aider_ce-0.89.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f6465c69ff0b9843fde2b4fde9eabdb6afbccd4f008d6fa42527f0ad3fb7da62
MD5 af1a3b8ba530a0e4ea77ebf9d4435bf5
BLAKE2b-256 63070c20f22ce0c2d5366f7e4aba7d8c34bcf4026a8b00c8b7e0e558795daffd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page