Metadata-Version: 2.2
Name: brade
Version: 1.0.3
Summary: Brade is Aider with attitude.
Project-URL: Homepage, https://github.com/deansher/brade
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development
Requires-Python: <3.13,>=3.12
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: aiohappyeyeballs==2.4.4
Requires-Dist: aiohttp==3.11.11
Requires-Dist: aiosignal==1.3.2
Requires-Dist: annotated-types==0.7.0
Requires-Dist: anyio==4.7.0
Requires-Dist: attrs==24.3.0
Requires-Dist: backoff==2.2.1
Requires-Dist: beautifulsoup4==4.12.3
Requires-Dist: certifi==2024.12.14
Requires-Dist: cffi==1.17.1
Requires-Dist: charset-normalizer==3.4.1
Requires-Dist: click==8.1.8
Requires-Dist: configargparse==1.7
Requires-Dist: diff-match-patch==20241021
Requires-Dist: diskcache==5.6.3
Requires-Dist: distro==1.9.0
Requires-Dist: filelock==3.16.1
Requires-Dist: flake8==7.1.1
Requires-Dist: frozenlist==1.5.0
Requires-Dist: fsspec==2024.12.0
Requires-Dist: gitdb==4.0.12
Requires-Dist: gitpython==3.1.44
Requires-Dist: grep-ast==0.4.1
Requires-Dist: h11==0.14.0
Requires-Dist: httpcore==1.0.7
Requires-Dist: httpx==0.27.2
Requires-Dist: huggingface-hub==0.27.0
Requires-Dist: idna==3.10
Requires-Dist: importlib-metadata==7.2.1
Requires-Dist: importlib-resources==6.5.2
Requires-Dist: jinja2==3.1.5
Requires-Dist: jiter==0.8.2
Requires-Dist: json5==0.10.0
Requires-Dist: jsonschema==4.23.0
Requires-Dist: jsonschema-specifications==2024.10.1
Requires-Dist: langfuse==2.57.4
Requires-Dist: litellm==1.56.10
Requires-Dist: llm-multiple-choice==0.1.3
Requires-Dist: markdown-it-py==3.0.0
Requires-Dist: markupsafe==3.0.2
Requires-Dist: mccabe==0.7.0
Requires-Dist: mdurl==0.1.2
Requires-Dist: multidict==6.1.0
Requires-Dist: networkx==3.2.1
Requires-Dist: numpy==1.26.4
Requires-Dist: openai==1.59.3
Requires-Dist: packaging==24.2
Requires-Dist: pathspec==0.12.1
Requires-Dist: pexpect==4.9.0
Requires-Dist: pillow==11.1.0
Requires-Dist: prompt-toolkit==3.0.48
Requires-Dist: propcache==0.2.1
Requires-Dist: psutil==6.1.1
Requires-Dist: ptyprocess==0.7.0
Requires-Dist: pycodestyle==2.12.1
Requires-Dist: pycparser==2.22
Requires-Dist: pydantic==2.10.4
Requires-Dist: pydantic-core==2.27.2
Requires-Dist: pydub==0.25.1
Requires-Dist: pyflakes==3.2.0
Requires-Dist: pygments==2.18.0
Requires-Dist: pypandoc==1.14
Requires-Dist: pyperclip==1.9.0
Requires-Dist: python-dotenv==1.0.1
Requires-Dist: pyyaml==6.0.2
Requires-Dist: referencing==0.35.1
Requires-Dist: regex==2024.11.6
Requires-Dist: requests==2.32.3
Requires-Dist: rich==13.9.4
Requires-Dist: rpds-py==0.22.3
Requires-Dist: scipy==1.13.1
Requires-Dist: smmap==5.0.2
Requires-Dist: sniffio==1.3.1
Requires-Dist: sounddevice==0.5.1
Requires-Dist: soundfile==0.13.0
Requires-Dist: soupsieve==2.6
Requires-Dist: tenacity==8.5.0
Requires-Dist: tiktoken==0.8.0
Requires-Dist: tokenizers==0.19.1
Requires-Dist: tqdm==4.67.1
Requires-Dist: tree-sitter==0.21.3
Requires-Dist: tree-sitter-languages==1.10.2
Requires-Dist: typing-extensions==4.12.2
Requires-Dist: urllib3==2.3.0
Requires-Dist: wcwidth==0.2.13
Requires-Dist: wrapt==1.17.0
Requires-Dist: yarl==1.18.3
Requires-Dist: zipp==3.21.0
Provides-Extra: dev
Requires-Dist: alabaster==1.0.0; extra == "dev"
Requires-Dist: attrs==24.3.0; extra == "dev"
Requires-Dist: babel==2.16.0; extra == "dev"
Requires-Dist: build==1.2.2.post1; extra == "dev"
Requires-Dist: certifi==2024.12.14; extra == "dev"
Requires-Dist: cfgv==3.4.0; extra == "dev"
Requires-Dist: charset-normalizer==3.4.1; extra == "dev"
Requires-Dist: click==8.1.8; extra == "dev"
Requires-Dist: codespell==2.3.0; extra == "dev"
Requires-Dist: cogapp==3.4.1; extra == "dev"
Requires-Dist: contourpy==1.3.1; extra == "dev"
Requires-Dist: cycler==0.12.1; extra == "dev"
Requires-Dist: dill==0.3.9; extra == "dev"
Requires-Dist: distlib==0.3.9; extra == "dev"
Requires-Dist: docutils==0.21.2; extra == "dev"
Requires-Dist: filelock==3.16.1; extra == "dev"
Requires-Dist: fonttools==4.55.3; extra == "dev"
Requires-Dist: identify==2.6.5; extra == "dev"
Requires-Dist: idna==3.10; extra == "dev"
Requires-Dist: imagesize==1.4.1; extra == "dev"
Requires-Dist: imgcat==0.6.0; extra == "dev"
Requires-Dist: iniconfig==2.0.0; extra == "dev"
Requires-Dist: jinja2==3.1.5; extra == "dev"
Requires-Dist: kiwisolver==1.4.8; extra == "dev"
Requires-Dist: lox==0.12.0; extra == "dev"
Requires-Dist: markdown-it-py==3.0.0; extra == "dev"
Requires-Dist: markupsafe==3.0.2; extra == "dev"
Requires-Dist: matplotlib==3.10.0; extra == "dev"
Requires-Dist: mdurl==0.1.2; extra == "dev"
Requires-Dist: multiprocess==0.70.17; extra == "dev"
Requires-Dist: nodeenv==1.9.1; extra == "dev"
Requires-Dist: numpy==1.26.4; extra == "dev"
Requires-Dist: packaging==24.2; extra == "dev"
Requires-Dist: pandas==2.2.3; extra == "dev"
Requires-Dist: pandas-stubs==2.2.3.241126; extra == "dev"
Requires-Dist: pathos==0.3.3; extra == "dev"
Requires-Dist: pillow==11.1.0; extra == "dev"
Requires-Dist: pip-tools==7.4.1; extra == "dev"
Requires-Dist: platformdirs==4.3.6; extra == "dev"
Requires-Dist: pluggy==1.5.0; extra == "dev"
Requires-Dist: pox==0.3.5; extra == "dev"
Requires-Dist: ppft==1.7.6.9; extra == "dev"
Requires-Dist: pprintpp==0.4.0; extra == "dev"
Requires-Dist: pre-commit==4.0.1; extra == "dev"
Requires-Dist: pygments==2.18.0; extra == "dev"
Requires-Dist: pyparsing==3.2.1; extra == "dev"
Requires-Dist: pyproject-hooks==1.2.0; extra == "dev"
Requires-Dist: pytest==8.3.4; extra == "dev"
Requires-Dist: pytest-clarity==1.0.1; extra == "dev"
Requires-Dist: python-dateutil==2.9.0.post0; extra == "dev"
Requires-Dist: pytz==2024.2; extra == "dev"
Requires-Dist: pyyaml==6.0.2; extra == "dev"
Requires-Dist: referencing==0.35.1; extra == "dev"
Requires-Dist: requests==2.32.3; extra == "dev"
Requires-Dist: rich==13.9.4; extra == "dev"
Requires-Dist: rpds-py==0.22.3; extra == "dev"
Requires-Dist: semver==3.0.2; extra == "dev"
Requires-Dist: shellingham==1.5.4; extra == "dev"
Requires-Dist: six==1.17.0; extra == "dev"
Requires-Dist: snowballstemmer==2.2.0; extra == "dev"
Requires-Dist: sphinx==8.1.3; extra == "dev"
Requires-Dist: sphinx-rtd-theme==3.0.2; extra == "dev"
Requires-Dist: sphinxcontrib-applehelp==2.0.0; extra == "dev"
Requires-Dist: sphinxcontrib-devhelp==2.0.0; extra == "dev"
Requires-Dist: sphinxcontrib-htmlhelp==2.1.0; extra == "dev"
Requires-Dist: sphinxcontrib-jquery==4.1; extra == "dev"
Requires-Dist: sphinxcontrib-jsmath==1.0.1; extra == "dev"
Requires-Dist: sphinxcontrib-qthelp==2.0.0; extra == "dev"
Requires-Dist: sphinxcontrib-serializinghtml==2.0.0; extra == "dev"
Requires-Dist: tree-sitter==0.21.3; extra == "dev"
Requires-Dist: typer==0.15.1; extra == "dev"
Requires-Dist: types-beautifulsoup4==4.12.0.20241020; extra == "dev"
Requires-Dist: types-docutils==0.21.0.20241128; extra == "dev"
Requires-Dist: types-html5lib==1.1.11.20241018; extra == "dev"
Requires-Dist: types-jsonschema==4.23.0.20241208; extra == "dev"
Requires-Dist: types-psutil==6.1.0.20241221; extra == "dev"
Requires-Dist: types-pygments==2.18.0.20240506; extra == "dev"
Requires-Dist: types-pytz==2024.2.0.20241221; extra == "dev"
Requires-Dist: types-pyyaml==6.0.12.20241230; extra == "dev"
Requires-Dist: types-requests==2.32.0.20241016; extra == "dev"
Requires-Dist: types-setuptools==75.6.0.20241223; extra == "dev"
Requires-Dist: types-tqdm==4.67.0.20241221; extra == "dev"
Requires-Dist: types-tree-sitter-languages==1.10.0.20240612; extra == "dev"
Requires-Dist: typing-extensions==4.12.2; extra == "dev"
Requires-Dist: tzdata==2024.2; extra == "dev"
Requires-Dist: urllib3==2.3.0; extra == "dev"
Requires-Dist: virtualenv==20.28.1; extra == "dev"
Requires-Dist: wheel==0.45.1; extra == "dev"
Provides-Extra: help
Requires-Dist: aiohappyeyeballs==2.4.4; extra == "help"
Requires-Dist: aiohttp==3.11.11; extra == "help"
Requires-Dist: aiosignal==1.3.2; extra == "help"
Requires-Dist: annotated-types==0.7.0; extra == "help"
Requires-Dist: anyio==4.7.0; extra == "help"
Requires-Dist: attrs==24.3.0; extra == "help"
Requires-Dist: certifi==2024.12.14; extra == "help"
Requires-Dist: charset-normalizer==3.4.1; extra == "help"
Requires-Dist: click==8.1.8; extra == "help"
Requires-Dist: dataclasses-json==0.6.7; extra == "help"
Requires-Dist: deprecated==1.2.15; extra == "help"
Requires-Dist: dirtyjson==1.0.8; extra == "help"
Requires-Dist: filelock==3.16.1; extra == "help"
Requires-Dist: filetype==1.2.0; extra == "help"
Requires-Dist: frozenlist==1.5.0; extra == "help"
Requires-Dist: fsspec==2024.12.0; extra == "help"
Requires-Dist: greenlet==3.0.3; extra == "help"
Requires-Dist: h11==0.14.0; extra == "help"
Requires-Dist: httpcore==1.0.7; extra == "help"
Requires-Dist: httpx==0.27.2; extra == "help"
Requires-Dist: huggingface-hub==0.27.0; extra == "help"
Requires-Dist: idna==3.10; extra == "help"
Requires-Dist: jinja2==3.1.5; extra == "help"
Requires-Dist: joblib==1.4.2; extra == "help"
Requires-Dist: llama-index-core==0.12.9; extra == "help"
Requires-Dist: llama-index-embeddings-huggingface==0.4.0; extra == "help"
Requires-Dist: markupsafe==3.0.2; extra == "help"
Requires-Dist: marshmallow==3.23.3; extra == "help"
Requires-Dist: mpmath==1.3.0; extra == "help"
Requires-Dist: multidict==6.1.0; extra == "help"
Requires-Dist: mypy-extensions==1.0.0; extra == "help"
Requires-Dist: nest-asyncio==1.6.0; extra == "help"
Requires-Dist: networkx==3.2.1; extra == "help"
Requires-Dist: nltk==3.9.1; extra == "help"
Requires-Dist: numpy==1.26.4; extra == "help"
Requires-Dist: packaging==24.2; extra == "help"
Requires-Dist: pillow==11.1.0; extra == "help"
Requires-Dist: propcache==0.2.1; extra == "help"
Requires-Dist: pydantic==2.10.4; extra == "help"
Requires-Dist: pydantic-core==2.27.2; extra == "help"
Requires-Dist: pyyaml==6.0.2; extra == "help"
Requires-Dist: regex==2024.11.6; extra == "help"
Requires-Dist: requests==2.32.3; extra == "help"
Requires-Dist: safetensors==0.5.0; extra == "help"
Requires-Dist: scikit-learn==1.6.0; extra == "help"
Requires-Dist: scipy==1.13.1; extra == "help"
Requires-Dist: sentence-transformers==3.3.1; extra == "help"
Requires-Dist: sniffio==1.3.1; extra == "help"
Requires-Dist: sqlalchemy==2.0.36; extra == "help"
Requires-Dist: sympy==1.13.1; extra == "help"
Requires-Dist: tenacity==8.5.0; extra == "help"
Requires-Dist: threadpoolctl==3.5.0; extra == "help"
Requires-Dist: tiktoken==0.8.0; extra == "help"
Requires-Dist: tokenizers==0.19.1; extra == "help"
Requires-Dist: torch==2.5.1; extra == "help"
Requires-Dist: tqdm==4.67.1; extra == "help"
Requires-Dist: transformers==4.44.2; extra == "help"
Requires-Dist: typing-extensions==4.12.2; extra == "help"
Requires-Dist: typing-inspect==0.9.0; extra == "help"
Requires-Dist: urllib3==2.3.0; extra == "help"
Requires-Dist: wrapt==1.17.0; extra == "help"
Requires-Dist: yarl==1.18.3; extra == "help"
Provides-Extra: browser
Requires-Dist: altair==5.5.0; extra == "browser"
Requires-Dist: attrs==24.3.0; extra == "browser"
Requires-Dist: blinker==1.9.0; extra == "browser"
Requires-Dist: cachetools==5.5.0; extra == "browser"
Requires-Dist: certifi==2024.12.14; extra == "browser"
Requires-Dist: charset-normalizer==3.4.1; extra == "browser"
Requires-Dist: click==8.1.8; extra == "browser"
Requires-Dist: gitdb==4.0.12; extra == "browser"
Requires-Dist: gitpython==3.1.44; extra == "browser"
Requires-Dist: idna==3.10; extra == "browser"
Requires-Dist: jinja2==3.1.5; extra == "browser"
Requires-Dist: jsonschema==4.23.0; extra == "browser"
Requires-Dist: jsonschema-specifications==2024.10.1; extra == "browser"
Requires-Dist: markdown-it-py==3.0.0; extra == "browser"
Requires-Dist: markupsafe==3.0.2; extra == "browser"
Requires-Dist: mdurl==0.1.2; extra == "browser"
Requires-Dist: narwhals==1.20.1; extra == "browser"
Requires-Dist: numpy==1.26.4; extra == "browser"
Requires-Dist: packaging==24.2; extra == "browser"
Requires-Dist: pandas==2.2.3; extra == "browser"
Requires-Dist: pillow==11.1.0; extra == "browser"
Requires-Dist: protobuf==5.29.2; extra == "browser"
Requires-Dist: pyarrow==18.1.0; extra == "browser"
Requires-Dist: pydeck==0.9.1; extra == "browser"
Requires-Dist: pygments==2.18.0; extra == "browser"
Requires-Dist: python-dateutil==2.9.0.post0; extra == "browser"
Requires-Dist: pytz==2024.2; extra == "browser"
Requires-Dist: referencing==0.35.1; extra == "browser"
Requires-Dist: requests==2.32.3; extra == "browser"
Requires-Dist: rich==13.9.4; extra == "browser"
Requires-Dist: rpds-py==0.22.3; extra == "browser"
Requires-Dist: six==1.17.0; extra == "browser"
Requires-Dist: smmap==5.0.2; extra == "browser"
Requires-Dist: streamlit==1.41.1; extra == "browser"
Requires-Dist: tenacity==8.5.0; extra == "browser"
Requires-Dist: toml==0.10.2; extra == "browser"
Requires-Dist: tornado==6.4.2; extra == "browser"
Requires-Dist: typing-extensions==4.12.2; extra == "browser"
Requires-Dist: tzdata==2024.2; extra == "browser"
Requires-Dist: urllib3==2.3.0; extra == "browser"
Requires-Dist: watchdog==4.0.2; extra == "browser"
Provides-Extra: playwright
Requires-Dist: greenlet==3.0.3; extra == "playwright"
Requires-Dist: playwright==1.47.0; extra == "playwright"
Requires-Dist: pyee==12.0.0; extra == "playwright"
Requires-Dist: typing-extensions==4.12.2; extra == "playwright"


