MCPcopy
hub / github.com/ValueCell-ai/ClawX

github.com/ValueCell-ai/ClawX @v0.4.13 sqlite

repository ↗ · DeepWiki ↗ · release v0.4.13 ↗
2,930 symbols 8,730 edges 527 files 225 documented · 8%
README

ClawX Logo

ClawX

OpenClaw AI 智能体的桌面客户端

功能特性为什么选择 ClawX快速上手系统架构开发指南参与贡献

Platform Electron React chat on Discord Downloads License

English | 简体中文 | 日本語 | Русский


概述

ClawX 是连接强大 AI 智能体与普通用户之间的桥梁。基于 OpenClaw 构建,它将命令行式的 AI 编排转变为易用、美观的桌面体验——无需使用终端。

无论是自动化工作流、连接通讯软件,还是调度智能定时任务,ClawX 都能提供高效易用的图形界面,帮助你充分发挥 AI 智能体的能力。

ClawX 预置了最佳实践的模型供应商配置,原生支持 Windows 平台以及多语言设置。当然,你也可以通过 设置 → 高级 → 开发者模式 来进行精细的高级配置。

如需完整的企业版、专属服务支持或面向您业务场景的定制化落地辅导,请联系 public@valuecell.ai


截图预览


为什么选择 ClawX

构建 AI 智能体不应该需要精通命令行。ClawX 的设计理念很简单:强大的技术值得拥有一个尊重用户时间的界面。

痛点 ClawX 解决方案
复杂的命令行配置 一键安装,配合引导式设置向导
手动编辑配置文件 可视化设置界面,实时校验
进程管理繁琐 自动管理网关生命周期
应用更新 启动时检查新版本,并在下载或安装前提示确认
多 AI 供应商切换 统一的供应商配置面板
技能/插件安装复杂 内置技能市场与管理界面

内置 OpenClaw 核心

ClawX 直接基于官方 OpenClaw 核心构建。无需单独安装,我们将运行时嵌入应用内部,提供开箱即用的无缝体验。

我们致力于与上游 OpenClaw 项目保持严格同步,确保你始终可以使用官方发布的最新功能、稳定性改进和生态兼容性。

打开开发者模式后,侧边栏还会提供原生 Dreams 页面,可在 ClawX 内查看 OpenClaw 记忆回顾、梦境日记,并执行基础维护操作;需要更深诊断时仍可从该页面打开完整 OpenClaw Dreams UI。


功能特性

🎯 零配置门槛

从安装到第一次 AI 对话,全程通过直观的图形界面完成。无需终端命令,无需 YAML 文件,无需到处寻找环境变量。

💬 智能聊天界面

通过现代化的聊天体验与 AI 智能体交互。支持多会话上下文、消息历史记录、Markdown 富文本渲染(包括 GitHub 风格表格以及由 KaTeX 渲染的 LaTeX 数学公式:$行内$$$块级$$\(行内\)\[块级\]),以及在多 Agent 场景下通过主输入框中的 @agent 直接路由到目标智能体。 从输入框插入的技能会以 /技能名 卡片形式显示;点击卡片可在右侧预览栏打开并阅读该技能的 SKILL.md。 当你使用 @agent 选择其他智能体时,ClawX 会直接切换到该智能体自己的对话上下文,而不是经过默认智能体转发。各 Agent 工作区默认彼此分离,但更强的运行时隔离仍取决于 OpenClaw 的 sandbox 配置。 每个 Agent 还可以单独覆盖自己的 provider/model 运行时设置;未覆盖的 Agent 会继续继承全局默认模型。

📡 多频道管理

同时配置和监控多个 AI 频道。每个频道独立运行,允许你为不同任务运行专门的智能体。 现在每个频道支持多个账号,并可在 Channels 页面直接完成账号绑定到 Agent 与默认账号切换。 对于自定义频道账号 ID,ClawX 现在会强制校验 OpenClaw 兼容的规范格式([a-z0-9_-]、小写、最长 64 位、且必须以字母或数字开头),避免路由匹配异常。 ClawX 现在还内置了腾讯官方个人微信渠道插件,可直接在 Channels 页面通过内置二维码流程完成微信连接。

⏰ 定时任务自动化

