aider.el  by tninja

Emacs package for AI-assisted coding with Aider

Created 11 months ago
606 stars

Top 54.1% 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

1 week ago

Responsiveness

1 day

Pull Requests (30d)
5
Issues (30d)
3
Star History
24 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems") and Paul Gauthier Paul Gauthier(Founder of Aider).

aidermacs by MatthewZMD

0.3%
781
AI pair programming in Emacs, powered by Aider
Created 7 months ago
Updated 1 month ago
Starred by Alex Yu Alex Yu(Research Scientist at OpenAI; Former Cofounder of Luma AI), Will Brown Will Brown(Research Lead at Prime Intellect), and
7 more.

avante.nvim by yetone

0.5%
16k
Neovim plugin emulating Cursor AI IDE for AI-driven code assistance
Created 1 year ago
Updated 18 hours ago
Feedback? Help us improve.