<!-- Edit README.md, not index.md -->

# Brade is deansher's personal fork of Aider.

I intend to stay very close to the upstream project, but I want to make some changes to suit my needs.

This project and the programming assistant that it implements are named after a young, smart, angry, 
female villain in a young adult science fiction book series called Skyward, which are among my favorite books.

## Corporate Deployment

Brade supports secure corporate deployments with enforced settings. Organizations can build their own Docker images based on our published images, with specific API endpoints, model selections, and other settings enforced while still allowing user customization. See [docker/README.md](docker/README.md) for details.

# Aider is AI pair programming in your terminal

Aider lets you pair program with LLMs,
to edit code in your local git repository.
Start a new project or work with an existing git repo.
Aider works best with GPT-4o & Claude 3.5 Sonnet and can 
[connect to almost any LLM](https://aider.chat/docs/llms.html).

<!-- SCREENCAST START -->
<p align="center">
  <img
    src="https://aider.chat/assets/screencast.svg"
    alt="aider screencast"
  >
</p>
<!-- SCREENCAST END -->

<!-- VIDEO START
<p align="center">
  <video style="max-width: 100%; height: auto;" autoplay loop muted playsinline>
    <source src="/assets/shell-cmds-small.mp4" type="video/mp4">
    Your browser does not support the video tag.
  </video>
</p>
VIDEO END -->

<p align="center">
  <a href="https://discord.gg/Tv2uQnR88V">
    <img src="https://img.shields.io/badge/Join-Discord-blue.svg"/>
  </a>
  <a href="https://aider.chat/docs/install.html">
    <img src="https://img.shields.io/badge/Read-Docs-green.svg"/>
  </a>
</p>

## Getting started
<!--[[[cog
# We can't "include" here.
# Because this page is rendered by GitHub as the repo README
cog.out(open("aider/website/_includes/get-started.md").read())
]]]-->

You can get started quickly like this:

```
python -m pip install -U aider-chat

# Change directory into a git repo
cd /to/your/git/repo

# Work with Claude 3.5 Sonnet on your repo
export ANTHROPIC_API_KEY=your-key-goes-here
aider

# Work with GPT-4o on your repo
export OPENAI_API_KEY=your-key-goes-here
aider 
```
<!--[[[end]]]-->

See the
[installation instructions](https://aider.chat/docs/install.html)
and other
[documentation](https://aider.chat/docs/usage.html)
for more details.

## Features

- Run aider with the files you want to edit: `aider <file1> <file2> ...`
- Ask for changes:
  - Add new features or test cases.
  - Describe a bug.
  - Paste in an error message or or GitHub issue URL.
  - Refactor code.
  - Update docs.
- Aider will edit your files to complete your request.
- Aider [automatically git commits](https://aider.chat/docs/git.html) changes with a sensible commit message.
- Aider works with [most popular languages](https://aider.chat/docs/languages.html): python, javascript, typescript, php, html, css, and more...
- Aider works best with GPT-4o & Claude 3.5 Sonnet and can [connect to almost any LLM](https://aider.chat/docs/llms.html).
- Aider can edit multiple files at once for complex requests.
- Aider uses a [map of your entire git repo](https://aider.chat/docs/repomap.html), which helps it work well in larger codebases.
- Edit files in your editor while chatting with aider,
and it will always use the latest version.
Pair program with AI.
- [Add images to the chat](https://aider.chat/docs/usage/images-urls.html) (GPT-4o, Claude 3.5 Sonnet, etc).
- [Add URLs to the chat](https://aider.chat/docs/usage/images-urls.html) and aider will read their content.
- [Code with your voice](https://aider.chat/docs/usage/voice.html).


## Top tier performance

[Aider has one of the top scores on SWE Bench](https://aider.chat/2024/06/02/main-swe-bench.html).
SWE Bench is a challenging software engineering benchmark where aider
solved *real* GitHub issues from popular open source
projects like django, scikitlearn, matplotlib, etc.

## More info

- [Documentation](https://aider.chat/)
- [Installation](https://aider.chat/docs/install.html)
- [Usage](https://aider.chat/docs/usage.html)
- [Tutorial videos](https://aider.chat/docs/usage/tutorials.html)
- [Connecting to LLMs](https://aider.chat/docs/llms.html)
- [Configuration](https://aider.chat/docs/config.html)
- [Troubleshooting](https://aider.chat/docs/troubleshooting.html)
- [LLM Leaderboards](https://aider.chat/docs/leaderboards/)
- [GitHub](https://github.com/Aider-AI/aider)
- [Discord](https://discord.gg/Tv2uQnR88V)
- [Blog](https://aider.chat/blog/)


## Kind words from users

- *The best free open source AI coding assistant.* -- [IndyDevDan](https://youtu.be/YALpX8oOn78)
- *The best AI coding assistant so far.* -- [Matthew Berman](https://www.youtube.com/watch?v=df8afeb1FY8)
- *Aider ... has easily quadrupled my coding productivity.* -- [SOLAR_FIELDS](https://news.ycombinator.com/item?id=36212100)
- *It's a cool workflow... Aider's ergonomics are perfect for me.* -- [qup](https://news.ycombinator.com/item?id=38185326)
- *It's really like having your senior developer live right in your Git repo - truly amazing!* -- [rappster](https://github.com/Aider-AI/aider/issues/124)
- *What an amazing tool. It's incredible.* -- [valyagolev](https://github.com/Aider-AI/aider/issues/6#issue-1722897858)
- *Aider is such an astounding thing!* -- [cgrothaus](https://github.com/Aider-AI/aider/issues/82#issuecomment-1631876700)
- *It was WAY faster than I would be getting off the ground and making the first few working versions.* -- [Daniel Feldman](https://twitter.com/d_feldman/status/1662295077387923456)
- *THANK YOU for Aider! It really feels like a glimpse into the future of coding.* -- [derwiki](https://news.ycombinator.com/item?id=38205643)
- *It's just amazing.  It is freeing me to do things I felt were out my comfort zone before.* -- [Dougie](https://discord.com/channels/1131200896827654144/1174002618058678323/1174084556257775656)
- *This project is stellar.* -- [funkytaco](https://github.com/Aider-AI/aider/issues/112#issuecomment-1637429008)
- *Amazing project, definitely the best AI coding assistant I've used.* -- [joshuavial](https://github.com/Aider-AI/aider/issues/84)
- *I absolutely love using Aider ... It makes software development feel so much lighter as an experience.* -- [principalideal0](https://discord.com/channels/1131200896827654144/1133421607499595858/1229689636012691468)
- *I have been recovering from multiple shoulder surgeries ... and have used aider extensively. It has allowed me to continue productivity.* -- [codeninja](https://www.reddit.com/r/OpenAI/s/nmNwkHy1zG)
- *I am an aider addict. I'm getting so much more work done, but in less time.* -- [dandandan](https://discord.com/channels/1131200896827654144/1131200896827654149/1135913253483069470)
- *After wasting $100 on tokens trying to find something better, I'm back to Aider. It blows everything else out of the water hands down, there's no competition whatsoever.* -- [SystemSculpt](https://discord.com/channels/1131200896827654144/1131200896827654149/1178736602797846548)
- *Aider is amazing, coupled with Sonnet 3.5 it’s quite mind blowing.* -- [Josh Dingus](https://discord.com/channels/1131200896827654144/1133060684540813372/1262374225298198548)
- *Hands down, this is the best AI coding assistant tool so far.* -- [IndyDevDan](https://www.youtube.com/watch?v=MPYFPvxfGZs)
- *[Aider] changed my daily coding workflows. It's mind-blowing how a single Python application can change your life.* -- [maledorak](https://discord.com/channels/1131200896827654144/1131200896827654149/1258453375620747264)
- *Best agent for actual dev work in existing codebases.* -- [Nick Dobos](https://twitter.com/NickADobos/status/1690408967963652097?s=20)
