Analyzed: March 31, 2026 leak snapshot
This page is keyed to the tool constructors registered in getAllBaseTools() (src/tools.ts). Runtime tool names can differ from constructor names.
Scope
This table documents core tool registrations that are always included or commonly present in non-feature-gated runs.
Core registrations
Registration token in src/tools.ts | Category | Gate in registry |
|---|
AgentTool | Agent orchestration | Always included |
TaskOutputTool | Agent/task output | Always included |
BashTool | Shell execution | Always included |
GlobTool | File discovery | Included when hasEmbeddedSearchTools() is false |
GrepTool | Content search | Included when hasEmbeddedSearchTools() is false |
ExitPlanModeV2Tool | Plan mode | Always included |
FileReadTool | File ops | Always included |
FileEditTool | File ops | Always included |
FileWriteTool | File ops | Always included |
NotebookEditTool | Notebook/file ops | Always included |
WebFetchTool | Web access | Always included |
TodoWriteTool | Task/todo state | Always included |
WebSearchTool | Web access | Always included |
TaskStopTool | Agent/task control | Always included |
AskUserQuestionTool | User interaction | Always included |
SkillTool | Skills | Always included |
EnterPlanModeTool | Plan mode | Always included |
getSendMessageTool() (SendMessageTool) | Agent orchestration | Always included (lazy-loaded helper) |
BriefTool | Output/meta | Always included |
ListMcpResourcesTool | MCP resources | Always included |
ReadMcpResourceTool | MCP resources | Always included |
Runtime filtering that affects these
Even when listed above, runtime filtering can remove a tool from the model-visible set:
- blanket deny rules in permission context
CLAUDE_CODE_SIMPLE mode
- REPL mode hiding
REPL_ONLY_TOOLS
tool.isEnabled() runtime checks
Those filters are applied in getTools() and filterToolsByDenyRules().