调度 AI 任务自动执行。定义触发器、设置时间间隔,让 AI 智能体 7×24 小时不间断工作。 现在定时任务页面已经可以直接配置外部投递,统一拆成“发送账号”和“接收目标”两个下拉选择。对于已支持的通道,接收目标会从通道目录能力或已知会话历史中自动发现,不需要再手动修改 jobs.json。任务的消息输入框也支持像主对话框那样以内联 /skill 令牌的方式插入技能(按所选智能体范围加载),让定时提示词可以直接触发技能。调度选择器现在分为周期单次两个选项卡:周期支持每小时、每天、工作日、每周、自定义(原始 cron)等频率,并内置时间/星期选择;单次则在所选日期(显示星期)和时间执行一次。单次任务必须设置为未来时间,并会在执行完成后由运行时自动清除。

🧩 可扩展技能系统

通过预构建的技能扩展 AI 智能体的能力。集成的 Skills 页面采用“本地优先”方式:会扫描托管目录与 workspace 技能目录,并且无需依赖 Gateway 即可启用或停用技能;在企业扩展接管时,也可以显示扩展提供的 marketplace。 ClawX 还会内置预装完整的文档处理技能(pdfxlsxdocxpptx),在启动时自动部署到托管技能目录(默认 ~/.openclaw/skills),并在首次安装时默认启用。额外预装技能(find-skillsself-improving-agenttavily-search)也会默认启用;若缺少必需的 API Key,OpenClaw 会在运行时给出配置错误提示。
Skills 页面可展示来自多个 OpenClaw 来源的技能(托管目录、workspace、额外技能目录),并显示每个技能的实际路径,便于直接打开真实安装位置。对于 OpenClaw 自带的 bundled skills,社区版现在在打包产物里只保留并展示 skill-creator;开发模式和打包版启动时都会直接清理其它 bundled skill,同时把这些已删除 bundled skill 在 openclaw.json 中残留的旧配置一并移除。

重点搜索技能所需环境变量: - TAVILY_API_KEY:用于 tavily-search(上游运行时也可能支持 OAuth)

🔐 安全的供应商集成

连接多个 AI 供应商(OpenAI、Anthropic 等),凭证安全存储在系统原生密钥链中。OpenAI 同时支持 API Key 与浏览器 OAuth(Codex 订阅)登录。 在开发者模式下,独立的“图像生成”页面支持配置 OpenAI 兼容生图端点(Base URL、API Key 和模型名,例如 gpt-image-2),生图请求会走专用的 /v1/images/generations 服务,聊天仍继续使用正常的 OpenAI Provider。 如果你通过 自定义(Custom)Provider 对接 OpenAI-compatible 网关,可以在 设置 → AI Providers → 编辑 Provider 中配置自定义 User-Agent,以提高兼容性。 编辑或切换 Provider 时,ClawX 会保留已有的模型级能力元数据,例如 input: ["text", "image"]。新选择的自定义 Provider 模型会使用与 OpenClaw onboarding 一致的图片输入能力推断;未知模型默认按纯文本模型处理。 如果兼容网关的 /models 因非鉴权原因不可用,ClawX 会在校验 API Key 时自动降级为轻量的 /chat/completions/responses 探测。

🌙 自适应主题

支持浅色模式、深色模式或跟随系统主题。ClawX 自动适应你的偏好设置。

🚀 开机启动控制

设置 → 通用 中,你可以开启 开机自动启动,让 ClawX 在系统登录后自动启动。

🔔 更新提示

ClawX 可以在启动时自动检查新版本。发现更新后会显示应用内提示;只有在你选择操作后,才会下载或安装更新。


快速上手

系统要求

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

安装方式

预构建版本(推荐)

Releases 页面下载适用于你平台的最新版本。

从源码构建

# 克隆仓库
git clone https://github.com/ValueCell-ai/ClawX.git
cd ClawX

# 初始化项目
pnpm run init

# 以开发模式启动
pnpm dev

首次启动

首次启动 ClawX 时,设置向导 将引导你完成以下步骤:

  1. 语言与区域 – 配置你的首选语言和地区
  2. AI 供应商 – 通过 API 密钥或 OAuth(支持浏览器/设备登录的供应商)添加账号
  3. 技能包 – 选择适用于常见场景的预配置技能
  4. 验证 – 在进入主界面前测试你的配置

如果系统语言在支持列表中,向导会默认选中该语言;否则回退到英文。

