ITPub博客

首页 > 人工智能 > 机器人开发 > 🦀 用 OpenClaw 实现一个 C++ 复刻版 QuantClaw

🦀 用 OpenClaw 实现一个 C++ 复刻版 QuantClaw

原创 机器人开发 作者:PikiwiDB 时间:2026-02-24 12:12:14 0 删除 编辑

> ⭐ **GitHub** : <https://github.com/QuantClaw/QuantClaw> | Apache 2.0 | C++17 | 324 tests ✅


最近在 Discord 上和 OpenClaw 聊得比较多,越聊越想把它搬到 C++ 上实现。于是花了些时间,通过在 Discord 上与 OpenClaw 聊天的方式用 C++ 17 从零复刻了一个版本------带 WebSocket 网关、Web 控制台以及 Discord/Telegram 接入。


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-e9b721587f0fda4540260646819312fe.png)


目前 324 个单元测试已全部跑通。今天正式开源。


![quantclaw-logo.png](http://oscimg.oschina.net/AiCreationDetail/up-9c0adbd63b0c54150522ea294a69f42b.png)


*** ** * ** ***


🗣️ 故事的起点:在 Discord 上和 OpenClaw 聊天

----------------------------------


[OpenClaw](https://github.com/openclaw/openclaw) 是一个挺有意思的开源 AI 项目,新年期间我一直在折腾它。日常就是在 Discord 里和机器人对话------理需求、聊想法,或者让它帮忙写点代码。


聊久了,职业病就犯了:OpenClaw 基于 TypeScript,功能很全,但运行时开销确实不小。我开始想:如果用 C++ 复刻一个,性能能压榨到什么程度?能不能跑在一台 2GB 内存的廉价小服务器上?


**于是有了 QuantClaw------一个在对话中诞生,用 C++17 复刻的 OpenClaw。**


*** ** * ** ***


🤔 为什么要用 C++ 复刻?

----------------


目前市面上的 AI 助手框架基本是 Python 或 TypeScript 的天下。开发效率虽高,但运行时占用的内存也多------一个空闲的 Node.js 进程通常要吃掉 50-80MB 内存,Python 甚至更多。


如果你打算在一台 2GB 内存的云服务器上 7x24 挂着私人 AI 助手,这部分内存开销就成了不得不考虑的资源成本。


**QuantClaw 的做法是:全量 C++17 实现。**


| | Node.js (OpenClaw) | C++ (QuantClaw) |

|---|---|---|

| 空闲内存 | ~60MB | **~8MB** |

| 启动时间 | ~2s | **<200ms** |

| GC 停顿 | 有 | **无** |

| 分发形式 | 庞大的依赖包 | **单文件二进制** |


原生二进制运行,没有解释器开销和 GC 停顿,启动即就绪。内存占用降到了同类方案的 1/8 左右。


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-6888b9970d00df7ad987fe5131d74406.png)


上图是我运行 QuantClaw 后的资源占用情况,其资源消耗极少。


*** ** * ** ***


📐 QuantClaw 是什么

----------------


QuantClaw 是 [OpenClaw](https://github.com/openclaw/openclaw) 生态的一个 C++ 原生实现。它兼容 OpenClaw 的工作空间标准(SOUL.md / USER.md / MEMORY.md)、技能系统(SKILL.md)以及 WebSocket RPC 协议,可以直接对接原有的前端和客户端。


简单说:**这是一个更轻量、更高性能的私人 AI 助手后端。**


*** ** * ** ***


🏗️ 架构一览

--------


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-a619e043e462ae48d8d228cb66ce6177.png)


核心组件纯 C++ 实现,频道适配器(如 Discord)作为独立进程通过 WebSocket RPC 接入网关,保持了和 OpenClaw 一致的解耦设计。


*** ** * ** ***


🚀 启动:一行命令

----------


```bash

git clone https://github.com/QuantClaw/QuantClaw.git

cd QuantClaw && mkdir build && cd build

cmake .. && make -j$(nproc)

./quantclaw gateway

```


网关启动很快,你可以看到各组件初始化的日志:


![2quanclaw-log.png](http://oscimg.oschina.net/AiCreationDetail/up-297eae0dc327dcc67c1a0a4dd4fe6871.png)


从 MemoryManager 到 GatewayServer 初始化完成,整个过程不到 1 秒。


*** ** * ** ***


🖥️ Web 控制台

-----------


网关自带了一个简单的 Web 控制台。浏览器访问 `localhost:18790` 即可与助手对话:


![3quantclaw-dashboard-chat.png](http://oscimg.oschina.net/AiCreationDetail/up-a8d42a0885cbea5799ce462e6377c76d.png)


顶部显示实时连接数、运行时间等状态信息。下方聊天界面支持 Markdown 渲染。


![4quantclaw-dashboard-status.png](http://oscimg.oschina.net/AiCreationDetail/up-d1793cb49322c016ff9465183beb96dc.png)


后台提供了 12 个 REST API 端点,方便通过 `curl` 或其他工具集成到自动化流里。


*** ** * ** ***


🎮 Discord 频道接入

---------------


这是 QuantClaw 诞生的初衷。在配置里填入 Token,网关会自动拉起适配器进程:


```json

{

  "channels": {

    "discord": {

      "enabled": true,

      "token": "YOUR_DISCORD_BOT_TOKEN"

    }

  }

}

```


接入后的对话效果:


![5quanclaw-discord-chat.jpg](http://oscimg.oschina.net/AiCreationDetail/up-771115a0e689133e1a56a51e23b99898.jpg)


消息流转逻辑如下:


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-b83f046b8932afd89b0564bb771683b9.png)


日志会记录每一轮 RPC 调用的链路,方便排查消息流转状态:


![6quantclaw-discord-chat-log.png](http://oscimg.oschina.net/AiCreationDetail/up-861769cccb81dd89e55dc1e5ea624419.png)


*** ** * ** ***


🔌 多模型支持

--------


QuantClaw 支持通过 `provider/model-name` 前缀进行路由:


```json

{ "model": "openai/Qwen3-32B" }

{ "model": "openai/gpt-4o" }

{ "model": "anthropic/claude-sonnet-4-6" }

```


兼容 OpenAI 格式的接口基本都能无缝接入。


*** ** * ** ***


📦 功能清单

-------


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-78f3733a74cac15661f035bb5043ea15.png)


目前 324 个单元测试全绿通过 ✅


*** ** * ** ***


🔧 技术栈

------


纯 C++17 实现,核心依赖如下:


![image.png](http://oscimg.oschina.net/AiCreationDetail/up-5217b78cd7a537f622ebac304d6653b2.png)


*** ** * ** ***


⚡ 快速上手

------


**Ubuntu / Debian:**


```bash

sudo apt install build-essential cmake libssl-dev \

  libcurl4-openssl-dev nlohmann-json3-dev libspdlog-dev zlib1g-dev


git clone https://github.com/QuantClaw/QuantClaw.git

cd QuantClaw && mkdir build && cd build

cmake .. && make -j$(nproc)

./quantclaw_tests   # 跑一遍测试

./quantclaw gateway # 启动

```


*** ** * ** ***


✍️ 写在最后

-------


QuantClaw 的想法起得很简单------在 Discord 里聊着聊着,就想写个更轻、更快的 C++ 版本。从第一行代码到 324 个测试跑通,这个过程也是一次有趣的 AI 协同实践。


目前的版本是 v0.2.0,核心功能已经跑通。如果你也在找一个轻量、低开销的私人 AI 后端,欢迎尝试。


⭐ **GitHub** : <https://github.com/QuantClaw/QuantClaw>


**License**: Apache 2.0.


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70037778/viewspace-3110830/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2024-03-28

  • 博文量
    12
  • 访问量
    10242