Maintaining a quality code base is more than just having tests and linters. It's about organization, right-sized abstractions, architecture and choosing the right patterns. There is no real way to automate the verification of these things. If an agent farts out a 2,000 LOC feature in a day but bifurcates the code base, duplicates functions or makes awful abstractions, it WILL eventually turn into a big ball of mud.
All that being said, if wielded correctly an LLM can contribute to a healthy repository, but it requires much of the same thought and planning that development pre-LLMs did. I promise you, if you stick with the same code base long enough using your approach and little consideration to its health, it will become a hellish place to build in.
I suspect you haven't worked with agents enough. Start trying! You'll see...
In the age of agents.md files, you direct the agents style, organization and architectural choices. If you thought you were a coder, and a good one, your skill is useless. You now need to be an architect and a manager.
> it requires much of the same thought and planning that development pre-LLMs did
Exactly, there's nothing new to coding with LLMs than there is coding with actual humans.
A human programmer can also fart out a 2000 LOC feature that bifurcates, duplicates and has shit abstractions - they just waste a full two week sprint on it.
With a LLM you get the piece of poop in a day and you still have 7-8 days to tell it to fix its shit. With a human you're two weeks in the hole already and the feature is should be QA'd (2 weeks) and needs to be released in a month so ... fuck =)
The feedback loop with LLM generated code is so much faster than with actual humans and it makes up for (some) of the issues with it.
Can it replace all human coders? Of course not. But all of the bulk shit of adding CRUD operations to a handler or adding a new parameter to a HTTP API and flowing it through the 12 layers of enterprise shit to the database layer can be easily done with an LLM and the humans can focus on the actual creative and difficult bits.
All that being said, if wielded correctly an LLM can contribute to a healthy repository, but it requires much of the same thought and planning that development pre-LLMs did. I promise you, if you stick with the same code base long enough using your approach and little consideration to its health, it will become a hellish place to build in.