47 lines
1.6 KiB
Markdown
47 lines
1.6 KiB
Markdown
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Common commands
|
|
|
|
```bash
|
|
# Install dependencies
|
|
bun install
|
|
|
|
# Standard build (./cli)
|
|
bun run build
|
|
|
|
# Dev build (./cli-dev)
|
|
bun run build:dev
|
|
|
|
# Dev build with all experimental features (./cli-dev)
|
|
bun run build:dev:full
|
|
|
|
# Compiled build (./dist/cli)
|
|
bun run compile
|
|
|
|
# Run from source without compiling
|
|
bun run dev
|
|
```
|
|
|
|
Run the built binary with `./cli` or `./cli-dev`. Set `ANTHROPIC_API_KEY` in the environment or use OAuth via `./cli /login`.
|
|
|
|
## High-level architecture
|
|
|
|
- **Entry point/UI loop**: src/entrypoints/cli.tsx bootstraps the CLI, with the main interactive UI in src/screens/REPL.tsx (Ink/React).
|
|
- **Command/tool registries**: src/commands.ts registers slash commands; src/tools.ts registers tool implementations. Implementations live in src/commands/ and src/tools/.
|
|
- **LLM query pipeline**: src/QueryEngine.ts coordinates message flow, tool use, and model invocation.
|
|
- **Core subsystems**:
|
|
- src/services/: API clients, OAuth/MCP integration, analytics stubs
|
|
- src/state/: app state store
|
|
- src/hooks/: React hooks used by UI/flows
|
|
- src/components/: terminal UI components (Ink)
|
|
- src/skills/: skill system
|
|
- src/plugins/: plugin system
|
|
- src/bridge/: IDE bridge
|
|
- src/voice/: voice input
|
|
- src/tasks/: background task management
|
|
|
|
## Build system
|
|
|
|
- scripts/build.ts is the build script and feature-flag bundler. Feature flags are set via build arguments (e.g., `--feature=ULTRAPLAN`) or presets like `--feature-set=dev-full` (see README for details). |