opcode-demo.mp4
Tip
⭐ 给仓库点星并关注 @getAsterisk 在 X 上,抢先体验 asteria-swe-v0。
Note
本项目与 Anthropic 无关,未经 Anthropic 认可或赞助。Claude 是 Anthropic, PBC 的商标。这是一个使用 Claude 的独立开发者项目。
opcode 是一个强大的桌面应用程序,它改变了你与 Claude Code 交互的方式。基于 Tauri 2 构建,它提供了一个美观的 GUI 来管理你的 Claude Code 会话、创建自定义代理、跟踪使用情况等等。
将 opcode 视为你 Claude Code 的指挥中心 - 在命令行工具和视觉体验之间架起桥梁,让 AI 辅助开发更加直观和高效。
- 可视化项目浏览器:在
~/.claude/projects/中浏览所有 Claude Code 项目 - 会话历史:查看并恢复过去的编码会话,保留完整上下文
- 智能搜索:通过内置搜索快速找到项目和会话
- 会话洞察:一目了然地查看首条消息、时间戳和会话元数据
- 自定义 AI 代理:创建具有自定义系统提示和行为的专用代理
- 代理库:为不同任务构建专用的代理集合
- 后台执行:在独立进程中运行代理,实现非阻塞操作
- 执行历史:通过详细日志和性能指标跟踪所有代理运行
- 成本跟踪:实时监控你的 Claude API 使用情况和成本
- 代币分析:按模型、项目和时间段的详细分解
- 可视化图表:展示使用趋势和模式的精美图表
- 数据导出:导出使用数据用于报表和分析
- 服务器注册表:从中央 UI 管理模型上下文协议服务器
- 轻松配置:通过 UI 添加服务器或从现有配置导入
- 连接测试:使用前验证服务器连接性
- Claude Desktop 导入:从 Claude Desktop 导入服务器配置
- 会话版本控制:在编码会话的任意位置创建检查点
- 可视化时间线:通过分支时间线浏览会话历史
- 即时恢复:一键跳转回任意检查点
- 分叉会话:从现有检查点创建新分支
- 差异查看器:查看检查点之间的具体变化
- 内置编辑器:直接在应用内编辑 CLAUDE.md 文件
- 实时预览:实时查看 Markdown 渲染效果
- 项目扫描器:查找项目中的所有 CLAUDE.md 文件
- 语法高亮:完整的 Markdown 支持和语法高亮
- 启动 opcode:安装后打开应用程序
- 欢迎界面:选择 CC 代理或项目
- 首次设置:opcode 会自动检测你的
~/.claude目录
项目 → 选择项目 → 查看会话 → 恢复或新建
- 点击任意项目查看其会话
- 每个会话显示首条消息和时间戳
- 直接恢复会话或新建会话
CC 代理 → 创建代理 → 配置 → 执行
- 设计代理:设置名称、图标和系统提示
- 配置模型:选择可用的 Claude 模型
- 设置权限:配置文件读写和网络访问权限
- 执行任务:在任意项目上运行你的代理
菜单 → 使用分析仪表板 → 查看分析
- 按模型、项目和日期监控成本
- 导出数据用于报表
- 设置使用提醒(即将推出)
菜单 → MCP 管理器 → 添加服务器 → 配置
- 通过 JSON 手动或自动添加服务器
- 从 Claude Desktop 配置导入
- 使用前测试连接
- Claude Code CLI:从 Claude 官方网站 安装
在从源码构建 opcode 之前,请确保已安装以下内容:
- 操作系统:Windows 10/11、macOS 11+ 或 Linux (Ubuntu 20.04+)
- 内存:最低 4GB(推荐 8GB)
- 存储空间:至少 1GB 可用空间
-
Rust (1.70.0 或更高版本)
# 通过 rustup 安装 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
Bun (最新版本)
# 安装 bun curl -fsSL https://bun.sh/install | bash
-
Git
# 通常已预装,如果没有: # Ubuntu/Debian: sudo apt install git # macOS: brew install git # Windows: 从 https://git-scm.com 下载
-
Claude Code CLI
- 从 Claude 官方网站 下载并安装
- 确保
claude在你的 PATH 中可用
Linux (Ubuntu/Debian)
# 安装系统依赖
sudo apt update
sudo apt install -y \
libwebkit2gtk-4.1-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf \
build-essential \
curl \
wget \
file \
libssl-dev \
libxdo-dev \
libsoup-3.0-dev \
libjavascriptcoregtk-4.1-devmacOS
# 安装 Xcode 命令行工具
xcode-select --install
# 通过 Homebrew 安装额外依赖(可选)
brew install pkg-configWindows
- 安装 Microsoft C++ Build Tools
- 安装 WebView2(通常在 Windows 11 上已预装)
-
克隆仓库
git clone https://github.com/getAsterisk/opcode.git cd opcode -
安装前端依赖
bun install
-
构建应用程序
用于开发(带热重载)
bun run tauri dev
用于生产构建
# 构建应用程序 bun run tauri build # 构建的可执行文件将在: # - Linux: src-tauri/target/release/ # - macOS: src-tauri/target/release/ # - Windows: src-tauri/target/release/
-
平台特定构建选项
调试构建(编译更快,二进制文件更大)
bun run tauri build --debug
macOS 通用二进制(Intel + Apple Silicon)
bun run tauri build --target universal-apple-darwin
-
"cargo not found" 错误
- 确保 Rust 已安装且
~/.cargo/bin在你的 PATH 中 - 运行
source ~/.cargo/env或重启终端
- 确保 Rust 已安装且
-
Linux: "webkit2gtk not found" 错误
- 安装上面列出的 webkit2gtk 开发包
- 在较新的 Ubuntu 版本上,可能需要
libwebkit2gtk-4.0-dev
-
Windows: "MSVC not found" 错误
- 安装带 C++ 支持的 Visual Studio Build Tools
- 安装后重启终端
-
"claude command not found" 错误
- 确保 Claude Code CLI 已安装并在 PATH 中
- 用
claude --version测试
-
构建失败并显示"内存不足"
- 尝试使用更少的并行作业构建:
cargo build -j 2 - 关闭其他应用程序以释放 RAM
- 尝试使用更少的并行作业构建:
构建完成后,可以验证应用程序是否正常工作:
# 直接运行构建的可执行文件
# Linux/macOS
./src-tauri/target/release/opcode
# Windows
./src-tauri/target/release/opcode.exe构建过程会创建多个产物:
- 可执行文件:主 opcode 应用程序
- 安装程序(使用
tauri build时):.deb包(Linux).AppImage(Linux).dmg安装程序(macOS).msi安装程序(Windows).exe安装程序(Windows)
所有产物位于 src-tauri/target/release/。
- 前端:React 18 + TypeScript + Vite 6
- 后端:Rust + Tauri 2
- UI 框架:Tailwind CSS v4 + shadcn/ui
- 数据库:SQLite (通过 rusqlite)
- 包管理器:Bun
opcode/
├── src/ # React 前端
│ ├── components/ # UI 组件
│ ├── lib/ # API 客户端 & 工具
│ └── assets/ # 静态资源
├── src-tauri/ # Rust 后端
│ ├── src/
│ │ ├── commands/ # Tauri 命令处理器
│ │ ├── checkpoint/ # 时间线管理
│ │ └── process/ # 进程管理
│ └── tests/ # Rust 测试套件
└── public/ # 公共资源
# 启动开发服务器
bun run tauri dev
# 仅运行前端
bun run dev
# 类型检查
bunx tsc --noEmit
# 运行 Rust 测试
cd src-tauri && cargo test
# 代码格式化
cd src-tauri && cargo fmtopcode 优先考虑你的隐私和安全:
- 进程隔离:代理在独立进程中运行
- 权限控制:为每个代理配置文件和网络访问权限
- 本地存储:所有数据都保存在你的机器上
- 无遥测:不收集数据或进行跟踪
- 开源:通过开源代码实现完全透明
我们欢迎贡献!请参阅我们的贡献指南了解详情。
- 🐛 错误修复和改进
- ✨ 新功能和增强
- 📚 文档改进
- 🎨 UI/UX 增强
- 🧪 测试覆盖
- 🌐 国际化
本项目根据 AGPL 许可证授权 - 详见 LICENSE 文件。
