How sagar-jaixwal/claude-code-clone works
Claude Code is a terminal-based developer assistant: a user submits prompts or slash commands, the query pipeline communicates with Claude and runs tool calls, and results appear in the terminal UI. Separate capabilities cover permissions, integrations, persistent work, and remote or IDE sessions. The README documents the broad product flow; sampled query code shows query-loop and tool-execution stages, while other implementation links are limited to documented relationships because their source was not sampled.
Main entry points: query.ts Query pipeline · commands Slash commands · tools Tool system · PromptInput Prompt input
Components 19
Terminal interaction
- Slash commands
src/commands - Prompt input
src/components/PromptInput - Terminal UI
src/ink/components/App.tsx
Agent runtime
- Query pipeline
src/query.ts - Query engine
src/QueryEngine.ts - Tool system
src/tools - Tool permissions
src/hooks/toolPermission - API client
src/services/api - Context compression
src/services/compact
Integrations
- MCP servers
src/services/mcp/MCPConnectionManager.tsx - Language servers
src/services/lsp/LSPServerManager.ts - IDE bridge
src/bridge/bridgeMain.ts - Remote sessions
src/remote/RemoteSessionManager.ts - Plugin system
src/services/plugins/PluginInstallationManager.ts
Session continuity
- Task management
src/tasks - Persistent memory
src/commands/memory - Session history
src/assistant/sessionHistory.ts - Runtime state
src/bootstrap/state.ts
Other components
- Developer
Connections 21
- Developer → Prompt input: enters prompts
README.md - Developer → Slash commands: invokes commands
README.md - Prompt input → Query pipeline: submits input
README.md - Slash commands → Query pipeline: starts workflows
README.md - Query pipeline → Query engine: runs query loop
src/query.ts - Query pipeline → Tool system: executes tool calls
src/query.ts - Query pipeline → API client: requests model responses
README.md - Query pipeline → Context compression: compresses context
src/query.ts - Tool system → Tool permissions: checks permissions
README.md - Terminal UI → Prompt input: renders input
- Query pipeline → Terminal UI: presents results
README.md - Tool system → MCP servers: invokes server tools
README.md - Tool system → Language servers: uses language services
README.md - Developer → IDE bridge: connects IDE
README.md - Developer → Remote sessions: starts remote sessions
README.md - Slash commands → Plugin system: manages plugins
README.md - Slash commands → Task management: manages tasks
README.md - Slash commands → Persistent memory: manages memory
README.md - Slash commands → Session history: resumes sessions
README.md - Query pipeline → Runtime state: uses runtime state
src/query.ts - Remote sessions → Session history: exchanges session events