学习路径
自主型 AI 代理正在改变人们使用软件的方式。您无需在各个应用和工具间来回切换,只需发出一个简单的文本指令,让代理为您完成任务。这可以包括设置提醒、处理电子邮件、支持项目管理,或协助编程与写作等。
像 OpenClaw 这样的工具让这一理念更具可行性。它们展示了当 AI 代理始终在您的笔记本或手机上可用时可以做到什么。同时,更大型的代理系统可能会显得笨重、复杂且难以管理。它们可能带来安全隐患、需要更多设置,并且对于个人本地工作流来说超出了您的实际需求。
这正是 NanoClaw 的用武之地。NanoClaw 是一种更轻量的、本地优先的替代方案,更易于在您自己的机器上运行和试验。它在设计上也考虑了安全性,使用基于 Docker 的隔离来保持环境封闭并保护您的数据。
在本教程中,您将使用 WSL 在 Windows 上设置 NanoClaw,并按步骤准备环境。您将安装所需的系统工具,设置 Node.js,克隆 NanoClaw 仓库,连接身份验证,并在本地运行该项目。
若想了解这两款代理工具的对比,建议阅读我们的 NanoClaw 与 OpenClaw 对比指南。
1. 设置 WSL 和 Linux 环境
在开始之前,您需要一台较新的 Windows 10/11 电脑,支持 WSL 2 和硬件虚拟化,并具备足够的内存(至少 4 GB,最好 8 GB 或以上)和磁盘空间(约 20–30 GB 可用)以运行 Docker Desktop 和 Ubuntu WSL 环境。
首先在 Windows 上安装 WSL。以管理员身份打开 PowerShell 并运行:
wsl --install
安装完成后,必要时重启,然后检查您的设置:
wsl --status
您需要确保发行版运行在 WSL 2 上。这一点很重要,因为 Claude Code 在 Windows 上支持 WSL,并且 Anthropic 表示沙箱在 WSL 2 上可用,而 WSL 1 不受支持。
WSL 就绪后,启动 Ubuntu:
wsl

在 Ubuntu 中,更新系统并安装基础开发工具:
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential curl git wget
这样您就拥有了一个干净的 Linux 环境以及接下来设置所需的核心工具。
2. 安装 Node.js、Docker 和 Claude Code
在安装 NanoClaw 本体之前,您需要先准备它所依赖的工具。
本部分中,您将安装 Node.js 以便项目运行其 JavaScript 工具链,确保 Docker 可在 WSL 内使用,使 NanoClaw 能使用隔离的容器,并安装 Claude Code,后续您将使用它来运行 NanoClaw 的引导式设置。
使用 NVM 安装 Node.js
在 WSL 中安装 Node.js 的最简单方法是使用 NVM(Node 版本管理器)。它能以一种干净且灵活的方式管理 Node 版本,而无需依赖系统包管理器。
在 Ubuntu 终端中运行以下命令:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.4/install.sh | bash
\. "$HOME/.nvm/nvm.sh"
nvm install 24
node -v
npm -v
之后,您应会看到类似如下的输出:
v24.14.1
11.11.0
需要 Node.js 的原因是 NanoClaw 使用基于 JavaScript 的设置与依赖流程。通过 NVM 安装有利于后续维护环境。如果您需要切换版本或重新安装 Node,也不会影响整个 Linux 设置。
确保 Docker 在 WSL 内正常工作
NanoClaw 通过使用基于 Docker 的容器隔离,以更安全和可控的方式运行。这意味着需要在 Windows 上安装 Docker,并与您的 WSL 环境正确连接。
首先从 Docker 官网 下载 Docker Desktop 并在 Windows 上安装。然后打开 Docker Desktop,进入设置,确保启用了“Use the WSL 2-based engine”选项,在 Resources → WSL Integration 下,为您的 Ubuntu 发行版开启集成。
完成以上步骤后,回到 Ubuntu 终端并运行:
docker --version
docker ps
您应会看到类似如下的输出:
Docker version 29.1.3, build f52814d
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
这是一种好迹象,说明 Docker 已能在 WSL 中使用,并可供 NanoClaw 调用。
在 Ubuntu 中安装 Claude Code
在 Node 和 Docker 准备就绪后,下一步是在 WSL 内安装 Claude Code。您将使用它来完成 NanoClaw 的引导式设置。
运行:
curl -fsSL https://claude.ai/install.sh | bash

这会将 Claude Code 直接安装到您的 Ubuntu 环境中。
3. 从源码安装 NanoClaw
现在环境已就绪,是时候下载 NanoClaw 并在 Claude Code 中打开它了。
先克隆仓库并进入项目文件夹:
git clone https://github.com/qwibitai/nanoclaw.git
cd nanoclaw
如果您计划稍后自定义 NanoClaw,可以先 fork 该仓库,然后克隆您自己的副本。对于首次设置,直接克隆主仓库完全没问题。
进入 nanoclaw 文件夹后,运行:
claude
首次启动 Claude Code 时,它会引导您完成初始登录与配置流程。您可以使用 Claude.ai 账户登录,或使用 Anthropic 的 API 密钥进行直接的 API 访问。

