Aider-AI/aider
48.3
Weak · 26 September 2026
37.6k
lines of production code
Python
primary language
5
measurements over time
What this system is
This release introduces significant architectural enhancements to the Aider CLI, including new 'Architect' and 'Ask' coder types for high-level planning and analysis, alongside expanded language support for repository mapping and code navigation across dozens of programming languages. The project also launches a comprehensive benchmarking suite for evaluating LLM coding performance and modernizes its build system with pyproject.toml and uv-based dependency management. Additionally, the update brings a major overhaul of the website and documentation, featuring new interactive charts, blog infrastructure, and expanded model metadata for recent AI models.
Features
Add new benchmark and code contribution visualizations to the website
The website now includes several new interactive charts to visualize performance and contribution data. A 'blame' chart displays the percentage of new code written by Aider by release, alongside a stacked bar chart showing total lines of code contributed by Aider versus humans. Additionally, new benchmark charts visualize pass rates and syntax errors for code-in-json strategies, while separate charts display quantization performance and QwQ model results. The site also features a dynamic leaderboard graph that allows users to select and compare model performance, with support for highlighting specific models and filtering by edit format.
_aider/website/\includes · high confidence
Added Asciinema player assets for terminal recordings
The website now includes the CSS and minified JavaScript for the Asciinema player, enabling the display of interactive terminal recordings on the site.
aider/website/assets/asciinema · high confidence
Aider CLI enhancements: new commands, verbose logging, and configuration options
Aider now supports a \--pretty\ argument to enable pretty-printed output in the configuration YAML, and a \--verbose\ flag to provide detailed logging of loaded and searched YAML files. The \/read-only\ command has been expanded to handle directories, and the \/code\ command is introduced for code-focused chat interactions. Additionally, the tool now offers a \--lint-cmd\ argument to allow users to specify a lint command multiple times, and a \--read\ parameter to specify read-only files. The \/undo\ command has been updated to only abort if files modified in the last commit are dirty, and the \/quit\ command has been added for exiting the application.
aider · high confidence
Aider website and documentation site restructured and expanded
The website files have been reorganized into the aider/website directory, introducing a new homepage layout with feature cards, a dynamic 'Singularity' badge, and a two-column hero section. The site now includes a dedicated HISTORY.md release notes page, a PowerShell install script for uv, and a Bash installer script. Configuration for Jekyll, including analytics and external links, has been added to \_config.yml.
aider/website · high confidence
Expanded language support for code navigation
Aider now supports code navigation (repomap) for a wider range of programming languages, including C\#, MATLAB, and OCaml, while adding support for Bash, Arduino, and Chatito. Additionally, existing language support for C, C++, C\#, D, Elixir, Elm, Gleam, Go, Java, JavaScript, Lua, Python, R, Racket, Ruby, Rust, Solidity, Swift, and Udev has been refined to use more specific tag names and namespaces for definitions and references.
aider/queries/tree-sitter-language-pack · high confidence
Expanded language support for repository map
Aider now supports the repository map feature for a wider range of programming languages. New tree-sitter tag queries have been added for Bash, C, C\#, C++, Dart, Emacs Lisp, Elixir, Elm, Fortran, Go, Haskell, HCL (Terraform), Java, JavaScript, Julia, Kotlin, MATLAB, OCaml, PHP, Python, QL (CodeQL), Ruby, Rust, Scala, TypeScript, and Zig. This allows the repository map to understand the structure and references in these languages, improving context awareness for AI-assisted coding in these environments.
aider/queries/tree-sitter-languages · high confidence
Initial project scaffolding and configuration
The repository was initialized with essential project configuration files, including \.dockerignore\, \.flake8\, \.gitignore\, \.pre-commit-config.yaml\, \CNAME\, \CONTRIBUTING.md\, \HISTORY.md\, \LICENSE.txt\, \MANIFEST.in\, and \README.md\. These files establish the project's coding standards, pre-commit hooks for linting and formatting, documentation for contributors, and the project's legal and identity metadata.
(repo-wide) · high confidence
Introduce Architect and Ask coders for high-level code analysis and planning
Added new coder types to the \aider/coders\ module: \ArchitectCoder\ and \AskCoder\. The \ArchitectCoder\ is designed to provide high-level architectural direction and planning for code changes, while the \AskCoder\ is intended for answering questions about the codebase without making modifications. Both coders are now exported from the \aider/coders/\_\init\\_.py\ module, making them available for use within the application.
aider/coders · high confidence
New benchmarking harness for evaluating LLM coding performance
A complete benchmarking suite has been introduced to quantitatively measure how well Aider and various LLMs perform on coding tasks. The suite includes a Dockerized environment for safe execution of untrusted code, a Python-based driver script to run exercises from the Exercism repository, and tools to generate statistical reports and visualizations of pass rates and timing. This allows users to evaluate model performance across different edit formats and track improvements over time.
benchmark · high confidence
New model metadata and settings for recent AI models
Added configuration files (model-metadata.json and model-settings.yml) that define metadata, pricing, and behavioral settings for a wide range of new and updated models, including GPT-4.1, GPT-4.5, GPT-5, GPT-5.1/5.2/5.3/5.4/5.5, GPT-5 Pro, GPT-5 Codex, O3, O3-Mini, O3-Pro, O4-Mini, Claude 3.7/4/4.5/4.6/4.7, Claude Opus 4, Gemini 2.5 Pro/Flash/Flash-Lite, Gemini 3, Grok-3/Grok-3-Mini, DeepSeek R1/V3/Chat, Qwen 2.5/3, and others, enabling the application to recognize and correctly configure these models.
aider/resources · high confidence
New scripts for automation, attribution, and asset generation
Added several new Python scripts to the \scripts/\ directory to automate project maintenance and reporting. \blame.py\ calculates code attribution statistics, including the percentage of lines written by Aider, and can output results as YAML. \issues.py\ automates GitHub issue management, such as closing duplicate or stale issues and labeling unlabeled questions. \clean\_metadata.py\ surgically removes specific keys from JSON metadata files. \homepage.py\ fetches download statistics from Google BigQuery or pepy.tech to update website badges. Additionally, \30k-image.py\ generates a celebratory SVG for 30k GitHub stars, \logo\_svg.py\ creates a stylized logo, and \dl\_icons.py\ downloads required icons. The \history\_prompts.py\ file provides the prompt template for updating the project history.
scripts · high confidence
Website icon assets added and styled
The website's icon assets have been added to the \aider/website/assets/icons\ directory. This includes a set of SVG icons (brain, check-all, code-tags, content-copy, image-multiple, map-outline, microphone, monitor, source-branch) and browser configuration files (browserconfig.xml, site.webmanifest, safari-pinned-tab.svg). The SVG icons are styled with a green fill color (\#12B886), aligning with the site's color scheme.
aider/website/assets/icons · high confidence
Behavioural changes
Added blog index and redirect layout templates
The website structure has been reorganized with the addition of a blog index page that lists all non-draft posts with their titles, excerpts, and dates, alongside a new redirect layout template that handles page redirections via HTML meta refresh and JavaScript.
_aider/website/\layouts, aider/website/blog · high confidence
New styling for blog posts and chat transcripts
Added a new custom stylesheet (custom.scss) that introduces styling for blog post cards (including date formatting and shadow effects) and chat transcript blocks (applying a dark terminal-like theme with green text, monospace fonts, and a macOS-style window header).
_aider/website/\sass · high confidence
Requirements restructured into modular, Python-version-aware dependency files
The project's dependency management has been refactored from a flat structure into a modular system using separate .in files for different feature sets (browser, dev, help, playwright, tree-sitter) and a shared common-constraints.txt. This change introduces Python version-specific constraints (e.g., numpy, scipy, tree-sitter) to ensure compatibility across supported Python versions, and explicitly pins versions to resolve conflicts (e.g., networkx, torch, scikit-learn).
requirements · high confidence
Updated website assets and styles
The website assets directory has been updated with new and modified files. Several new SVG chart images were added to the assets folder, including \2024-03-07-claude-3.svg\, \2024-04-09-gpt-4-turbo-laziness.svg\, \2024-04-09-gpt-4-turbo.svg\, \benchmarks-0125.svg\, \benchmarks-1106.svg\, \benchmarks-speed-1106.svg\, \benchmarks-udiff.svg\, \benchmarks.svg\, and \models-over-time.svg\. Additionally, a new \home.css\ stylesheet was introduced to handle the site's visual presentation, and the \logo.svg\ file was updated.
aider/website/assets · high confidence
Test coverage
Add basic test suite for analytics and AWS credential handling; Add browser mode integration test; Added Arduino fixture for language recognition tests; Added Common Lisp test fixture; Added Elm language fixture for testing; Added HCL test fixture for AWS infrastructure; Added MATLAB test fixture for repository map support; Added Pony language test fixture; Added Python test fixture for Person class and greeting logic; Added R language test fixture for repository mapping; Added Racket test fixture; Added Scala test fixture for language support; Added TypeScript and TSX test fixture files; Added Zig test fixture for repomap; Added bash test fixture for tree-sitter tags; Added comprehensive tests for the help command and URL generation; Added comprehensive tests for web scraping and Playwright integration; Added language fixture files for tests; Added sample code fixtures for testing; Added test fixtures and unit tests for file watching and repository mapping; Added test fixtures for C\#, Emacs Lisp, and Go; Added test fixtures for C++, Elixir, and Java; Added tests/\_\init\\_.py to fix module resolution; Added udev test fixture for rule parsing.
Dependencies
Updated project dependencies and build configuration
The project's dependency management has been modernized by migrating to a \pyproject.toml\-based build system using \setuptools\ and \setuptools\_scm\ for dynamic versioning. All Python requirements files (\requirements.txt\, \requirements-dev.txt\, \requirements-help.txt\, \requirements-browser.txt\, \requirements-playwright.txt\) have been regenerated via \uv pip compile\, updating numerous packages to their latest compatible versions (e.g., \litellm\ 1.82.3, \llama-index-core\ 0.14.18, \streamlit\ 1.55.0, \numpy\ 2.4.3). Additionally, a \Gemfile\ was added to manage Ruby dependencies for the website build.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 35 → 48 (+13.4)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 70 → 52 (-18.7)
- Architecture 99 (new)
- Maturity 86 → 69 (-16.7)
- Readiness 15 → 56 (+40.8)
- Security 36 → 54 (+18.4)
- Accessibility 39 (new)
Resolved (66)
- (anonymous) (cognitive 32) (aider/website/_includes/leaderboard_table.js)
- (anonymous) (cyclomatic 20) (aider/website/_includes/leaderboard_table.js)
- Change coupling: code-in-json-benchmark.js ↔ code-in-json-syntax.js (aider/website/_includes/code-in-json-benchmark.js)
- Coverage not measured — test suite did not build
- Decision and consequences are present but buried in a data table with no decision statement (e.g. which inference settings were chosen or why) and no trade-offs; the visible text is mostly benchmark results and links (aider/website/_posts/2025-05-08-qwen3.md)
- Decision and consequences are present but the body is mostly boilerplate HTML (benchmarks link, chart container with JS code), with no context/problem framing or trade-offs (aider/website/_posts/2024-08-26-sonnet-seems-fine.md)
- Dimension evaluation failed
- High IaC: AWS-0164 (tests/fixtures/languages/hcl/test.tf)
- High IaC: DS-0002 (benchmark/Dockerfile)
- High IaC: DS-0029 (benchmark/Dockerfile)
- High IaC: DS-0029 (benchmark/Dockerfile)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- …and 46 more
New (239)
- AutoCompleter.get_completions (cognitive 19) (aider/io.py)
- Change coupling: base_coder.py ↔ base_prompts.py (aider/coders/base_coder.py)
- Change coupling: editblock_prompts.py ↔ udiff_prompts.py (aider/coders/editblock_prompts.py)
- ChatSummary.summarize_real (cognitive 17) (aider/history.py)
- Coder.init (cognitive 61) (aider/coders/base_coder.py)
- Coder.init (cyclomatic 43) (aider/coders/base_coder.py)
- Coder.allowed_to_edit (cognitive 20) (aider/coders/base_coder.py)
- Coder.calculate_and_show_tokens_and_cost (cognitive 16) (aider/coders/base_coder.py)
- Coder.create (cognitive 24) (aider/coders/base_coder.py)
- Coder.create (cyclomatic 17) (aider/coders/base_coder.py)
- Coder.format_chat_chunks (cognitive 27) (aider/coders/base_coder.py)
- Coder.format_chat_chunks (cyclomatic 19) (aider/coders/base_coder.py)
- Coder.get_announcements (cognitive 25) (aider/coders/base_coder.py)
- Coder.get_announcements (cyclomatic 18) (aider/coders/base_coder.py)
- Coder.get_file_mentions (cognitive 17) (aider/coders/base_coder.py)
- Coder.get_platform_info (cognitive 18) (aider/coders/base_coder.py)
- Coder.send_message (cognitive 87) (aider/coders/base_coder.py)
- Coder.send_message (cyclomatic 46) (aider/coders/base_coder.py)
- Coder.show_send_output_stream (cognitive 40) (aider/coders/base_coder.py)
- Coder.show_send_output_stream (cyclomatic 21) (aider/coders/base_coder.py)
- …and 219 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
Aider-AI/aider was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 26 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 5dc9490bb35f9729ef2c95d00a19ccd30c26339c — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-09659c52afae.