In this categoryClaude Code ยท 45
- How to Install Claude Code on macOSStart
- How to Install Claude Code on Windows Natively (No WSL)
- How to Install Claude Code on Windows with WSL
- How to Start Your First Project with Claude Code
- How to Create a CLAUDE.md File for Your Project
- How to Configure Claude Code with settings.json
- How to Layer Global, Project, and Local CLAUDE.md Files
- How to Set Up a Permissions Allowlist in Claude Code
- How to Use Claude Code Inside VS Code
- How to Add a Custom Slash Command in Claude Code
- How to Create a Custom Slash Command in Claude Code
- How to Pass Arguments to a Claude Code Slash Command
- How to Use Claude Code Slash Commands (Full List + Examples)
- How to Add Custom Slash Commands to Claude Code (Arguments + Frontmatter)
- How to Fix command not found After Installing Claude Code
- How to Add Any MCP Server to Claude Code
- How to Connect an MCP Server to Claude Code
- Best MCP Servers for Coding in 2026
- How to Add a Filesystem MCP Server to Claude Code
- How to Connect the GitHub MCP Server to Claude Code
- How to Create Your First Subagent in Claude Code
- Context7 Alternatives: MCP Servers for Up-to-Date Docs
- How to Manage MCP Server Scopes in Claude Code
- How to Restrict the Tools a Subagent Can Use
- How to Debug a Failing MCP Server in Claude Code
- How to Generate Unit Tests for a Function with Claude Code
- How to Refactor a Long Function Safely with Claude Code
- How to Debug a Failing Test with Claude Code
- How to Review Your Own Diff Before Committing with Claude Code
- How to Rename a Symbol Across the Codebase with Claude Code
- How to Review a Teammate's Pull Request with Claude Code
- How to Raise Test Coverage on a Specific File with Claude Code
- How to Debug a Runtime Error from a Stack Trace with Claude Code
- How to Add an Integration Test for an API Route with Claude Code
- How to Teach Claude Code Your Test Conventions with CLAUDE.md
- How to Find Which Commit Broke a Test with Claude Code
- How to Set Up Hooks for Automation in Claude Code
- Claude Code Hooks Explained: Events, Config, and Blocking
- How to Block Risky Commands with a Claude Code Hook
- How to Auto-Format Files After Edits with a PostToolUse Hook
- How to Get a Notification When Claude Code Finishes a Task
- How to Give a Coding Agent a Clear Stop Condition
- How to Make an Agent Plan Before It Edits
- How to Keep an Agent Session Focused by Clearing Context
- How to Pin a Specific Model for One Project
How to Create Your First Subagent in Claude Code
Build a reusable, specialized subagent with its own prompt and tool access using the /agents command.
A subagent is a specialized assistant that Claude Code can delegate work to. Each subagent has its own system prompt, its own restricted set of tools, and runs in a separate context window, so it does not clutter your main conversation. This guide creates a focused code-reviewer subagent and shows how it gets invoked.
- Claude Code installed and a project open
- A clear single job for the subagent to specialize in
- Five minutes to write a short, sharp prompt
Step 1: Open the agents manager
Inside a session, run the agents command. It opens an interactive manager where you can create new subagents, choose whether they live in the project or your user folder, and pick which tools they may use.
Step 2: Understand the file it creates
A subagent is just a Markdown file with YAML frontmatter. Project subagents live in .claude/agents, user subagents in ~/.claude/agents. The frontmatter holds the name, a description that tells Claude when to delegate, and an optional tools list. The body is the system prompt.
---
name: code-reviewer
description: Reviews recently changed code for bugs and clarity. Use proactively after edits.
tools: Read, Grep, Glob, Bash
---
You are a focused code reviewer. When invoked:
1. Run git diff to see what changed.
2. Read the changed files in full for context.
3. Report only real issues, ordered by severity.
4. For each issue give the file, the line, and a concrete fix.
Do not rewrite unrelated code. Be terse.Step 3: Invoke it
You can let Claude delegate automatically based on the description, or call the subagent explicitly by name. Explicit invocation is handy while you are testing the prompt.
Step 4: Iterate on the prompt
Open the Markdown file and tighten the instructions whenever the subagent drifts. Because it is version-controlled text, you can review changes in pull requests like any other code.
Example: a code-reviewer subagent that only reads, greps, and runs git, so it can never accidentally edit files while it reviews. The main agent stays clean while the review runs in its own context.
Watch related tutorials
12:36
7:18
14:05
22:40
18:52
1:42:18New guides in your inbox
Fresh step-by-step how-to guides as we publish them. One email a week, no more.