I've tested on GLM-5.1 on real task and observed that explore results were too poor, so that agent fallback to grep.
Investigated and tried to turn off explore but enable 7 other tools.
Here's summary of agent feedback:
Problem
codegraph_explore combines search, blast radius, and source code into a single response. This sounds convenient but fails in practice for three reasons:
-
Misses critical results due to vague query matching
When asked "what do I need to change if I add a new parameter to ListObjects", explore matched on the method ListObjects but missed the struct ListObjectsCfg — the most important file (options.go) for this task. The same query against codegraph_search ListObjectsCfg + codegraph_impact ListObjectsCfg immediately found it.
Natural language queries are ambiguous. A single combined tool picks one interpretation silently and the user never knows what was missed.
-
Floods context with irrelevant source code
A single explore call returned ~440 lines of source code. Only ~15 lines were actually needed.
With separate tools, the agent gets structure only (file + line numbers), then does targeted Read calls for the ~15 lines it actually needs.
-
Silent truncation hides results
On larger codebases, explore truncates blast radius results with "+N more". The agent has no way to know what was hidden or to request more. With separate tools, limit parameters are explicit and controllable — the agent sees it got 10/20 results and can increase the limit.
What works instead
Separate tools give the agent control over each step:
codegraph_search → where is the symbol defined
codegraph_impact → what will be affected (blast radius)
codegraph_node → source of a specific symbol (on demand)
codegraph_callers/callees → call chain navigation
Each step is intentional. The agent gets structure first, then reads only the files it needs. No 440-line dumps, no silent truncation, no missed files due to ambiguous query interpretation.
So I don't know why you refused tool separation model, seems this is your experience, but please don't remove it completely in future releases, separate tool really worked better for me. I think explore is tradeoff for cheaper usage, but quality suffers.
I've tested on GLM-5.1 on real task and observed that
exploreresults were too poor, so that agent fallback to grep.Investigated and tried to turn off explore but enable 7 other tools.
Here's summary of agent feedback:
Problem
codegraph_explorecombines search, blast radius, and source code into a single response. This sounds convenient but fails in practice for three reasons:Misses critical results due to vague query matching
When asked "what do I need to change if I add a new parameter to ListObjects", explore matched on the method
ListObjectsbut missed thestruct ListObjectsCfg— the most important file (options.go) for this task. The same query againstcodegraph_search ListObjectsCfg + codegraph_impact ListObjectsCfgimmediately found it.Natural language queries are ambiguous. A single combined tool picks one interpretation silently and the user never knows what was missed.
Floods context with irrelevant source code
A single explore call returned ~440 lines of source code. Only ~15 lines were actually needed.
With separate tools, the agent gets structure only (file + line numbers), then does targeted Read calls for the ~15 lines it actually needs.
Silent truncation hides results
On larger codebases,
exploretruncates blast radius results with "+N more". The agent has no way to know what was hidden or to request more. With separate tools,limitparameters are explicit and controllable — the agent sees it got 10/20 results and can increase the limit.What works instead
Separate tools give the agent control over each step:
codegraph_search→ where is the symbol definedcodegraph_impact→ what will be affected (blast radius)codegraph_node→ source of a specific symbol (on demand)codegraph_callers/callees→ call chain navigationEach step is intentional. The agent gets structure first, then reads only the files it needs. No 440-line dumps, no silent truncation, no missed files due to ambiguous query interpretation.
So I don't know why you refused tool separation model, seems this is your experience, but please don't remove it completely in future releases, separate tool really worked better for me. I think explore is tradeoff for cheaper usage, but quality suffers.