This page is the canonical inventory for Claude Code tool names, tool families, schema owners, and permission boundaries. It consolidates lists that were previously repeated across tool, prompt, session, and agent pages.
Scope and caveats
This page lists source-visible tool names and schema-owning surfaces for the analyzed bundle.
It does not duplicate every minified JSON Schema descriptor. Built-in descriptors are bundled in cli.js; MCP tools expose runtime inputJSONSchema through MCP; plugins contribute schemas through manifests.
Tool visibility and tool execution are separate: a tool can be model-visible and still be denied by permissions, hooks, host control requests, or tool-specific guards.
Source anchors
Semantic alias
Source
Approximate location
String or symbol
Meaning
BashToolName
cli.js
line ~446, byte 0x309242
var Rq="Bash"
Shell-command tool name.
ReadToolName
cli.js
line ~481, byte 0x30a2ba
var Bq="Read"
File-read tool name.
GlobToolName
cli.js
line ~482, byte 0x30a7e0
var B1="Glob"
File-pattern search tool name.
GrepToolName
cli.js
line ~461, byte 0x3097ed
var V9="Grep"
Content-search tool name.
EditToolName
cli.js
line ~549, byte 0x31b727
var v7="Edit"
File-edit tool name and nearby edit-family schemas.
WriteToolName
cli.js
line ~941, byte 0x4686f7
var $9="Write"
File-write tool name.
WebFetchToolName
cli.js
line ~770, byte 0x436b69
var gD="WebFetch"
URL fetch tool name.
WebSearchToolName
cli.js
line ~1091, byte 0x480490
var RI="WebSearch"
Web search tool name.
TodoWriteToolName
cli.js
line ~1091, byte 0x4804bf
var HV="TodoWrite"
Todo list tool name.
SkillToolName
cli.js
line ~1091, byte 0x4804d2
var XX="Skill"
Skill-loading tool name.
BashDescriptor
cli.js
line ~5147, byte 0x9625e3
LK({name:Rq,...})
Bash descriptor with prompt, permission matcher, and read-only classifier.
ReadDescriptor
cli.js
line ~4956, byte 0x91a489
LK({name:Bq,... get inputSchema(){return T15()}})
Read descriptor with input/output schema accessors.
GrepDescriptor
cli.js
line ~3095, byte 0x7be208
LK({name:V9,...})
Grep descriptor with regex-search schema and read-only behavior.
GlobDescriptor
cli.js
line ~3104, byte 0x7bf95e
LK({name:B1,...})
Glob descriptor with file-pattern schema and read-only behavior.
EditDescriptor
cli.js
line ~5005, byte 0x9485ef
LK({name:v7,...})
Edit descriptor with edit schema, storage stripping, and edit guards.
WriteDescriptor
cli.js
line ~3226, byte 0x820c8d
LK({name:$9,...})
Write descriptor with file-write schema and permission dialog metadata.
WebFetchDescriptor
cli.js
line ~3438, byte 0x86c4c5
LK({name:gD,... shouldDefer:!0})
WebFetch descriptor and deferred web-fetch behavior.
WebSearchDescriptor
cli.js
line ~3628, byte 0x8811c7
LK({name:RI,...})
WebSearch descriptor with provider gating.
TodoWriteDescriptor
cli.js
line ~2621, byte 0x64b7de
LK({name:HV,...})
TodoWrite descriptor with allow-only checklist update path.
SkillDescriptor
cli.js
line ~3172, byte 0x80208c
LK({name:XX,...})
Skill descriptor with skill-name validation and forked execution output.
McpToolsListSchema
cli.js
line ~95, byte 0x907a4
tools/list
MCP tool-list protocol schema.
ToolExecutionBoundary
cli.js
line ~4202, byte 0x8a8140
function U85
Main tool execution/permission boundary.
PreToolUsePermissionHook
cli.js
line ~3553, byte 0x876552
hookPermissionResult, PreToolUse
PreToolUse hook can allow, ask, deny, defer, or update input.
Built-in tool families
Family
Source-visible names
Model-visible capability
Main guard or owner
Shell/process
Bash, BashOutput-style task output aliases
Run commands, monitor background command/task output, stop long-running work.
Load skills and dispatch/observe task or subagent work.
Agent/task runtime, subagent hooks, task state registry.
Schema ownership
Tool source
How schemas are supplied
Permission behavior
Built-in tools
Bundled descriptors in cli.js near the tool definitions. This page summarizes fields by family rather than copying every minified descriptor.
Enters the same ToolExecutionBoundary.
MCP tools
MCP tools/list responses include names and inputJSONSchema; tools/call executes through the MCP client.
Permission-prompt routing requires a schema-bearing MCP tool; MCP calls still pass guarded runtime boundaries.
Plugin-provided tools/capabilities
Plugin manifests can contribute hooks, MCP servers, skills, agents, output styles, and related capability surfaces.
Plugin-provided capabilities compose with settings, trust, hooks, and permission policy.
Agent/task tools
Task/subagent tool constants are runtime tools exposed to the model or agent controller.
Task lifecycle hooks and task-state updates apply in addition to normal tool permission checks.
Descriptor and execution-body map
The built-in tools are exposed through bundled descriptors created by LK(...). Each descriptor owns the model-facing name, prompt text, input/output schema accessors, activity summaries, visibility gates, and permission helpers for that tool family. The full execution body is still bundled/minified, but the descriptor anchors identify where a focused per-tool deep dive should start.
Tool family
Descriptor anchors
Runtime behavior confirmed from descriptor cluster
Remaining deep-dive boundary
Shell/process
Bash at line ~5147, ToolExecutionBoundary at line ~4202
Shell calls enter the shared permission boundary, can classify read-only commands, and prepare a permission matcher before execution.
Read at line ~4956, Glob at line ~3104, Grep at line ~3095
Read/search descriptors provide schema accessors, read-only/concurrency-safe markers, result limits, and search summaries.
Per-tool parsing of ranges, glob expansion, ignore handling, and truncation should be documented tool-by-tool only when needed.
File mutation
Edit at line ~5005, Write at line ~3226
Mutation descriptors expose input/output schema accessors and pair with freshness guards such as File has not been read yet... and File content has changed....
Exact patch/write algorithms and notebook edit shapes remain a candidate companion reference if schema dumps are required.
Web
WebFetch at line ~3438, WebSearch at line ~3628
Web tools are deferred and guarded; WebSearch has provider-support gates and wildcard validation.
Provider-specific fetch/search transport is separate from tool-name/schema inventory.
Planning and automation
TodoWrite at line ~2621, Skill at line ~3172, task tool constants at line ~1091
Todo writes are allowed checklist state updates; skills validate an invocation name and can return direct or forked execution results.
This page now records the descriptor owners for the major built-in tool schemas. It still intentionally avoids copying every minified y.object(...) / schema descriptor into the docs. A complete per-tool schema dump would need a dedicated extractor or focused manual reconstruction from each descriptor’s inputSchema and outputSchema accessors. Until that exists, the safe documentation boundary is:
list stable tool names and descriptor anchors here;
document permission and execution behavior in implementation pages;
document MCP runtime schemas through MCP tools/list / inputJSONSchema rather than treating plugin/MCP schemas as built-ins.