Moonshot(Kimi)说明:ClawX 默认保持开启 Kimi 的 web search。
当配置 Moonshot 后,ClawX 也会将 OpenClaw 配置中的 Kimi web search 同步到中国区端点(https://api.moonshot.cn/v1)。

代理设置

ClawX 内置了代理设置,适用于需要通过本地代理客户端访问外网的场景,包括 Electron 本身、OpenClaw Gateway,以及 Telegram 这类频道的联网请求。

打开 设置 → 网关 → 代理,配置以下内容:

  • 代理服务器:所有请求默认使用的代理
  • 绕过规则:需要直连的主机,使用分号、逗号或换行分隔
  • 开发者模式 下,还可以单独覆盖:
  • HTTP 代理
  • HTTPS 代理
  • ALL_PROXY / SOCKS

本地代理的常见填写示例:

代理服务器: http://127.0.0.1:7890

说明:

  • 只填写 host:port 时,会按 HTTP 代理处理。
  • 高级代理项留空时,会自动回退到“代理服务器”。
  • 保存代理设置后,Electron 网络层会立即重新应用代理,并自动重启 Gateway。
  • 如果启用了 Telegram,ClawX 还会把代理同步到 OpenClaw 的 Telegram 频道配置中。
  • 当 ClawX 代理处于关闭状态时,Gateway 的常规重启会保留已有的 Telegram 频道代理配置。
  • 如果你要明确清空 OpenClaw 中的 Telegram 代理,请在关闭代理后点一次“保存代理设置”。
  • 设置 → 高级 → 开发者 中,可以直接运行 OpenClaw Doctor,执行 openclaw doctor --json 并在应用内查看诊断输出。
  • 在 Windows 打包版本中,内置的 openclaw CLI/TUI 会通过随包分发的 node.exe 入口运行,以保证终端输入行为稳定。

系统架构

ClawX 采用 双进程 + Host API 统一接入架构。渲染进程只调用统一客户端抽象,协议选择与进程生命周期由 Electron 主进程统一管理:

┌───────────────────────────────────────────────────────────────────┐
│                        ClawX 桌面应用                              │
│                                                                   │
│  ┌─────────────────────────────────────────────────────────────┐  │
│  │              Electron 主进程                                 │  │
│  │  • 窗口与应用生命周期管理                                       │  │
│  │  • 网关进程监控                                               │  │
│  │  • 系统集成(托盘、通知、密钥链)                                │  │
│  │  • 自动更新编排                                               │  │
│  └─────────────────────────────────────────────────────────────┘  │
│                              │                                    │
│                              │ IPC (权威控制面)                     │
│                              ▼                                    │
│  ┌─────────────────────────────────────────────────────────────┐  │
│  │              React 渲染进程                                  │  │
│  │  • 现代组件化 UI(React 19)                                  │  │
│  │  • Zustand 状态管理                                          │  │
│  │  • 统一 host-api/api-client 调用                             │  │
│  │  • Markdown 富文本渲染                                       │  │
│  └────────────────────────────────────────────────────────────┘  │
└──────────────────────────────┬───────────────────────────────────┘
                               │
                               │ 类型化 IPC 请求
                               ▼
┌─────────────────────────────────────────────────────────────────┐
│                  主进程 Host Services 与 Gateway Manager          │
│                                                                 │
│  • host:invoke 类型化服务分发                                      │
│  • 设置、文件、会话、技能、供应商、诊断服务                           │
│  • 主进程持有 Gateway WebSocket 并负责进程监控                       │
└──────────────────────────────┬──────────────────────────────────┘
                               │
                               │ 主进程持有 WebSocket
                               ▼
┌─────────────────────────────────────────────────────────────────┐
│                     OpenClaw 网关                                │
│                                                                 │
│  • AI 智能体运行时与编排                                           │
│  • 消息频道管理                                                   │
│  • 技能/插件执行环境                                               │
│  • 供应商抽象层                                                   │
└─────────────────────────────────────────────────────────────────┘

设计原则

  • 进程隔离:AI 运行时在独立进程中运行,确保即使在高负载计算期间 UI 也能保持响应
  • 前端调用单一入口:渲染层统一走 host-api/api-client,不感知底层协议细节
  • 主进程掌控传输策略:Gateway WebSocket 只由 Electron Main 持有,渲染进程通过类型化 IPC 调用 Main
  • 扩展 IPC 贡献点:主进程扩展通过类型化 IPC 注册表贡献 host-api action,而不是挂载 HTTP route
  • 优雅恢复:内置重连、超时、退避逻辑,自动处理瞬时故障
  • 安全存储:API 密钥和敏感数据利用操作系统原生的安全存储机制
  • CORS 安全:渲染进程不直接请求本地 Gateway 或 Host API HTTP 端点

进程模型与 Gateway 排障

  • ClawX 基于 Electron,单个应用实例出现多个系统进程是正常现象(main/renderer/zygote/utility)。
  • 单实例保护同时使用 Electron 自带锁与本地进程文件锁回退机制,可在桌面会话总线异常时避免重复启动。
  • 滚动升级期间若新旧版本混跑,单实例保护仍可能出现不对称行为。为保证稳定性,建议桌面客户端尽量统一升级到同一版本。
  • 但 OpenClaw Gateway 监听应始终保持单实例127.0.0.1:18789 只能有一个监听者。
  • Gateway readiness 以 OpenClaw 的 system-presencehealthstatus 等核心信号为准;memory、Dreams 或频道失败会显示为能力降级,而不是全局 Gateway 故障。
  • 可用以下命令确认监听进程:
  • macOS/Linux:lsof -nP -iTCP:18789 -sTCP:LISTEN
  • Windows(PowerShell):Get-NetTCPConnection -LocalPort 18789 -State Listen
  • 点击窗口关闭按钮(X)默认只是最小化到托盘,并不会完全退出应用。请在托盘菜单中选择 Quit ClawX 执行完整退出。

使用场景

🤖 个人 AI 助手

配置一个通用 AI 智能体,可以回答问题、撰写邮件、总结文档并协助处理日常任务——全部通过简洁的桌面界面完成。

📊 自动化监控

设置定时智能体来监控新闻动态、追踪价格变动或监听特定事件。结果将推送到你偏好的通知渠道。

💻 开发者效率工具

将 AI 融入你的开发工作流。使用智能体进行代码审查、生成文档或自动化重复性编码任务。

🔄 工作流自动化

将多个技能串联起来,创建复杂的自动化流水线。处理数据、转换内容、触发操作——全部通过可视化方式编排。


开发指南

前置要求

  • Node.js:22.19+(推荐 LTS 版本)
  • 包管理器:pnpm 9+(推荐)或 npm
  • Linux(Ubuntu/Debian):运行 Electron 前,请先安装所需系统库: bash sudo apt-get install -y libnss3 libgtk-3-0 libxss1 libxtst6 libatspi2.0-0 libnotify4 xdg-utils 在 Ubuntu 24.04+ 上,部分软件包使用 t64 后缀,运行上述命令后 apt 会自动选择正确版本。

项目结构

```ClawX/ ├── electron/ # Electron 主进程 │ ├── services/ # 类型化 Host API、Provider、Secrets 与运行时服务 │ │ ├── providers/ # Provider/account 模型同步逻辑 │ │ └── secrets/ # 系统钥匙串与密钥存储 │ ├── shared/ # 共享 Provider schema/常量 │ │ └── providers/ │ ├── main/ # 应用入口、窗口、IPC 注册 │ ├── gateway/ # OpenClaw 网关进程管理 │ ├── preload/ # 安全 IPC 桥接 │ └── utils/ # 工具模块(存储、认证、路径) ├── src/ # React 渲染进程 │ ├── lib/ # 前端统一 API 与错误模型 │ ├── stores/ # Zustand 状态仓库(settings/chat/gateway) │ ├── components/ # 可复用 UI 组件 │ ├── pages/ # Setup/Dashboard/Chat/Channels/Skills/Cron/Settings │ ├── i18n/ # 国际化资源 │ └── types/ # TypeScript 类型定义 ├── tests/ │ ├── e2e/ # Playwright Electron 端到端冒烟测试 │ └── unit/ # Vitest 单元/集成型测试 ├── resources/ # 静态资源(图标、图片) └── scripts/ # 构建与工具脚本

### 常用命令

```bash
# 开发
pnpm run init             # 安装依赖并下载捆绑二进制(uv、agent-browser)
pnpm dev                  # 以热重载模式启动(若缺失会自动准备预装技能包)

# 代码质量
pnpm lint                 # 运行 ESLint 检查
pnpm typecheck            # TypeScript 类型检查

# 测试
pnpm test                 # 运行单元测试
pnpm run test:e2e         # 运行 Electron E2E 冒烟测试
pnpm run test:e2e:headed  # 以可见窗口运行 Electron E2E 测试
pnpm run comms:replay     # 计算通信回放指标
pnpm run comms:baseline   # 刷新通信基线快照
pnpm run comms:compare    # 将回放指标与基线阈值对比

# 构建与打包
pnpm run build:vite       # 仅构建前端
pnpm build                # 完整生产构建(含打包资源)
pnpm package              # 为当前平台打包(包含预装技能资源)
pnpm package:mac          # 为 macOS 打包
pnpm package:win          # 为 Windows 打包
pnpm package:linux        # 为 Linux 打包

在无头 Linux 环境下,Electron 测试需要显示服务;可使用 xvfb-run -a pnpm run test:e2e

通信回归检查

当 PR 涉及通信链路(Gateway 事件、Chat 收发流程、Channel 投递、传输回退)时,建议执行:

pnpm run comms:replay
pnpm run comms:compare

CI 中的 comms-regression 会校验必选场景与阈值。

技术栈

层级 技术
运行时 Electron 40+
UI 框架 React 19 + TypeScript
样式 Tailwind CSS + shadcn/ui
状态管理 Zustand
构建工具 Vite + electron-builder
测试 Vitest + Playwright
动画 Framer Motion
图标 Lucide React

参与贡献

我们欢迎社区的各种贡献!无论是修复 Bug、开发新功能、改进文档还是翻译——每一份贡献都让 ClawX 变得更好。

如何贡献

  1. Fork 本仓库
  2. 创建 功能分支(git checkout -b feature/amazing-feature
  3. 提交 清晰描述的变更
  4. 推送 到你的分支
  5. 创建 Pull Request

贡献规范

  • 遵循现有代码风格(ESLint + Prettier)
  • 为新功能编写测试
  • 按需更新文档
  • 保持提交原子化且描述清晰

致谢

ClawX 构建于以下优秀的开

Extension points exported contracts — how you extend this code

SecretStore (Interface)
(no doc) [2 implementers]
electron/services/secrets/secret-store.ts
MarketplaceProviderExtension (Interface)
(no doc) [2 implementers]
electron/extensions/types.ts
MarketplaceProvider (Interface)
(no doc) [1 implementers]
electron/gateway/clawhub.ts
OpenClawStatus (Interface)
(no doc)
electron/utils/paths.ts
AgentProviderUpdatePayload (Interface)
(no doc)
electron/main/provider-model-sync.ts
ProviderConfig (Interface)
(no doc)
electron/shared/providers/types.ts
IpcRenderer (Interface)
(no doc)
src/types/electron.d.ts
NavItemProps (Interface)
(no doc)
src/components/layout/Sidebar.tsx

Core symbols most depended-on inside this repo

get
called by 216
electron/services/secrets/secret-store.ts
cn
called by 201
src/lib/utils.ts
set
called by 185
electron/services/secrets/secret-store.ts
invokeHost
called by 129
src/lib/host-api-client.ts
on
called by 103
src/types/electron.d.ts
resolve
called by 84
electron/main/ipc/host-invoke.ts
isRecord
called by 64
electron/services/payload-utils.ts
rpc
called by 63
electron/gateway/manager.ts

Shape

Function 2,281
Interface 308
Method 273
Class 64
Enum 4

Languages

TypeScript100%
Python1%

Modules by API surface

src/stores/chat.ts150 symbols
electron/utils/openclaw-auth.ts108 symbols
src/stores/chat/helpers.ts87 symbols
electron/utils/channel-config.ts57 symbols
electron/gateway/manager.ts52 symbols
electron/utils/agent-config.ts50 symbols
electron/services/channels-api.ts48 symbols
electron/services/providers/provider-service.ts43 symbols
electron/gateway/client.ts40 symbols
src/pages/Cron/index.tsx35 symbols
src/pages/Chat/ChatMessage.tsx33 symbols
electron/utils/plugin-install.ts32 symbols

Dependencies from manifests, versioned

@buape/carbon0.16.0 · 1×
@discordjs/voice0.19.2 · 1×
@eslint/js10.0.1 · 1×
@grammyjs/runner2.0.3 · 1×
@grammyjs/transformer-throttler1.2.1 · 1×
@homebridge/ciao1.3.7 · 1×
@larksuite/openclaw-lark2026.6.10 · 1×
@larksuiteoapi/node-sdk1.61.1 · 1×
@monaco-editor/react4.7.0 · 1×
@openclaw/discord2026.6.10 · 1×
@openclaw/qqbot2026.6.10 · 1×
@openclaw/whatsapp2026.6.10 · 1×

For agents

$ claude mcp add ClawX \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact