Key capabilities
File editing
Read, write, and partially modify files across your project, including images, PDFs, and Jupyter notebooks.
Shell execution
Run arbitrary shell commands via
BashTool, with a configurable permission model that prompts before executing.Codebase search
Search file contents with ripgrep (
GrepTool) and match file paths with glob patterns (GlobTool) across repositories of any size.Git workflows
Create commits (
/commit), review pull requests (/review), diff changes (/diff), and manage git worktrees for isolated parallel work.Multi-agent orchestration
Spawn sub-agents with
AgentTool, coordinate parallel work with TeamCreateTool, and manage tasks across a swarm of agents via the coordinator/ subsystem.MCP integration
Connect to any Model Context Protocol server to extend Claude Code with custom tools and resources, managed through the
/mcp command and MCPTool.Architecture overview
Claude Code is structured around a React + Ink terminal UI, meaning the interactive REPL and all full-screen interfaces (such as/doctor and session choosers) are React component trees rendered to the terminal via Ink. The CLI entry point (src/main.tsx) uses Commander.js to parse arguments and subcommands, then hands off to the Ink renderer.
The runtime is Bun, which also handles bundling and dead-code elimination via feature flags (bun:bundle). Heavy modules such as OpenTelemetry (~400 KB) and gRPC (~700 KB) are deferred with dynamic import() until they are actually needed, keeping startup fast.
All tools and slash commands are self-contained modules registered at startup. Schema validation throughout the codebase uses Zod v4. Two external protocols are integrated: MCP (Model Context Protocol) for connecting to external tool servers, and LSP (Language Server Protocol) for language intelligence.
Tech stack
| Category | Technology |
|---|---|
| Runtime | Bun |
| Language | TypeScript (strict) |
| Terminal UI | React + Ink |
| CLI parsing | Commander.js (extra-typings) |
| Schema validation | Zod v4 |
| Code search | ripgrep |
| Protocols | MCP SDK, LSP |
| API | Anthropic SDK |
| Telemetry | OpenTelemetry + gRPC |
| Auth | OAuth 2.0, JWT, macOS Keychain |