A powerful web toolkit for Claude Code
Run anywhere - browser, server, or mobile. Create custom agents, manage interactive Claude Code sessions, run secure background agents, and more.
opcode-demo.mp4
Tip
โญ Star the repo and follow @getAsterisk on X for early access to asteria-swe-v0.
Note
This project is not affiliated with, endorsed by, or sponsored by Anthropic. Claude is a trademark of Anthropic, PBC. This is an independent developer project using Claude.
๐ Overview
opcode is a powerful web-based toolkit for Claude Code. Originally a desktop application built with Tauri, it has evolved into a modern web application that runs anywhere - in your browser, on a server, or on your phone.
Think of opcode as your command center for Claude Code - a beautiful web interface that makes AI-assisted development more intuitive and productive, accessible from any device.
๐ Table of Contents
- ๐ Overview
- ๐ Quick Start
- ๐๏ธ Architecture
- โจ Features
- ๐ Usage
- ๐จ Development
- ๐ Security
- ๐ค Contributing
- ๐ License
- ๐ Acknowledgments
๐ Quick Start
# Clone and enter the project git clone https://github.com/getAsterisk/opcode.git cd opcode # Install dependencies bun install # Start the web server (frontend + API) just dev-web
Then open http://localhost:1420 in your browser.
Available Commands
| Command | Description |
|---|---|
just dev-web |
Start frontend dev server (0.0.0.0:1420) |
just web |
Run full web server with Rust backend |
just web-port 8080 |
Run web server on custom port |
๐๏ธ Architecture
opcode/
โโโ src/ # React frontend
โ โโโ components/ # UI components
โ โโโ lib/ # API client & utilities
โ โโโ assets/ # Static assets
โโโ src-tauri/ # Rust backend (also serves web UI)
โ โโโ src/
โ โ โโโ commands/ # API handlers
โ โ โโโ checkpoint/ # Timeline management
โ โ โโโ process/ # Process management
โ โโโ Cargo.toml
โโโ dist/ # Built frontend assets
How It Works
- Frontend: React + TypeScript + Vite frontend built for the web
- Backend: Rust server that handles Claude Code integration and API requests
- Communication: Frontend communicates with Rust backend via REST API
The backend can be run:
- Locally: Access via localhost
- On a Server: Access via browser from anywhere
- On Mobile: Works on phone browsers via network IP
โจ Features
๐๏ธ Project & Session Management
- Visual Project Browser: Navigate through all your Claude Code projects in
~/.claude/projects/ - Session History: View and resume past coding sessions with full context
- Smart Search: Find projects and sessions quickly with built-in search
- Session Insights: See first messages, timestamps, and session metadata at a glance
๐ค CC Agents
- Custom AI Agents: Create specialized agents with custom system prompts and behaviors
- Agent Library: Build a collection of purpose-built agents for different tasks
- Background Execution: Run agents in separate processes for non-blocking operations
- Execution History: Track all agent runs with detailed logs and performance metrics
๐ Usage Analytics Dashboard
- Cost Tracking: Monitor your Claude API usage and costs in real-time
- Token Analytics: Detailed breakdown by model, project, and time period
- Visual Charts: Beautiful charts showing usage trends and patterns
- Export Data: Export usage data for accounting and analysis
๐ MCP Server Management
- Server Registry: Manage Model Context Protocol servers from a central UI
- Easy Configuration: Add servers via UI or import from existing configs
- Connection Testing: Verify server connectivity before use
- Claude Desktop Import: Import server configurations from Claude Desktop
โฐ Timeline & Checkpoints
- Session Versioning: Create checkpoints at any point in your coding session
- Visual Timeline: Navigate through your session history with a branching timeline
- Instant Restore: Jump back to any checkpoint with one click
- Fork Sessions: Create new branches from existing checkpoints
- Diff Viewer: See exactly what changed between checkpoints
๐ CLAUDE.md Management
- Built-in Editor: Edit CLAUDE.md files directly within the app
- Live Preview: See your markdown rendered in real-time
- Project Scanner: Find all CLAUDE.md files in your projects
- Syntax Highlighting: Full markdown support with syntax highlighting
๐ Usage
Getting Started
- Launch opcode: Open the application after installation
- Welcome Screen: Choose between CC Agents or Projects
- First Time Setup: opcode will automatically detect your
~/.claudedirectory
Managing Projects
Projects โ Select Project โ View Sessions โ Resume or Start New
- Click on any project to view its sessions
- Each session shows the first message and timestamp
- Resume sessions directly or start new ones
Creating Agents
CC Agents โ Create Agent โ Configure โ Execute
- Design Your Agent: Set name, icon, and system prompt
- Configure Model: Choose between available Claude models
- Set Permissions: Configure file read/write and network access
- Execute Tasks: Run your agent on any project
Tracking Usage
Menu โ Usage Dashboard โ View Analytics
- Monitor costs by model, project, and date
- Export data for reports
- Set up usage alerts (coming soon)
Working with MCP Servers
Menu โ MCP Manager โ Add Server โ Configure
- Add servers manually or via JSON
- Import from Claude Desktop configuration
- Test connections before using
๐ Installation
Prerequisites
- Claude Code CLI: Install from Claude's official site
Release Executables Will Be Published Soon
๐จ Development
Prerequisites
Before developing opcode, ensure you have:
-
Rust (1.70.0 or later)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
Bun (latest version)
curl -fsSL https://bun.sh/install | bash -
Git
- Usually pre-installed on most systems
-
Claude Code CLI
- Download from Claude's official site
- Ensure
claudeis in your PATH
Development Commands
# Install dependencies bun install # Start frontend dev server (hot reload) just dev-web # Build and run full web server just web # Build frontend for production bun run build # Run Rust tests cd src-tauri && cargo test # Format Rust code cd src-tauri && cargo fmt
Access During Development
| Mode | URL | Access |
|---|---|---|
| Frontend dev | http://localhost:1420 | Local only |
| Full server | http://localhost:8080 | Local & network |
For mobile/phone access:
just ip # Shows your local IP # Then open http://YOUR_IP:1420 on your phone
๐ ๏ธ Tech Stack
- Frontend: React 18 + TypeScript + Vite 6
- Backend: Rust + Axum (web server)
- UI Framework: Tailwind CSS v4 + shadcn/ui
- Database: SQLite (via rusqlite)
- Package Manager: Bun
Project Structure
opcode/
โโโ src/ # React frontend
โ โโโ components/ # UI components
โ โโโ lib/ # API client & utilities
โ โโโ assets/ # Static assets
โโโ src-tauri/ # Rust backend
โ โโโ src/
โ โ โโโ commands/ # API command handlers
โ โ โโโ checkpoint/ # Timeline management
โ โ โโโ process/ # Process management
โ โโโ Cargo.toml
โโโ dist/ # Built frontend assets
๐ Security
opcode prioritizes your privacy and security:
- Process Isolation: Agents run in separate processes
- Permission Control: Configure file and network access per agent
- Local Storage: All data stays on your machine
- No Telemetry: No data collection or tracking
- Open Source: Full transparency through open source code
๐ค Contributing
We welcome contributions! Please see our Contributing Guide for details.
Areas for Contribution
- ๐ Bug fixes and improvements
- โจ New features and enhancements
- ๐ Documentation improvements
- ๐จ UI/UX enhancements
- ๐งช Test coverage
- ๐ Internationalization
๐ License
This project is licensed under the AGPL License - see the LICENSE file for details.
๐ Acknowledgments
- React - UI framework
- Vite - Build tool
- Tailwind CSS - Styling
- Claude by Anthropic
