Skip to content
forked from winfunc/opcode

A powerful GUI app and Toolkit for Claude Code - Create custom agents, manage interactive Claude Code sessions, run secure background agents, and more.

License

Notifications You must be signed in to change notification settings

squirrel51/opcode

 
 

Repository files navigation

opcode Logo

opcode

一个强大的 Claude Code GUI 应用程序和工具包

创建自定义代理、管理交互式 Claude Code 会话、运行安全的后台代理等等。

Features Installation Usage Development Discord

457013521-6133a738-d0cb-4d3e-8746-c6768c82672c

opcode-demo.mp4

Tip

⭐ 为本仓库点赞,并在 X 上关注 @getAsterisk,以抢先体验 asteria-swe-v0

Note

本项目不隶属于 Anthropic,也未获得其认可或赞助。Claude 是 Anthropic, PBC 的商标。这是一个使用 Claude 的独立开发者项目。

🌟 概述

opcode 是一个功能强大的桌面应用程序,它改变了您与 Claude Code 交互的方式。它使用 Tauri 2 构建,提供了一个美观的 GUI,用于管理您的 Claude Code 会话、创建自定义代理、跟踪使用情况等等。

将 opcode 视为您的 Claude Code 命令中心——它弥合了命令行工具与可视化体验之间的鸿沟,使 AI 辅助开发更加直观和高效。

📋 目录

✨ 功能

🗂️ 项目与会话管理

  • 可视化项目浏览器: 浏览 ~/.claude/projects/ 中所有 Claude Code 项目
  • 会话历史: 查看并恢复具有完整上下文的过往编码会话
  • 智能搜索: 使用内置搜索快速查找项目和会话
  • 会话洞察: 一目了然地查看首条消息、时间戳和会话元数据

🤖 CC 代理

  • 自定义 AI 代理: 创建具有自定义系统提示和行为的专用代理
  • 代理库: 构建一个用于不同任务的专用代理集合
  • 后台执行: 在单独的进程中运行代理以进行非阻塞操作
  • 执行历史: 跟踪所有代理运行,包括详细日志和性能指标

📊 使用情况分析仪表板

  • 成本跟踪: 实时监控您的 Claude API 使用情况和成本
  • 令牌分析: 按模型、项目和时间段进行详细分类
  • 可视化图表: 美观的图表显示使用趋势和模式
  • 导出数据: 导出使用数据用于会计和分析

🔌 MCP 服务器管理

  • 服务器注册: 从中央 UI 管理模型上下文协议服务器
  • 轻松配置: 通过 UI 添加服务器或从现有配置导入
  • 连接测试: 使用前验证服务器连接
  • Claude Desktop 导入: 从 Claude Desktop 导入服务器配置

时间线与检查点

  • 会话版本控制: 在编码会话的任何时间点创建检查点
  • 可视化时间线: 使用分支时间线浏览会话历史
  • 即时恢复: 一键跳回任何检查点
  • 分叉会话: 从现有检查点创建新分支
  • 差异查看器: 精确查看检查点之间的变化

📝 CLAUDE.md 管理

  • 内置编辑器: 直接在应用程序内编辑 CLAUDE.md 文件
  • 实时预览: 实时查看 Markdown 渲染效果
  • 项目扫描器: 查找项目中所有 CLAUDE.md 文件
  • 语法高亮: 全面支持 Markdown 语法高亮

🚀 新增功能

feat: 为核心 UI 组件实现全面的国际化 (i18n)

此提交为多个核心 UI 组件引入了国际化 (i18n) 支持,使应用程序能够显示多语言文本,特别是英语和中文。

主要更改包括:

  • 集成 react-i18next 进行语言管理。
  • 对 StorageTab.tsx、ProxySettings.tsx、ProjectList.tsx 和 NFOCredits.tsx 组件进行国际化,将硬编码字符串替换为翻译键。
  • 在 src/locales/en/translation.json 和 src/locales/zh/translation.json 中添加了新的翻译键及其对应的英文和中文翻译。
  • 优化了 App.tsx 和 SlashCommandsManager.tsx 中的 i18n 设置,确保 useTranslation hook 的正确使用。
  • 更新了 translation_summary.md 以反映已完成的 i18n 任务。
  • 解决了与 i18n 集成相关的编译错误。

此功能通过提供语言本地化增强了用户体验,并为未来的语言扩展奠定了基础。

📖 使用方法

入门

  1. 启动 opcode: 安装后打开应用程序
  2. 欢迎屏幕: 选择 CC 代理或项目
  3. 首次设置: opcode 将自动检测您的 ~/.claude 目录

管理项目

项目 → 选择项目 → 查看会话 → 恢复或开始新会话
  • 点击任何项目以查看其会话
  • 每个会话显示首条消息和时间戳
  • 直接恢复会话或开始新会话

