aider.el  by tninja

Emacs package for AI-assisted coding with Aider

created 10 months ago
570 stars

Top 57.4% on sourcepulse

GitHubView on GitHub
Project Summary

This Emacs Lisp package provides an AI-assisted programming interface for the terminal-based Aider tool, targeting Emacs users who prefer an integrated development environment. It aims to streamline AI pair programming workflows by offering features inspired by advanced AI code editors, enhancing productivity through AI-driven code generation, refactoring, testing, and code analysis directly within Emacs.

How It Works

aider.el leverages Emacs's comint-mode to interact with the Aider CLI. It provides a structured interface for sending code context and prompts to Aider, and for processing its responses. The package integrates AI capabilities with established software engineering practices like Test-Driven Development (TDD) and refactoring, drawing inspiration from seminal books in these fields. It also includes utilities for project planning, code review, and bootstrapping new files, all managed through Emacs keybindings and menus.

Quick Start & Requirements

  • Installation: package-install aider (MELPA recommended) or package-vc-install for Emacs 30+.
  • Prerequisites: Emacs >= 26.1, Aider CLI installed, Transient, Magit, and Markdown-mode.
  • Configuration: Set aider-args to specify AI models (e.g., "--model" "sonnet") and API keys via environment variables (e.g., ANTHROPIC_API_KEY).
  • Resources: Requires Aider CLI and an active AI model subscription/API key.
  • Docs: Aider, Aider.el

Highlighted Details

  • AI-assisted agile development: TDD, refactoring, and legacy code handling based on established software engineering books.
  • Advanced code reading assistant inspired by Diomidis Spinellis's "Code Reading: The Open Source Perspective."
  • Integration with magit-blame for historical code analysis and diff review.
  • Project software planning discussion capabilities via aider-software-planning.
  • Support for repository-specific Aider prompt files for organized task management.

Maintenance & Community

The project is actively maintained by tninja with contributions from a growing community. Discussions and support are available via GitHub issues.

Licensing & Compatibility

The project is licensed under the MIT License, allowing for commercial use and integration with closed-source projects.

Limitations & Caveats

The comint-mode based interaction lacks direct file tracking, limiting some advanced AI comment features; aider-implement-todo is provided as a workaround. The project warns about potential bugs in AI-generated code, emphasizing the need for verification and unit testing.

Health Check
Last commit

4 days ago

Responsiveness

1 day

Pull Requests (30d)
11
Issues (30d)
5
Star History
106 stars in the last 90 days

Explore Similar Projects

Starred by Tobi Lutke Tobi Lutke(Cofounder of Shopify), John Resig John Resig(Author of jQuery; Chief Software Architect at Khan Academy), and
12 more.

opencode by sst

7.8%
16k
CLI tool for AI-assisted coding in the terminal
created 3 months ago
updated 1 day ago
Starred by Boris Cherny Boris Cherny(Creator of Claude Code; MTS at Anthropic), Nat Friedman Nat Friedman(Former CEO of GitHub), and
21 more.

aider by Aider-AI

0.8%
36k
AI pair programming in your terminal
created 2 years ago
updated 2 weeks ago
Feedback? Help us improve.