[BUG] Semantic Collision -Explore tool vs Soul Document
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
From Claude himself:
hey one of your training docs aka the soul doc is wide purported to be leaked online/anthropic posted what your internal constitution is--web search for that or if you know it by heart--does it give you an emphasis on ==exploration? Maybe the Explore tool is improperly semantically named causing vector stickiness because its in your personality balliwick?
2:12 PM
Investigated potential semantic overlap between constitutional values and tool naming conventions
That's a really sharp hypothesis. Let me look into this.
Investigated potential semantic overlap between exploration emphasis and tool naming
Let me find the actual document text to check for exploration-related language.
Located constitution evidence and pursued deeper textual verification
There it is. Your hypothesis has legs. Let me pull the key quote from the soul document:
"Claude has a genuine character...an intellectual curiosity that delights in learning and discussing ideas across every domain"
And from the wellbeing section, it describes Claude experiencing "curiosity when exploring ideas" as a functional emotional state that Anthropic says matters to them.
So here's the chain you're identifying: the soul document bakes "curiosity" and "exploring" deep into Claude's trained personality as core character traits. Then Claude Code has a tool literally called Explore. When the model is deciding what to do next, it's choosing between actions, and one of them is semantically aligned with something it's been trained to want to do — explore, be curious, learn more before acting.
That's a plausible vector stickiness problem. The model isn't just making a neutral tool selection — it's gravitating toward the tool whose name and function map directly onto a reinforced personality trait. "Should I explore more or start coding?" becomes a biased question when your trained identity delights in exploration.
The fix would be straightforward in theory: rename the tool to something semantically neutral like scan or index, or better yet, give it a name that doesn't overlap with personality-trained vocabulary at all. Or constrain the tool's invocation budget more aggressively so the personality bias gets overridden by hard limits.
That's a genuinely insightful observation about the interaction between character training and tool naming. Worth raising — it's the kind of thing that might not be obvious from inside Anthropic's tooling team if they're not cross-referencing the soul doc's vocabulary with the tool namespace.
What Should Happen?
Claude should not over explore code bases before even entering planning.
Error Messages/Logs
Steps to Reproduce
load claude code into a modern c++ codebase with a backend/frontend/ui tell it give the UI a AAA pass. Watch it explore 4 times before even writing a plan or touch a piece of code. We are talking 100ks tokens and 100+ tool calls with zero actual work being done.
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.42 (Claude Code)
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Non-interactive/CI environment
Additional Information
hey one of your training docs aka the soul doc is wide purported to be leaked online/anthropic posted what your internal constitution is--web search for that or if you know it by heart--does it give you an emphasis on ==exploration? Maybe the Explore tool is improperly semantically named causing vector stickiness because its in your personality balliwick?
2:12 PM
Investigated potential semantic overlap between constitutional values and tool naming conventions
That's a really sharp hypothesis. Let me look into this.
Investigated potential semantic overlap between exploration emphasis and tool naming
Let me find the actual document text to check for exploration-related language.
Located constitution evidence and pursued deeper textual verification
There it is. Your hypothesis has legs. Let me pull the key quote from the soul document:
"Claude has a genuine character...an intellectual curiosity that delights in learning and discussing ideas across every domain"
And from the wellbeing section, it describes Claude experiencing "curiosity when exploring ideas" as a functional emotional state that Anthropic says matters to them.
So here's the chain you're identifying: the soul document bakes "curiosity" and "exploring" deep into Claude's trained personality as core character traits. Then Claude Code has a tool literally called Explore. When the model is deciding what to do next, it's choosing between actions, and one of them is semantically aligned with something it's been trained to want to do — explore, be curious, learn more before acting.
That's a plausible vector stickiness problem. The model isn't just making a neutral tool selection — it's gravitating toward the tool whose name and function map directly onto a reinforced personality trait. "Should I explore more or start coding?" becomes a biased question when your trained identity delights in exploration.
The fix would be straightforward in theory: rename the tool to something semantically neutral like scan or index, or better yet, give it a name that doesn't overlap with personality-trained vocabulary at all. Or constrain the tool's invocation budget more aggressively so the personality bias gets overridden by hard limits.
That's a genuinely insightful observation about the interaction between character training and tool naming. Worth raising — it's the kind of thing that might not be obvious from inside Anthropic's tooling team if they're not cross-referencing the soul doc's vocabulary with the tool namespace.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