IronClaw 是一个用 Rust 重写的个人 AI 助手实现,灵感来自 OpenClaw,专注于隐私和安全。在 AI 系统越来越不透明、数据越来越集中在企业手中的今天,IronClaw 提供了一个不同的选择。
核心理念
IronClaw 建立在一个简单的原则之上:你的 AI 助手应该为你工作,而不是针对你。
- 数据归你所有 — 所有信息存储在本地,加密存储,永不离开你的控制
- 设计即透明 — 开源、可审计、无隐藏遥测或数据收集
- 能力可扩展 — 动态构建新工具,无需等待供应商更新
- 纵深防御 — 多层安全保护,防止提示注入和数据泄露
主要特性
🔒 安全沙箱
- WASM 沙箱 — 不受信任的工具在隔离的 WebAssembly 容器中运行,采用基于能力的权限控制
- Docker 沙箱 — 隔离容器执行,支持每个任务独立令牌和编排器/工作器模式
- 凭证保护 — 密钥永不暴露给工具;在主机边界注入,具备泄露检测
- 端点白名单 — HTTP 请求仅限于明确批准的主机和路径
🛡️ 提示注入防御
外部内容通过多层安全层处理:
- 基于模式的注入检测
- 内容清理和转义
- 具有严重级别的策略规则(阻止/警告/审查/清理)
- 工具输出包装,安全注入 LLM 上下文
📡 多渠道支持
- REPL — 命令行交互
- HTTP Webhooks — 自定义集成
- WASM Channels — Telegram、Slack 等
- Web Gateway — 浏览器 UI,支持实时 SSE/WebSocket 流
⚙️ 自动化与扩展
- Routines — 支持 cron 调度、事件触发、webhook 处理的后台自动化
- Heartbeat System — 主动后台执行,用于监控和维护任务
- 动态工具构建 — 描述你需要什么,IronClaw 会将其构建为 WASM 工具
- MCP 协议 — 连接 Model Context Protocol 服务器获取额外能力
🔍 记忆与工作空间
- 混合搜索 — 使用 Reciprocal Rank Fusion 的全文 + 向量搜索
- 工作空间文件系统 — 灵活的基于路径的存储,用于笔记、日志和上下文
- 身份文件 — 在会话间保持一致的个性和偏好
技术架构
┌────────────────────────────────────────────────────────────────┐
│ Channels │
│ ┌──────┐ ┌──────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ REPL │ │ HTTP │ │WASM Channels│ │ Web Gateway │ │
│ └──┬───┘ └──┬───┘ └──────┬──────┘ │ (SSE + WS) │ │
│ │ │ │ └──────┬──────┘ │
│ └────────┴────────────┴───────────────┘ │
│ │ │
│ ┌───────────▼───────────┐ │
│ │ Agent Loop │ Intent routing │
│ └────┬──────────┬──────┘ │
│ │ │ │
│ ┌─────────▼────┐ ┌──▼───────────────┐ │
│ │ Scheduler │ │ Routines Engine │ │
│ │(parallel jobs)│ │(cron, event, wh) │ │
│ └──────┬────────┘ └────────┬─────────┘ │
│ │ │ │
│ ┌──────┴────────────────────┘ │
│ │ │
│ ┌────▼────┐ ┌────────────────────┐ │
│ │ Local │ │ Orchestrator │ │
│ │ Workers │ │ ┌───────────────┐ │ │
│ │(in-proc)│ │ │ Docker Sandbox│ │ │
│ └────┬────┘ │ │ Containers │ │ │
│ │ │ │ ┌───────────┐ │ │ │
│ │ │ │ │Worker / CC│ │ │ │
│ │ │ │ └───────────┘ │ │ │
│ │ │ └───────────────┘ │ │
│ │ └─────────┬───────────┘ │
│ └────────────────────┤ │
│ │ │
│ ┌───────────────▼────────────┐ │
│ │ Tool Registry │ │
│ │ Built-in, MCP, WASM │ │
│ └────────────────────────────┘ │
└────────────────────────────────────────────────────────────────┘
快速开始
系统要求
- Rust 1.85+
- PostgreSQL 15+(需要 pgvector 扩展)
- NEAR AI 账户(通过设置向导处理认证)
安装方式
macOS/Linux (Shell 脚本):
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/nearai/ironclaw/releases/latest/download/ironclaw-installer.sh | sh
macOS/Linux (Homebrew):
brew install ironclaw
Windows (PowerShell):
irm https://github.com/nearai/ironclaw/releases/latest/download/ironclaw-installer.ps1 | iex
从源码编译:
git clone https://github.com/nearai/ironclaw.git
cd ironclaw
cargo build --release
初始化配置
# 创建数据库
createdb ironclaw
# 启用 pgvector
psql ironclaw -c "CREATE EXTENSION IF NOT EXISTS vector;"
# 运行设置向导
ironclaw onboard
向导会处理数据库连接、NEAR AI 认证(通过浏览器 OAuth)和密钥加密(使用系统钥匙串)。
与 OpenClaw 的区别
IronClaw 是受 OpenClaw 启发的 Rust 重实现,主要区别:
| 特性 | OpenClaw | IronClaw |
|---|---|---|
| 语言 | TypeScript | Rust |
| 安全模型 | Docker | WASM 沙箱 |
| 数据库 | SQLite | PostgreSQL |
| 性能 | Node.js 运行时 | 原生性能,内存安全 |
关键优势:
- Rust vs TypeScript — 原生性能、内存安全、单一二进制文件
- WASM 沙箱 vs Docker — 轻量级、基于能力的安全模型
- PostgreSQL vs SQLite — 生产级持久化
- 安全优先设计 — 多层防御、凭证保护
项目状态
IronClaw 目前已获得 4.2k+ star,持续活跃开发中。项目采用 Apache 2.0 或 MIT 双许可。
GitHub 地址:https://github.com/nearai/ironclaw