创建代理

CC 代理 → 创建代理 → 配置 → 执行
  1. 设计您的代理: 设置名称、图标和系统提示
  2. 配置模型: 选择可用的 Claude 模型
  3. 设置权限: 配置文件读/写和网络访问
  4. 执行任务: 在任何项目上运行您的代理

跟踪使用情况

菜单 → 使用情况仪表板 → 查看分析
  • 按模型、项目和日期监控成本
  • 导出数据用于报告
  • 设置使用警报(即将推出)

使用 MCP 服务器

菜单 → MCP 管理器 → 添加服务器 → 配置
  • 手动添加服务器或通过 JSON 添加
  • 从 Claude Desktop 配置导入
  • 使用前测试连接

🚀 安装

先决条件

发布可执行文件即将发布

🔨 从源代码构建

先决条件

在从源代码构建 opcode 之前,请确保您已安装以下内容:

系统要求

  • 操作系统: Windows 10/11, macOS 11+ 或 Linux (Ubuntu 20.04+)
  • 内存: 最低 4GB (推荐 8GB)
  • 存储: 至少 1GB 可用空间

所需工具

  1. Rust (1.70.0 或更高版本)

    # 通过 rustup 安装
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  2. Bun (最新版本)

    # 安装 bun
    curl -fsSL https://bun.sh/install | bash
  3. Git

    # 通常预装,如果未安装:
    # Ubuntu/Debian: sudo apt install git
    # macOS: brew install git
    # Windows: 从 https://git-scm.com 下载
  4. Claude Code CLI

平台特定依赖项

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-dev

macOS

# 安装 Xcode 命令行工具
xcode-select --install

# 通过 Homebrew 安装额外依赖项 (可选)
brew install pkg-config

Windows

构建步骤

  1. 克隆仓库

    git clone https://github.com/getAsterisk/opcode.git
    cd opcode
  2. 安装前端依赖项

    bun install
  3. 构建应用程序

    用于开发 (带热重载)

    bun run tauri dev

    用于生产构建

    # 构建应用程序
    bun run tauri build
    
    # 构建的可执行文件将位于:
    # - Linux: src-tauri/target/release/
    # - macOS: src-tauri/target/release/
    # - Windows: src-tauri/target/release/
  4. 平台特定构建选项

    调试构建 (编译速度更快,二进制文件更大)

    bun run tauri build --debug

    macOS 通用二进制文件 (Intel + Apple Silicon)

    bun run tauri build --target universal-apple-darwin

故障排除

常见问题

  1. “cargo not found” 错误

    • 确保 Rust 已安装且 ~/.cargo/bin 在您的 PATH 中
    • 运行 source ~/.cargo/env 或重启您的终端
  2. Linux: “webkit2gtk not found” 错误

    • 安装上面列出的 webkit2gtk 开发包
    • 在较新的 Ubuntu 版本上,您可能需要 libwebkit2gtk-4.0-dev
  3. Windows: “MSVC not found” 错误

    • 安装支持 C++ 的 Visual Studio Build Tools
    • 安装后重启您的终端
  4. “claude command not found” 错误

    • 确保 Claude Code CLI 已安装并在您的 PATH 中
    • 使用 claude --version 进行测试
  5. 构建失败并出现“内存不足”

    • 尝试使用较少的并行作业进行构建:cargo build -j 2
    • 关闭其他应用程序以释放内存

验证您的构建

构建后,您可以验证应用程序是否正常工作:

# 直接运行构建的可执行文件
# 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 with 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 fmt

🔒 安全

opcode 优先考虑您的隐私和安全:

  1. 进程隔离: 代理在单独的进程中运行
  2. 权限控制: 为每个代理配置文件和网络访问权限
  3. 本地存储: 所有数据都保留在您的机器上
  4. 无遥测: 不收集或跟踪任何数据
  5. 开源: 通过开源代码实现完全透明

🤝 贡献

我们欢迎贡献!请参阅我们的 贡献指南 了解详情。

贡献领域

  • 🐛 错误修复和改进
  • ✨ 新功能和增强
  • 📚 文档改进
  • 🎨 UI/UX 增强
  • 🧪 测试覆盖
  • 🌐 国际化

📄 许可证

本项目根据 AGPL 许可证授权 - 详情请参阅 LICENSE 文件。

🙏 致谢

  • 使用 Tauri 构建 - 用于构建桌面应用程序的安全框架
  • Anthropic 的 Claude

Asterisk 团队倾情打造 ❤️

报告 Bug · 请求功能

Star History

Star History Chart

About

A powerful GUI app and Toolkit for Claude Code - Create custom agents, manage interactive Claude Code sessions, run secure background agents, and more.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 78.3%
  • Rust 20.1%
  • CSS 1.5%
  • Other 0.1%