| ▲ | pigpop 6 hours ago | |||||||
Or you can apply software architecture methods that are designed to help humans with exactly the same type of problems. Once your codebase exceeds a certain size, it becomes counter-productive to have code that is dependent on the implementation of other modules (tight coupling). In Claude Code terms this means your current architecture is forcing the model to read too many lines of code into its context which is degrading performance. The solution is the same as it is for humans:
You have to carefully draw boundaries around the distinct parts of your application and create simple interfaces for them that only expose the parts that other modules in your application need to use. Separate each interface definition into its own file and instruct Claude (or your human coworker) to only use the interface unless they're actually working on the internals of that module.Suddenly, you've freed up large chunks of context and Claude is now able to continue making progress. Of course, the project could continue to grow and the relatively small interface declarations could become too many to fit in context. At that point it would be worthwhile taking a look at the application to see if larger chunks of it could be separated from the rest. Managing the number and breadth of changes that Claude is tasked with making would also help since it's unlikely that every job requires touching dozens of different parts of the application so project management skills can get you even further. | ||||||||
| ▲ | tzs 5 hours ago | parent [-] | |||||||
Is vibe architecting a thing too, or is architecting to make your vibe coder work better something that the human needs to know? | ||||||||
| ||||||||