如果您已有 Claude Pro 或 Max 订阅,使用账户登录通常是最简单的方式。如果您使用 API 计费,也可以将 Claude Code 配置为使用您的 Anthropic API 密钥。
完成登录后,Claude Code 将在您的 NanoClaw 项目内打开,您即可继续进行设置。

4. 设置 NanoClaw
在 nanoclaw 文件夹中打开 Claude Code 后,您现在可以开始完整的设置。
运行:
/setup
这将启动 NanoClaw 的引导式设置流程。
设置过程中会发生什么
运行 /setup 后,Claude Code 会开始为您准备 NanoClaw。这个过程可能需要一些时间,请耐心等待它逐步完成各个阶段。

首先,它会安装项目依赖并检查您的本地环境是否就绪。

之后会进入容器设置阶段,运行构建 NanoClaw 自定义容器并测试其能否正确启动所需的 Docker 命令。

容器构建并验证完成后,设置将继续安装 OneCLI。这是 NanoClaw 技术栈中的重要组成部分,有助于更安全地管理机密与容器访问。

完成后,您可以打开 Docker Desktop 仪表板并确认容器正在运行。此时,您应能看到 NanoClaw 的服务出现在其中,包括应用容器以及 PostgreSQL 等支撑服务。

为 OneCLI 设置 Claude 令牌
尽管 Claude Code 已在 WSL 内登录,NanoClaw 容器仍需要一种独立且安全的方式访问 Claude。为此,您需要生成一个令牌并在 OneCLI 中注册它。

打开一个新终端并运行:
claude setup-token
该命令会生成一个链接供您在浏览器中打开。登录、批准请求,然后将返回的代码粘贴回终端。之后,Claude Code 会给您一个令牌。
复制该令牌,然后在终端中运行以下命令,将 YOUR_TOKEN 替换为刚生成的令牌:
onecli secrets create --name Anthropic --type anthropic --value YOUR_TOKEN --host-pattern api.anthropic.com
这一步使 NanoClaw 容器能够安全地访问 Claude,而无需在容器内直接暴露您的凭据。完成后,设置即可进入下一阶段。
5. 为 NanoClaw 设置 WhatsApp
主设置完成后,Claude Code 会进入渠道设置阶段。在这里,您可以选择如何与 NanoClaw 交互。
为 WhatsApp 生成二维码
选择 WhatsApp(您也可以为稍后选择其他受支持的渠道,如 Discord、Telegram 或 Slack,但此处我们先专注于 WhatsApp),然后继续。

出于某种原因,浏览器中的二维码对我不起作用。这似乎是由于 WSL 与浏览器之间的网络问题,可能与访问本地端口的方式有关。因此,我们将改用在终端中显示二维码的选项。

Claude Code 会尝试在终端中显示二维码。有时,该二维码可能会被截断或显示不完整。
要解决这个问题,请打开新终端,然后运行:
cd nanoclaw
npm run auth
这将在您的终端中生成一个清晰的二维码。
在手机上连接 WhatsApp
现在在手机上打开 WhatsApp,并按以下步骤操作:
- 进入 设置
- 点按 已链接设备
- 点按 链接设备
- 扫描终端中显示的二维码
扫描成功后,您的 WhatsApp 账户将连接到 NanoClaw。
配对完成后,您应能在终端中看到成功消息。

在 Claude Code 中完成渠道设置
返回到最初的 Claude Code 终端并继续设置。

接下来会询问您一些配置问题。现在,您可以选择推荐选项。
- 保持触发词为默认
- 保持助理名称为默认
- 选择自聊模式
自聊模式意味着 NanoClaw 只会在您自己的 WhatsApp 聊天中回复您。这有助于测试,因为没有其他人可以与您的代理交互。

