A modern web interface for Claude Code CLI - Transform your command-line coding experience into an intuitive web-based chat interface
codeGeneration-dark-2025-06-23T14-47-36.webm
- β¨ Why Claude Code Web UI?
- π Quick Start
- βοΈ CLI Options
- π§ Development
- π Security Considerations
- π Documentation
- β FAQ
- π€ Contributing
- π License
Transform the way you interact with Claude Code
Instead of being limited to command-line interactions, Claude Code Web UI brings you:
| CLI Experience | Web UI Experience |
|---|---|
| β¨οΈ Terminal only | π Any device with a browser |
| π± Desktop bound | π± Mobile-friendly interface |
| π Plain text output | π¨ Rich formatted responses |
| ποΈ Manual directory switching | π Visual project selection |
Get up and running in under 2 minutes:
# Install globally via npm
npm install -g claude-code-webui
# Start the server
claude-code-webui
# Open browser to http://localhost:8080# Download and run (macOS ARM64 example)
curl -LO https://github.com/sugyan/claude-code-webui/releases/latest/download/claude-code-webui-macos-arm64
chmod +x claude-code-webui-macos-arm64
./claude-code-webui-macos-arm64
# Open browser to http://localhost:8080# Backend (choose one)
cd backend && deno task dev # Deno runtime
cd backend && npm run dev # Node.js runtime
# Frontend (new terminal)
cd frontend && npm run dev
# Open browser to http://localhost:3000- β Claude CLI installed and authenticated (Get it here)
- β Node.js >=20.0.0 (for npm installation) or Deno (for development)
- β Modern browser (Chrome, Firefox, Safari, Edge)
- β dotenvx (for development): Install guide
The backend server supports the following command-line options:
| Option | Description | Default |
|---|---|---|
-p, --port <port> |
Port to listen on | 8080 |
--host <host> |
Host address to bind to (use 0.0.0.0 for all interfaces) | 127.0.0.1 |
--claude-path <path> |
Path to claude executable (overrides automatic detection) | Auto-detect |
-d, --debug |
Enable debug mode | false |
-h, --help |
Show help message | - |
-v, --version |
Show version | - |
PORT- Same as--portDEBUG- Same as--debug
# Default (localhost:8080)
./claude-code-webui
# Custom port
./claude-code-webui --port 3000
# Bind to all interfaces (accessible from network)
./claude-code-webui --host 0.0.0.0 --port 9000
# Enable debug mode
./claude-code-webui --debug
# Custom Claude CLI path (for non-standard installations)
./claude-code-webui --claude-path /path/to/claude
# Using environment variables
PORT=9000 DEBUG=true ./claude-code-webui# Clone repository
git clone https://github.com/sugyan/claude-code-webui.git
cd claude-code-webui
# Install dotenvx (see prerequisites)
# Start backend (choose one)
cd backend
deno task dev # Deno runtime
# OR
npm run dev # Node.js runtime
# Start frontend (new terminal)
cd frontend
npm run devCreate .env file in project root:
echo "PORT=9000" > .envBoth backend and frontend will automatically use this port:
- Backend: Uses dotenvx to read the
.envfile - Frontend: Uses Vite's built-in
.envsupport
Important: This tool executes Claude CLI locally and provides web access to it.
- π Local development: Default localhost access
- π± Personal network: LAN access from your own devices
- No authentication: Currently no built-in auth mechanism
- System access: Claude can read/write files in selected projects
- Network exposure: Configurable but requires careful consideration
# Local only (recommended)
./claude-code-webui --port 8080
# Network access (trusted networks only)
./claude-code-webui --port 8080 --host 0.0.0.0Never expose to public internet without proper security measures.
For comprehensive technical documentation, see CLAUDE.md which covers:
- Architecture overview and design decisions
- Detailed development setup instructions
- API reference and message types
Q: Do I need Claude API access?
Yes, you need the Claude CLI tool installed and authenticated. The web UI is a frontend for the existing Claude CLI.
Q: Can I use this on mobile?
Yes! The web interface is fully responsive and works great on mobile devices when connected to your local network.
Q: Is my code safe?
Yes, everything runs locally. No data is sent to external servers except Claude's normal API calls through the CLI.
Q: Can I deploy this to a server?
While technically possible, it's designed for local use. If deploying remotely, ensure proper authentication and security measures.
Q: How do I update?
Download the latest binary from releases or pull the latest code for development mode.
Q: What if Claude CLI isn't found?
Ensure Claude CLI is installed and available in your PATH. Run claude --version to verify. For custom installations, use the --claude-path option to specify the exact path to your Claude executable.
Alternative Claude Code Web UIs:
- siteboon/claudecodeui
- A popular web-based Claude Code interface with mobile and remote management focus
- Offers additional features for project and session management
- Great alternative if you need more advanced remote access capabilities
Both projects aim to make Claude Code more accessible through web interfaces, each with their own strengths and approach.
We welcome contributions! Please see our development setup and feel free to:
- π Report bugs
- β¨ Suggest features
- π Improve documentation
- π§ Submit pull requests
Fun fact: This project is almost entirely written and committed by Claude Code itself! π€
We'd love to see pull requests from your Claude Code sessions too :)
MIT License - see LICENSE for details.
Made with β€οΈ for the Claude Code community
β Star this repo β’ π Report issues β’ π¬ Discussions