Tools & Features
The built-in surface — file tools, Bash, search, Task, web, slash commands, skills, sub-agents, hooks, status line. The reference for what's already there.
Claude Code ships with a fixed set of tools that the model can call. They are deliberately small and composable: Read, Edit, Write for files; Bash for the shell; Grep and Glob for search; Task for delegation; WebFetch and WebSearch for the network; TodoWrite for task tracking. Everything else — slash commands, skills, sub-agents, hooks — is a way of orchestrating or customising the use of those primitives.
A good mental model: the tools are the verbs the model knows. Slash commands are macros over verbs. Sub-agents are isolated environments for running verb sequences. Hooks are observers and gatekeepers on verb calls. Knowing what verbs exist is the prerequisite for everything that follows.
Key concepts
- Prefer dedicated tools to Bash — Read/Edit/Write beat cat/sed/echo on UX and on safety
- Parallelise independent tool calls — multiple tool uses in one assistant turn run concurrently
- Delegate to a sub-agent to protect context — large research drops belong in an Explore agent, not the main thread
- TodoWrite is for tracking — not for narration. Mark tasks done as you finish them, not in batch
- Hooks fire on every event of their type — keep them fast or you slow the whole session down
Reference template
// Reference: the built-in tool families
1. File tools (Read, Edit, Write — read-before-edit invariant)
2. Shell (Bash — persistent cwd, parallel calls, background jobs)
3. Search (Grep, Glob — fast targeted lookups)
4. Delegation (Task / Agent — sub-agents in parallel or background)
5. Web (WebFetch, WebSearch — cached content, search results)
6. Tracking (TodoWrite — task list with status)
7. Orchestration (Skill, slash commands — wrappers over the above)
8. Events (Hooks — PreToolUse, PostToolUse, UserPromptSubmit, Stop) Adapt to your problem; the structure is the load-bearing part.
Common pitfalls
- Reaching for Bash when a dedicated tool exists —
catfor reading,sedfor editing,echo > filefor writing are all worse than the dedicated tools - Sequencing independent calls — three reads chained costs three round-trips when one parallel batch would do
- Running an unbounded grep / find from
/— large filesystem scans waste tokens and time - Using the Task tool to do work that should be in the main thread — delegation is for parallelism and context-protection, not for hiding work
Related topics
Items (11)
- File Tools — Read, Edit, Write
The three primary file tools. When to use each, the read-before-edit invariant, and why Edit is preferred over Write for existing files.
Feature Foundational - The Bash Tool
Running shell commands, persistent working directory, parallel execution, background jobs, and the sandbox model.
Feature Foundational - Search Tools — Grep and Glob
Fast targeted search across the repository. When to prefer Grep over Bash-ripgrep, when to delegate broader searches to an Explore agent.
Feature Foundational - The Task Tool — Background Work
Running long operations in the background, getting notified on completion, and the no-polling rule that makes this fast.
Feature Intermediate - WebFetch and WebSearch
Pulling content from a URL or searching the web from inside a session. Caching, content extraction, and where the limits sit.
Feature Foundational - TodoWrite and Task Management
The built-in task list. When to use it, when not to, and how it interacts with sub-agent task tracking.
Feature Foundational - Slash Commands
Built-in slash commands (/help, /clear, /loop, /ultrareview, /schedule), and the ones you'll use most as a daily driver.
Feature Foundational - Skills — User-Invocable Workflows
Bundled prompt + tool + instruction packages that Claude Code can invoke. How they differ from sub-agents and custom slash commands.
Feature Intermediate - Sub-Agents
Specialised agents (Explore, Plan, claude-code-guide, general-purpose). Parallel and isolated execution, when to delegate, and context-window protection.
Feature Intermediate - Hooks Overview
Event-driven shell hooks that fire on tool calls and prompt submission. The four event types and where each one is the right tool.
Feature Intermediate - The Status Line
Customising the always-visible status line — model, branch, token usage, custom indicators. Useful for long sessions.
Feature Intermediate