完成设置并测试
完成所有配置后,NanoClaw 将使用您的新设置重新构建容器。这可能需要一点时间。
随后,您将看到如何使用 NanoClaw 的说明。
测试方法:
- 打开 WhatsApp
- 搜索您自己的手机号(您的自聊)
- 发送如下消息:
@Andy hello
如果一切正常,NanoClaw 会在您的聊天中回复。
6. 在 WhatsApp 中测试 NanoClaw
现在一切已设置妥当,您可以直接在 WhatsApp 中测试 NanoClaw。
在手机上打开 WhatsApp 并进入您的自聊。该聊天会以您的号码并在括号中显示“(You)”。先发送一条简单消息,例如:
@Andy how are you?
几秒钟内,NanoClaw 应会在聊天中回复。这确认了您的设置正确,且代理已连接到 WhatsApp。
您也可以测试触发词的作用。尝试发送一条不带触发词的消息,例如:
How are you?
您会注意到 NanoClaw 不会回复。这是预期行为。触发词可确保只有在您明确调用时代理才会激活。
在基础消息测试通过后,您可以尝试更高级的任务。例如,询问:
@Andy Tell me the latest gold and silver prices and should i buy it or not
NanoClaw 会执行任务并返回结构化的回应。这表明您的代理不只是回复消息,还能在配置了正确工具(例如网页搜索)时执行多步任务并提供有用的输出。
至此,您的 NanoClaw 设置已完全可用,准备好应对更高级的用例。

黄金和白银的价格并不正确,这表明它实际上并未执行网页搜索,而是依赖于模型内置知识中的过时信息。
结语
设置 NanoClaw 花费的时间比我预期的多,尤其是在 Windows + WSL 的环境下。在 Docker、容器设置、多个支撑服务,以及我需要在 Claude Code 中不断批准的各种权限之间,这个过程比“轻量本地代理”应有的感觉更为沉重。过了一段时间后,持续的提示与批准变得令人疲惫,整体设置体验也不太友好。
安装流程也没有我期待的那么顺畅。在多个节点,Claude Code 要求我打开新终端、运行额外的身份验证命令、生成令牌,并手动在 OneCLI 中注册。如果您是 AI 工具、容器或命令行工作流的新手,这部分很容易让人困惑。虽可行,但需要投入的手动工作量可能超出许多用户的预期。
因此,我个人更偏好 Nanobot。我只花了几分钟就能从 WhatsApp 开始与我的代理对话,体验更快更直接。相比之下,NanoClaw 的投入与产出比并不那么理想。
WhatsApp 的实际体验也有待提升。回复虽然有效,但交互略显生硬。没有清晰的输入中或回复指示,且回复气泡与我自己的消息外观相同,使对话显得不够自然。如果能在视觉上更清晰地区分,并在响应耗时较长时提供一些工作中的反馈,差异会非常明显。
总体而言,我仍然认为 NanoClaw 的理念很有价值。一个安全的、本地优先的、轻量的代理是非常有用的方向。但在实践中,设置比预期更复杂,而最终体验与为之付出的努力相比略显不尽如人意。
NanoClaw 常见问题
与 OpenClaw 相比,NanoClaw 实际上能做什么?
NanoClaw 覆盖了核心功能,如消息(WhatsApp、Telegram、Slack、Discord、Gmail)、网页访问、记忆和定时任务,但尚未达到 OpenClaw 的大型集成生态与多 LLM 支持的水平。
NanoClaw 的系统要求和受支持平台是什么?
NanoClaw 可在 macOS 和 Linux(包括 Windows 上的 WSL 2)上运行,使用 Docker 或 Apple Containers 进行隔离。您需要现代操作系统、容器运行时,以及足够的内存/磁盘空间用于 Docker 镜像与服务。
为什么 /setup 期间(尤其是围绕 Docker 或容器运行时)NanoClaw 设置会挂起或失败?
大多数设置失败源于 Docker 未运行、选择了错误的容器运行时,或出现容器后端尚未就绪的竞态条件。通常的修复方法是启动 Docker Desktop(或 Linux 的 Docker 服务)、用 docker ps 确认其正常,然后重新运行设置,有时需要为运行时加入重试机制。
如何连接或排查与 NanoClaw 的 WhatsApp 和其他消息渠道?
各渠道在设置过程中通过二维码或类似 OAuth 的流程进行认证。常见问题包括:将同一 WhatsApp 号码用于多个代理、二维码在终端中无法正常渲染,或容器与浏览器之间的网络/端口问题。通常可通过在终端重新生成二维码、使用不同号码,或登出/登录流程来解决。
在我的个人电脑上运行 NanoClaw 安全吗?
NanoClaw 围绕容器隔离(Docker/Apple Containers)而设计,代理运行在与宿主系统隔离的沙箱环境中,但您仍需遵循 API 密钥、文件挂载和权限等方面的最佳实践。
作为一名持证的数据科学家,我热衷于利用前沿技术打造创新的机器学习应用。凭借在语音识别、数据分析与报告、MLOps、对话式人工智能以及自然语言处理方面的扎实背景,我不断打磨构建智能系统的能力,力求带来切实影响。除技术专长外,我也擅长沟通,能够将复杂概念提炼为清晰、简明的表述。因此,我成为数据科学领域备受关注的博主,与不断壮大的数据专业人士社区分享洞见与实践经验。目前,我专注于内容创作与编辑,借助大语言模型打造有力且吸引人的内容,帮助企业与个人更好地发挥数据价值。
