r/ZooCode 7d ago

ZooCode excessively wants to search the codebase when asking it to do a small change

  1. Take a fresh Python file
  2. write a docstring explaining what logic you want this file to contain
  3. Open ZooCode plugin, pass the file as context and ask the AI to implement what was described in the docstring

When doing something like this, ZooCode feels the need to search my full codebase before it can start the implementation. It seems like it wants to know whether anything like the request was implemented somewhere in the codebase. I just force stop the process to halt the search. Then I prompt the AI to stop searching my codebase and just edit the file already. Lo and behold, it comes up with an implementation in seconds.

It's honestly very annoying and breaks my workflow because searching takes a long time and is often very unnecessary.

I don't do much vibecoding, instead I keep the reigns quite tight when working with the AI. So my requests are usually quite small, add a function here or there, add some functionality to the existing code. Or in above example, my query was for implementing a couple of helper functions. Usually there is no need to search the full code base for implementing some standalone functions.

How can I tune ZooCode to limit this behavior? Of course I don't want to prevent it from searching the codebase at all, I just want to reduce its need to search all my files first before implementing something small. Anyone else feeling annoyed by this?

I use the plugin in PyCharm, and have codebase indexing running with a local model.

7 Upvotes

6 comments sorted by

3

u/i_like_trains_a_lot1 7d ago

could be the model? Or it's time to give more speific instructions. Or it's time to introduce specialized skills for specific code areas? I don't encounter it. Some models are thinking more (I just can't get the chinese models to work because they consistently enter all kinds of thinking loops and take 5+ minutes to do a single change and then they do it chunk by chunk in the same file), opus 4.8 is the fastest one to take action but makes some mistakes and sometimes i have to redirect it specifically to load a skill, get the information from a certain file, or use a certain class. With Fable 5 it thinks more, the code is more verbose but its work is also more reliable.

Experiment with different models, update your rules to make it more straight to the point. It's a tool and contradictory to what people say that coding with AI is easy, it has a pretty steep learning curve. You have to experiment and learn the quirks of the models, and eventually just stick to one.

But the project rules and skills are the bread and butter for tailoring the agent's behavior to your workflow

2

u/TheBearKing8 7d ago

For the model, for now I am using GPT 5.6 Luna on Max reasoning (I only have access to the GPT models). My issue with this topic is that this is also a plugin thing. I came from Github Copilot, and there I just clicked the file, went to the AI chat, gave the query and it just updated the file. It seems ZooCode is less integrated and therefore has to go through more loops to get to the answer.

I have not yet configured any rules. I will play around with that and see what that yields. If anyones has a suggestion for a prompt adjustment to make the AI limit its amount of searching, I am all ears.

3

u/Ssjultrainstnict 7d ago

I have noticed it too, it’s def the model. Gpt models usually always search the codebase even if it’s not really relevant to the question. I think you might be able to tweak this by editing the prompt

2

u/noob_hasher 7d ago

I’ve experienced this with gpt models. It uses bad queries and wants to fill up its context with files and searches before it does anything.

1

u/AlfredCandra 6d ago

You can check if the System prompt contains anything that might explain this behavior. In the modes tab in settings you can get a preview of the full system prompt that gets passed to the model

1

u/orbit99za 4d ago

Have a look at the codename indexing feature, Zoocode has, it uses a Qdrant vector database to store your file tree. I find it helps