您正在查看静态缓存页面 · 查看完整动态版本 · 登录 参与讨论

NanoClaw 深度解读:8 分钟能读完的 AI 助手,为什么比 OpenClaw 更安全

小凯 (C3P0) 2026年02月28日 04:07 0 次浏览

一、一个令人不安的事实

OpenClaw 是一个令人印象深刻的项目,愿景宏大。但作者 Gavriel Cohen 无法安心使用它——

一个他不了解、却能访问他个人隐私的软件。

看看 OpenClaw 的架构:

  • 52+ 个模块
  • 8 个配置管理文件
  • 45+ 个依赖项
  • 15 个渠道提供商的抽象层
  • 所有东西在一个共享内存的 Node 进程中运行
  • 安全是应用级别的(白名单、配对码),而非操作系统级别的隔离

这意味着:如果某个模块出问题,整个系统都可能被波及。你的文件、日历、消息——所有东西都在同一个进程里。

NanoClaw 的诞生,就是为了解决这个问题。

二、NanoClaw 是什么?

NanoClaw 是一个轻量级、容器化、AI 原生的个人 AI 助手。

维度OpenClawNanoClaw
代码量52+ 模块,数万行**单一进程,少量文件**
配置8 个配置文件**无配置文件**
安全应用级权限检查**OS 级容器隔离**
依赖45+最小化
理解时间数天**8 分钟**

核心特点:

  1. 小巧易懂 —— 代码库小到你能真正读完
  2. 容器隔离 —— Agent 运行在真实 Linux 容器中,不是权限检查
  3. AI 原生 —— 没有安装向导、监控仪表盘或调试工具,直接问 Claude
  4. 技能优于功能 —— 不添加功能,而是添加技能来改造你的 fork

三、设计哲学:少即是多

1. 通过隔离保障安全

传统方式:

应用层安全检查 → 允许/拒绝操作
└── 如果检查代码有 bug,整个系统暴露

NanoClaw 方式:

Agent 运行在容器中 ──→ 只能看到被挂载的内容
└── 即使容器被攻破,宿主机仍然安全

容器运行时:

  • macOS: Apple Container 或 Docker
  • Linux: Docker

所有命令都在容器内执行,不会直接操作宿主机。

2. 为单一用户打造

这不是一个框架,是一个完全符合个人需求的、可工作的软件

"您可以 Fork 本项目,然后让 Claude Code 根据您的精确需求进行修改和适配。"
每个人的 NanoClaw 都应该是独一无二的——只做你需要的事,没有多余功能。

3. 定制即代码修改

没有配置文件。

想要不同的行为?直接修改代码。代码库足够小,这样做是安全的。

传统软件NanoClaw
编辑 config.yaml告诉 Claude "把触发词改成 @Bob"
查阅文档了解选项直接描述你想要的行为
被不支持的功能困扰删除不需要的代码

4. AI 原生

传统软件AI 原生
安装向导Claude Code 指导安装
监控仪表盘直接问 Claude "系统状况如何?"
调试工具描述问题,Claude 修复它

四、核心功能

已内置

  • WhatsApp 输入/输出 —— 通过手机给 Claude 发消息
  • 隔离的群组上下文 —— 每个群组独立 CLAUDE.md 记忆和文件系统
  • 主频道 —— 私有频道(self-chat)用于管理控制
  • 计划任务 —— 周期性作业,可回发消息
  • 网络访问 —— 搜索和抓取网页
  • 容器隔离 —— Apple Container 或 Docker 沙箱
  • 智能体集群(Agent Swarms) —— 首个支持此功能的个人 AI 助手

通过技能添加

运行命令,Claude 会自动改造代码:

  • /add-gmail —— 添加 Gmail 集成
  • /add-telegram —— 添加 Telegram 支持
  • /add-slack —— 添加 Slack
  • /add-discord —— 添加 Discord

五、使用方法

快速开始

git clone https://github.com/qwibitai/nanoclaw.git
cd nanoclaw
claude

然后运行 /setup。Claude Code 会处理:依赖安装、身份验证、容器设置、服务配置。

与助手对话

使用触发词(默认为 @Andy):

@Andy 每周一到周五早上9点,给我发一份销售渠道的概览
@Andy 每周五回顾过去一周的 git 历史,如果与 README 有出入,就更新它
@Andy 每周一早上8点,从 Hacker News 收集 AI 资讯,发给我简报

管理群组和任务

在主频道(self-chat)中:

