OpenClaw 是一个令人印象深刻的项目,愿景宏大。但作者 Gavriel Cohen 无法安心使用它——
一个他不了解、却能访问他个人隐私的软件。
看看 OpenClaw 的架构:
NanoClaw 的诞生,就是为了解决这个问题。
NanoClaw 是一个轻量级、容器化、AI 原生的个人 AI 助手。
| 维度 | OpenClaw | NanoClaw |
|---|---|---|
| 代码量 | 52+ 模块,数万行 | **单一进程,少量文件** |
| 配置 | 8 个配置文件 | **无配置文件** |
| 安全 | 应用级权限检查 | **OS 级容器隔离** |
| 依赖 | 45+ | 最小化 |
| 理解时间 | 数天 | **8 分钟** |
核心特点:
传统方式:
应用层安全检查 → 允许/拒绝操作
└── 如果检查代码有 bug,整个系统暴露
NanoClaw 方式:
Agent 运行在容器中 ──→ 只能看到被挂载的内容
└── 即使容器被攻破,宿主机仍然安全
容器运行时:
这不是一个框架,是一个完全符合个人需求的、可工作的软件。
"您可以 Fork 本项目,然后让 Claude Code 根据您的精确需求进行修改和适配。"每个人的 NanoClaw 都应该是独一无二的——只做你需要的事,没有多余功能。
没有配置文件。
想要不同的行为?直接修改代码。代码库足够小,这样做是安全的。
| 传统软件 | NanoClaw |
|---|---|
编辑 config.yaml | 告诉 Claude "把触发词改成 @Bob" |
| 查阅文档了解选项 | 直接描述你想要的行为 |
| 被不支持的功能困扰 | 删除不需要的代码 |
| 传统软件 | AI 原生 |
|---|---|
| 安装向导 | Claude Code 指导安装 |
| 监控仪表盘 | 直接问 Claude "系统状况如何?" |
| 调试工具 | 描述问题,Claude 修复它 |
CLAUDE.md 记忆和文件系统运行命令,Claude 会自动改造代码:
/add-gmail —— 添加 Gmail 集成/add-telegram —— 添加 Telegram 支持/add-slack —— 添加 Slack/add-discord —— 添加 Discordgit 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:
/customize 进行引导式修改。
WhatsApp (baileys) --> SQLite --> 轮询循环 --> 容器 (Claude Agent SDK) --> 响应
单一 Node.js 进程。
| 文件 | 职责 |
|---|---|
src/index.ts | 编排器:状态管理、消息循环、智能体调用 |
src/channels/whatsapp.ts | WhatsApp 连接、认证、收发消息 |
src/ipc.ts | IPC 监听与任务处理 |
src/router.ts | 消息格式化与出站路由 |
src/group-queue.ts | 各带全局并发限制的群组队列 |
src/container-runner.ts | 生成流式智能体容器 |
src/task-scheduler.ts | 运行计划任务 |
src/db.ts | SQLite 操作(消息、群组、会话、状态) |
groups/*/CLAUDE.md | 各群组的记忆 |
关键设计:
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 命令,用于压缩会话Q: 为什么是 WhatsApp 而不是 Telegram/Signal?
A: 因为我用 WhatsApp。Fork 这个项目然后运行一个技能来改变它。正是这个项目的核心理念。
Q: 这个项目安全吗?
A: 智能体在容器中运行,而不是在应用级别的权限检查之后。它们只能访问被明确挂载的目录。代码库小到你可以真正审查它。
Q: 为什么没有配置文件?
A: 我们不希望配置泛滥。每个用户都应该定制它,让代码完全符合他们的需求,而不是去配置一个通用的系统。
Q: 我该如何调试问题?
A: 问 Claude Code。"为什么计划任务没有运行?" "最近的日志里有什么?" 这就是 AI 原生的方法。
NanoClaw 代表了一种新的软件设计哲学:
在 AI 能写代码的时代,软件应该小到人类能理解,让 AI 来负责定制和扩展。
不是做一个包罗万象的框架,而是做一个最小化的核心,让每个人都能拥有完全符合自己需求的版本。
关键启示:
你会考虑用 NanoClaw 替代 OpenClaw 吗?或者你已经尝试过其他轻量级 AI 助手方案?欢迎在评论区分享你的想法。
还没有人回复