NanoClaw 评测:容器优先的 OpenClaw 替代品
面向自托管用户的 NanoClaw 评测:安装脚本、每个智能体独立的 Docker 容器、凭据保险库、诊断数据,以及只能用 Claude Code 定制意味着什么。
NanoClaw 最初是为了回应对 OpenClaw 的一个具体抱怨:代码太多,而且智能体默认在你的主机上运行命令。它给出的答案是一个小型 TypeScript 项目:由一个主机进程负责路由消息,每个智能体都运行在自己的 Linux 容器中,只能看到你挂载的文件夹。它于 2026 年 1 月 31 日发布,采用 MIT 许可证,截至我们 11 月 8 日查看时有 31,096 颗 GitHub 星。代价是它几乎所有事情都依赖 Claude 和 Claude Code。

适合谁
NanoClaw 适合这样的开发者:想在 WhatsApp、Telegram、Slack、Discord 或 iMessage 中使用 OpenClaw 风格的智能体,更看重隔离而不是生态规模,并且乐于让 Claude Code 修改自己的 fork。如果你想通过编辑配置文件来设置,或者不用 Claude Code,你会觉得它本末倒置。
安装:预留一小时
快速入门对工作量说得很坦白:“Plan for 30–60 minutes.”(预留 30 到 60 分钟。)你需要一台至少有 4 GB 内存的 Mac 或 Linux 机器(Windows 通过 WSL2)以及 Git。然后:
git clone https://github.com/nanocoai/nanoclaw.git
cd nanoclaw
bash nanoclaw.sh
脚本会安装缺少的组件(Node、pnpm 和 Docker),然后按固定顺序引导你完成:
- 沙箱镜像。 在本地构建(默认方式,不连接任何外部服务),或者从合作伙伴 Echo 获取预构建的加固镜像,这需要一个免费的 NanoClaw 账号。
- 凭据。 它会安装 OneCLI,一个存放模型登录凭据的保险库,然后你连接 Claude、Codex 或某个 API 密钥。指南假定你有 Claude Pro 或 Max 订阅。
- 文件夹访问。 你选择智能体还可以看到哪些额外的文件夹。全新安装时,这个列表是空的。
- 后台服务和一条测试消息。
- 可选:一个聊天渠道。 Telegram 通过 @BotFather 和配对码接入,Slack 可以替你创建应用,WhatsApp 则通过二维码或配对码作为设备关联。
这比 OpenClaw 的安装程序步骤更多,但每一步都是提前做出的安全决定,而不是留到以后再说。
隔离:默认使用容器和凭据保险库
shell 访问从不触及你的主机:每个智能体都在自己的容器中运行,只能看到你挂载的内容。不那么显眼的部分是凭据。智能体不持有原始 API 密钥;外发调用会经过一个凭据网关,并按智能体设置策略和速率限制。被提示注入的智能体可能滥用它已有的访问权限,但它无法读出并泄露一个它从未见过的密钥。NemoClaw 采用了类似的思路,把凭据保存在沙箱之外。
Docker 就是边界,所以 Docker 是硬性要求,而且机器必须保持开机联网,智能体才能回复。
遥测
NanoClaw 自己没有用户账号(可选的那个账号只用于加固镜像),也不训练任何模型。它默认会发送匿名的安装诊断数据;设置 NANOCLAW_NO_DIAGNOSTICS=1 即可停止。如果你获取加固镜像,该账号会记录你的邮箱和获取时间。
定制:刻意不设配置文件
这是定义 NanoClaw 的那个决定。没有什么需要配置的;要改变行为,你就让 Claude Code 修改你自己 fork 中的代码,而新渠道(Teams、Matrix、Google Chat、Signal、WeChat、邮件等)则以 /add-<channel> 技能的形式提供,由 Claude Code 应用。其他模型提供商也是同样的方式:OpenCode、Codex 和 Ollama 通过技能按智能体添加。
好处是代码库小到可以读完,配置也恰好是你要求的样子。但对自托管用户来说,缺点是实实在在的:
- 你的 fork 改动越多,拉取上游更新就越像一次合并而不是升级。
- 调试和修改都要经过 Claude Code,而它本身就需要模型订阅或密钥。
- 两个 NanoClaw 安装的行为可能相差很大,所以社区里的解答不那么能直接套用。
模型与成本
默认使用 Claude,通过 Anthropic 的 Claude Agent SDK 实现,所以实际运行成本就是 Claude 订阅或 API 用量。也可以通过技能使用 Ollama 运行本地开放权重模型,这会让模型费用降到零,代价是能力下降。定时任务在这方面有帮助:它们可以先运行一个脚本门控,在无事可做时跳过唤醒智能体,从而在频繁检查时节省 token。
横向对比
- OpenClaw:29 个聊天渠道、142 个官方插件和常规的配置文件,但在你开启沙箱之前,工具都在主机上运行。参见 NanoClaw vs OpenClaw。
- ZeroClaw:同样默认沙箱,是单个 Rust 二进制文件,不需要 Docker,默认无遥测。
- NemoClaw:把 OpenClaw 或 Hermes 包进一个带网络审批的沙箱,但处于 alpha 阶段,而且更重。
- Rakazo:同样为每台机器人电脑使用一个容器,面向多个常驻机器人,并提供 Web 和移动应用。
更多选择请见 OpenClaw 替代品。
结论
在轻量级智能体中,NanoClaw 拥有最强的隔离方案之一:每个智能体一个容器、空的文件夹允许列表,以及智能体从不持有的密钥。代价是被锁定在 Claude Code 这个配置工具上,还要维护一个 fork。如果你本来就整天在用 Claude Code,这个代价很低;否则,请选一个不需要它也能配置的智能体。
价格
| Open source | 免费 |
|
|---|
功能
| 联网搜索 | 是 |
|---|---|
| 图像生成 | 未知 |
| 语音模式 | 未知 |
| 文件上传 | 是 |
| 记忆 | 是 |
| 代你执行操作 | 是 |
| 应用集成 | 是 |
| 自主运行 | 是 |
| 主动给你发消息 | 是 |
| 可运行多个机器人 | 是 |
优点
- Every agent runs in its own Docker container and sees only the folders you mount, so shell access stays off your host
- Small codebase (one host process and a handful of files) that you customize by having Claude Code edit your fork
- Agents never hold raw API keys: outbound calls go through a credential gateway with per-agent policies and rate limits
- Many chat channels, including WhatsApp, Telegram, Slack, Discord, iMessage, Teams, Matrix and email, with one or several agents per channel
- Scheduled tasks with optional script gates that skip waking the agent when there's nothing to do
缺点
- Built around Claude and Claude Code: customizing, debugging and adding channels all go through Claude Code
- Sends anonymous setup diagnostics unless you set NANOCLAW_NO_DIAGNOSTICS=1
- No config files by design, so every change means editing code in your own fork
- Needs Docker, and Windows only works through WSL2
适合人群
- People who want OpenClaw-style chat-app agents with real container isolation
- Developers comfortable letting Claude Code customize their own fork
- Running several separate agents, each with its own memory and access