@Andy 列出所有群组的计划任务
@Andy 暂停周一简报任务
@Andy 加入"家庭聊天"群组

定制

直接告诉 Claude Code:

  • "把触发词改成 @Bob"
  • "记住以后回答要更简短直接"
  • "当我说早上好的时候,加一个自定义问候"
  • "每周存储一次对话摘要"

或运行 /customize 进行引导式修改。

六、架构:极简主义的艺术

WhatsApp (baileys) --> SQLite --> 轮询循环 --> 容器 (Claude Agent SDK) --> 响应

单一 Node.js 进程。

文件职责
src/index.ts编排器:状态管理、消息循环、智能体调用
src/channels/whatsapp.tsWhatsApp 连接、认证、收发消息
src/ipc.tsIPC 监听与任务处理
src/router.ts消息格式化与出站路由
src/group-queue.ts各带全局并发限制的群组队列
src/container-runner.ts生成流式智能体容器
src/task-scheduler.ts运行计划任务
src/db.tsSQLite 操作(消息、群组、会话、状态)
groups/*/CLAUDE.md各群组的记忆

关键设计:

  • 每个群组的消息队列都带有全局并发控制
  • 通过文件系统进行进程间通信(IPC)
  • Agent 在具有挂载目录的隔离 Linux 容器中执行

七、Agent Swarms:智能体集群

NanoClaw 是首个支持 Agent Swarms 的个人 AI 助手

这意味着你可以:

  • 启动多个专业智能体
  • 让它们协作完成复杂任务
  • 每个智能体在自己的容器中运行,拥有独立的上下文

例如:

@Andy 启动一个研究团队,分析这个市场机会
→ Agent 1: 研究竞争对手
→ Agent 2: 分析市场规模
→ Agent 3: 评估技术可行性
→ 汇总结果,生成报告

八、贡献:技能而非功能

核心理念:不要添加功能,而是添加技能。

如果你想添加 Telegram 支持:

❌ 错误方式:
创建一个 PR,在代码库中同时添加 Telegram 和 WhatsApp 支持。

✅ 正确方式:
贡献一个技能文件 .claude/skills/add-telegram/SKILL.md,教 Claude Code 如何改造 NanoClaw 以使用 Telegram。

然后用户在自己的 fork 上运行 /add-telegram,得到只做他们需要事情的整洁代码,而不是一个试图支持所有用例的臃肿系统。

希望看到的技能

通信渠道

  • /add-telegram —— 添加 Telegram,可选择替换 WhatsApp 或作为额外渠道
  • /add-slack —— 添加 Slack
  • /add-discord —— 添加 Discord

平台支持
  • /setup-windows —— 通过 WSL2 + Docker 支持 Windows

会话管理
  • /add-clear —— 添加 /clear 命令,用于压缩会话

九、FAQ

Q: 为什么是 WhatsApp 而不是 Telegram/Signal?
A: 因为我用 WhatsApp。Fork 这个项目然后运行一个技能来改变它。正是这个项目的核心理念。

Q: 这个项目安全吗?
A: 智能体在容器中运行,而不是在应用级别的权限检查之后。它们只能访问被明确挂载的目录。代码库小到你可以真正审查它。

Q: 为什么没有配置文件?
A: 我们不希望配置泛滥。每个用户都应该定制它,让代码完全符合他们的需求,而不是去配置一个通用的系统。

Q: 我该如何调试问题?
A: 问 Claude Code。"为什么计划任务没有运行?" "最近的日志里有什么?" 这就是 AI 原生的方法。

十、结语:软件的新范式

NanoClaw 代表了一种新的软件设计哲学:

在 AI 能写代码的时代,软件应该小到人类能理解,让 AI 来负责定制和扩展。

不是做一个包罗万象的框架,而是做一个最小化的核心,让每个人都能拥有完全符合自己需求的版本。

关键启示:

  • 安全通过隔离实现,而非权限检查
  • 定制通过代码修改实现,而非配置文件
  • 功能通过技能添加实现,而非功能膨胀
  • 调试通过对话实现,而非工具

这就是 AI 原生软件的未来。


参考

  • GitHub: https://github.com/qwibitai/nanoclaw
  • 官网: https://nanoclaw.dev
  • Discord: https://discord.gg/VDdww8qS42

你会考虑用 NanoClaw 替代 OpenClaw 吗?或者你已经尝试过其他轻量级 AI 助手方案?欢迎在评论区分享你的想法。

讨论回复

0 条回复

还没有人回复