Which kind of solves the when should we write a tool part by just saying always.
But I think the question is how will this scale. The real core issue I feel like I’ve been encountering is scaling complexity.
Reducing the number of tools without losing efficiency or capability.
Reducing duplication, abstracting, cleaning up, and maintaining knowledge and memory.
I think the issue for me has been threefold.
1. As the repo grows how does you make the agent keep understanding of it without excessive context pollution.
2. How do you maintain memory and knowledge over time.
3. How do you know the agent is performing better over time and not regressing as you evolve.
And what has somewhat been working for me is
A) trees or hierarchies.
Trees scale well. Folder structure but also in the form of just simple indices.
Logical structure and locality makes them even more effective.
B) caching.
Having the agents “cache” their thinking in the form of summaries, skills, tools.
Recursive summarization really helped with mono repo navigation for me.
But right now I still feel like I need to be constantly prompting them and I can’t quite close the feedback loop.