The other day I inherited a repo from someone that left the company. The first one to be almost fully vibe coded.
It's horrible. It's over engineered in every way. It follows a completely different pattern than the other repos. It adds 10 CLI options that don't have any use (why does Claude add --threads to everything). It's impossible to follow the flow of the code. Of course, days after I inherited it, it broke so good luck to me fixing it I guess
It is like inheriting Assembly codebase written by a compiler.
You will not edit Assembly in this.
Claude will have to edit it and Claude will not whine.
What's to stop you from rebuilding it yourself to improve the structure? Why couldn't you vibe code it better?
Ironically, my first thought was how quickly this might be able to be re-written, in a sane way, …with the help of an LLM.
I find that if you pay a lot of human-in-the-loop attention to the design phase, LLMs can produce perfectly decent stuff.
They’re also good at writing tests. Lock in the (non-broken) behavior of the old app with tests. Then use those tests to re-create the app, except with a talented engineer (you) guiding the design this time.