[HN Gopher] Aider: AI pair programming in your terminal
___________________________________________________________________
Aider: AI pair programming in your terminal
Author : tosh
Score : 62 points
Date : 2024-04-10 21:06 UTC (1 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| tyoma wrote:
| I've used aider to understand new codebases using technologies I
| don't know and it did a fantastic job; much faster than grep/find
| + google.
| fyrn_ wrote:
| To be fair in a world of good LSP impls, grep/find are really
| primative tools to be using. Not saying this isn't better then
| a more sophisicated editor setup, just that grep and find are a
| _really_ low bar
| shadowgovt wrote:
| When we reach that world, let me know. I'm still tripping
| over a "python-lsp-server was simply not implemented async so
| sometimes when you combine it with emacs lsp-mode it eats
| 100% CPU and locks your console" issue.
| danenania wrote:
| People interested in Aider (which is an awesome tool) might also
| be interested in checking out my project Plandex[1]. It's
| terminal-based like Aider and has a somewhat comparable set of
| features, but is more focused on using LLMs to work on larger and
| more complex tasks that span many files and model responses. It
| also uses a git-style CLI approach with independent commands for
| each action vs. Aider's interactive shell.
|
| I studied Aider's code and prompts quite a bit in the early
| stages of building Plandex. I'm grateful to Paul for building it
| and making it open source.
|
| 1 - https://github.com/plandex-ai/plandex
| joshstrange wrote:
| Do you have any plans to build IDE plugins for this? I
| understand it's open source and anyone could add that, I was
| just wondering if that was even on the roadmap? Having this run
| in my IDE would just so awesome with diff tool I'm used to,
| with all the other plugins/hotkeys/etc I use.
| danenania wrote:
| Yes, VSCode and JetBrains plugins are on the roadmap. Here's
| the current roadmap by the way: https://github.com/plandex-
| ai/plandex#roadmap-%EF%B8%8F (it's not exhaustive, but can
| give you a sense of where I'd like to take Plandex in the
| future).
| joshstrange wrote:
| And I completely missed that somehow... My apologies. Thank
| you for pointing that out.
| danenania wrote:
| No worries, it's pretty far down in the readme :)
| carom wrote:
| How do you situate changes in a file? That seems like the hard
| part to me since the LLM can't necessary count to output a
| patch with line numbers.
| danenania wrote:
| It does use line numbers, which definitely aren't infallible.
| That's why a `plandex changes` TUI is included to review
| changes before applying. Unfortunately no one has figured out
| a file update strategy yet that doesn't make occasional
| mistakes--probably we'll need either next-gen models or fine-
| tuning to get there.
|
| That said, counting isn't necessarily required to use line
| numbers. If line numbers are included in the file when it's
| sent to the model, it becomes more a text analysis task
| rather than a counting task. Here are the relevant prompts:
| https://github.com/plandex-
| ai/plandex/blob/main/app/server/m...
| beastman82 wrote:
| This tool is amazing
| rbren wrote:
| We have an issue in OpenDevin to add Aider as an agent, if anyone
| wants to take a crack at it:
|
| https://github.com/OpenDevin/OpenDevin/issues/120
| pax wrote:
| I revisited Aider a couple of days ago, after going in circles
| with AutoGPT - which seemed to either forget or go lazy after a
| few prompts - to the point it refused to do something that it did
| a few prompts before. Then Aider delivered from the first prompt.
|
| PS. I've gathered a list of LLM agents (for coding and general
| purpose)
| https://docs.google.com/spreadsheets/d/1M3cQmuwhpJ4X0jOw5XWT...
| joshstrange wrote:
| I'm interested in this and will probably set it up but I wish
| more AI tools were better integrated to my IDE. I know GH Copilot
| is and other big AI tools have plugins with chat/edit features
| but most of the cool open source doesn't seem to support
| IDEA/JetBrains.
|
| I see the power of LLMs. I use GH Copilot, I use ChatGPT, but I
| crave deeper integration in my existing toolset. I need to force
| myself to try in-IDE Copilot Chat. My habit is to go to ChatGPT
| for anything of that nature and I'm not sure why that is.
| Sometimes it's the same way I break down my search to for things
| "I know I can find" then put together the results. In the same
| way I break down the problem into small pieces and have ChatGPT
| write them individually or somethings additively.
| Onawa wrote:
| I didn't get time to test it beyond installing it on VSCode
| today, but take a look at
| https://GitHub.com/continuedev/continue, Apache 2.0 license,
| and they have an IDEA/Jetbrains plugin. Plus codebase context,
| full configurability to use local or remote LLMs.
| joshstrange wrote:
| I probably need to give it another try but I tried that
| before with my own GPT-4 key, a local model, and their models
| and just got errors last time I tried it. I hope that was
| just a temp issue but because of that I moved on. Also I've
| tried Cody Pro (again, weird errors and when it did work I
| felt like Copilot would have done better).
| anotherpaulg wrote:
| Folks have developed VSCode and NeoVim integrations for aider.
| They're based on forks of aider, so I'm not sure how carefully
| their authors are keeping them up to date with aider releases.
|
| The aider install instructions has more info:
|
| https://aider.chat/docs/install.html#add-aider-to-your-edito...
| j45 wrote:
| Aider works a little different where it doesn't just code
| complete or focus on a function level. It can solve much bigger
| problems.
| wanderingmind wrote:
| Aider has a big problem when working with python codebase.
|
| 1. Its dependencies will conflict with your code requirements.
|
| 2. If you don't install it within the code environment, you can
| use `aider run` where you can run local commands and pipe their
| outputs.
|
| 3. You will need to use all it's dependencies even in prod
| environment that can increase the attack surface.
|
| So until they introduce a global binary install, I suggest using
| Plandex which is based on Go and can work across any environment
| within the system
| anotherpaulg wrote:
| Thanks for trying aider, and sorry to hear you had dependency
| conflicts.
|
| You can install aider with pipx to avoid this. There's a FAQ
| entry that explains how:
|
| https://aider.chat/docs/faq.html#how-to-use-pipx-to-avoid-py...
|
| Also, why would you want to install aider in a production
| environment? It's a development tool, I wouldn't expect anyone
| to use it in prod. But maybe there's a use case I'm not
| thinking of?
| wanderingmind wrote:
| Thank you, didn't know about pipx possibility. Will give it a
| shot.
|
| I don't want aider in prod environment. Im saying its hard to
| remove it from prod if we can't isolate it from code
| dependencies as its hard to maintain multiple
| requirements.txt for different envs.
| DonHopkins wrote:
| When working alone remotely from home, I simulate pair
| programming with a methodology I call "The Stranger". I sit on
| one of my hands until it becomes numb and tingly, and then it
| feels like somebody else is typing and moving the mouse!
| renewiltord wrote:
| I have used this technique for months and it's great
| https://x.com/arjie/status/1575201117595926530
|
| I just have copilot in my editor and switch into my editor with
| C-x C-e for AI completion. I use neovim like example but you can
| use whatever you like.
|
| EDIT: Oh never mind. I see what it is now. It's a terminal based
| flow for editing code. Mine is for command line writing live.
| devstein wrote:
| Big fan of Aider.
|
| We are interesting in integrating Aider as a tool for Dosu
| https://dosu.dev/ to help it navigate and modify a codebase on
| issues like this https://github.com/langchain-
| ai/langchain/issues/8263#issuec...
| fvdessen wrote:
| I just tried it and it's amazingly cool, but the quality of the
| output just isn't there for me yet. It makes too much subtle
| errors to be as useful as the screenshots and the gifs makes it
| look
___________________________________________________________________
(page generated 2024-04-10 23:00 UTC)