# Claude Code — Tools System
## Table of Contents
1. [Tool Framework (Tool.ts)](#1-tool-framework)
2. [Tool Registry (tools.ts)](#2-tool-registry)
3. [Task Framework (Task.ts / tasks.ts)](#3-task-framework)
4. [Core File Tools](#4-core-file-tools)
- [FileReadTool](#41-filereadtool)
- [FileWriteTool](#42-filewritetool)
- [FileEditTool](#43-fileedittool)
5. [Shell Execution Tools](#5-shell-execution-tools)
- [BashTool](#51-bashtool)
- [PowerShellTool](#52-powershelltool)
6. [Search Tools](#6-search-tools)
- [GlobTool](#61-globtool)
- [GrepTool](#62-greptool)
7. [Agent / Multi-Agent Tools](#7-agent--multi-agent-tools)
- [AgentTool](#71-agenttool)
- [TeamCreateTool](#72-teamcreatetool)
- [TeamDeleteTool](#73-teamdeletetool)
- [SendMessageTool](#74-sendmessagetool)
8. [Task Management Tools](#8-task-management-tools)
- [TaskStopTool](#81-taskstoptool)
- [TaskOutputTool](#82-taskoutputtool)
- [TodoWriteTool (V1)](#83-todowritetool-v1)
- [TaskCreateTool (V2)](#84-taskcreatetool-v2)
- [TaskGetTool (V2)](#85-taskgettool-v2)
- [TaskUpdateTool (V2)](#86-taskunpdatetool-v2)
- [TaskListTool (V2)](#87-tasklisttool-v2)
9. [Web Tools](#9-web-tools)
- [WebFetchTool](#91-webfetchtool)
- [WebSearchTool](#92-websearchtool)
10. [MCP Integration Tools](#10-mcp-integration-tools)
- [MCPTool](#101-mcptool)
- [McpAuthTool](#102-mcpauthtool)
- [ListMcpResourcesTool](#103-listmcpresourcestool)
- [ReadMcpResourceTool](#104-readmcpresourcetool)
11. [Plan Mode Tools](#11-plan-mode-tools)
- [EnterPlanModeTool](#111-enterplanmodetool)
- [ExitPlanModeV2Tool](#112-exitplanmodev2tool)
12. [Notebook Tool](#12-notebook-tool)
13. [Worktree Tools](#13-worktree-tools)
- [EnterWorktreeTool](#131-enterworkreetool)
- [ExitWorktreeTool](#132-exitworkreetool)
14. [Scheduling Tools](#14-scheduling-tools)
- [CronCreateTool](#141-croncreatetool)
- [CronDeleteTool](#142-crondeletetool)
- [CronListTool](#143-cronlisttool)
15. [Meta / Discovery Tools](#15-meta--discovery-tools)
- [ToolSearchTool](#151-toolsearchtool)
- [AskUserQuestionTool](#152-askuserquestiontool)
16. [Kairos / Special Mode Tools](#16-kairos--special-mode-tools)
- [BriefTool (SendUserMessage)](#161-brieftool-senduserrmessage)
- [SleepTool](#162-sleeptool)
- [RemoteTriggerTool](#163-remotetriggertool)
17. [SDK / Output Tools](#17-sdk--output-tools)
- [SyntheticOutputTool (StructuredOutput)](#171-syntheticoutputtool-structuredoutput)
18. [Skill Tool](#18-skill-tool)
19. [LSP Tool](#19-lsp-tool)
20. [REPL Tool](#20-repl-tool)
21. [Config Tool](#21-config-tool)
22. [Shared Utilities](#22-shared-utilities)
- [tools/utils.ts](#221-toolsutilsts)
- [tools/shared/gitOperationTracking.ts](#222-toolssharedgitoperationtrackingts)
- [tools/shared/spawnMultiAgent.ts](#223-toolssharedspawnmultiagentts)
23. [Testing Utilities](#23-testing-utilities)
---
## 1. Tool Framework
**Source:** `src/Tool.ts`
### 1.1 Core Interface
```typescript
export type Tool = {
// Identity
name: string
isMcp?: boolean
mcpInfo?: { serverName: string; toolName: string }
isLsp?: boolean
alwaysLoad?: boolean
shouldDefer?: boolean
// Schema (getter properties for lazy init)
readonly inputSchema: Input
readonly outputSchema?: ZodType