I'm SO surprised to not see aider-chat everywhere mentionned.
I've been using it for about a year and it's incredible.
My take is that most people did not invest the little time necessary to get acustomed to its workflow.
My advices for aider are:
- familiarize yourself with the chat modes (architect, code, ask)
- familiarize yourself with the edit modes (diff, whole, etc) and know which to use for a given model. Indeed not all models handle all modes equally well.
- make the code one feature at a time, by small chunks if needed, by limiting the contxt to the relevant files.
- practice to learn how to best phrase stuff.
- write you coding preferences into aider convention files. Things like "always use type hints, beartype for type checking, python click for the cli, add many comments".
I'm mainly doing python and with proper comments and type hints it's really easy for models to write code that works with the rest of the repo even with only a few files in its context.