AGI之AI-Assistant之MultiAgent之OpenClaw:IronClaw的简介、安装和使用方法、案例应用之详细攻略

AGI之AI-Assistant之MultiAgent之OpenClaw:IronClaw的简介、安装和使用方法、案例应用之详细攻略

目录

IronClaw简介

1、特点

IronClaw的安装与使用方法

1、安装

先决条件

下载或构建

[配置(Setup / onboard)](#配置(Setup / onboard))

2、使用方法

常用运行命令(示例)

通道与插件安装(举例:Telegram)

[开发 / 测试(本地)](#开发 / 测试(本地))

IronClaw的案例应用

1) 作为个人/团队的"离线/可控"智能助理 作为个人/团队的“离线/可控”智能助理)

2) 聊天通道:Telegram(实战) 聊天通道:Telegram(实战))

3) 自动化与后台任务(Routines / Webhooks) 自动化与后台任务(Routines / Webhooks))

4) 开发自定义工具(WASM)与集成 开发自定义工具(WASM)与集成)


IronClaw简介

IronClaw 是一个以隐私与安全为核心的"个人 AI 助手"实现,受 OpenClaw 启发并用 Rust 重写,目标是让用户能把 AI 助手运行在自己可控的环境中,数据留在本地、可审计且无隐藏遥测。项目宣称的设计原则包括:数据由用户掌控(本地加密存储)、开源透明、能够动态扩展工具能力、以及多层次的安全防护以抵御提示注入与数据外泄。

Github地址: https://github.com/nearai/ironclaw

1、 特点

|------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 安全优先(Security First) | 使用 WASM 沙箱 来运行不受信任的工具:以 capability-based 权限模型限制工具能访问的资源。 凭证保护:敏感凭证不会直接暴露给工具;凭证在主机边界注入,并有泄露检测机制。 提示注入防护(Prompt Injection Defense):通过模式检测、内容清理/转义与策略规则(Block/Warn/Review/Sanitize)来降低被恶意或不可信工具操纵上下文的风险。 端点白名单:HTTP 请求限制为显式允许的主机与路径。 |
| 始终可用(Always Available) | 多通道支持:包括 REPL、HTTP webhooks、WASM channels(例如 Telegram、Slack)、以及浏览器的 Web Gateway(支持 SSE/WebSocket 流)。 提供 Docker 沙箱、作业令牌与 orchestrator/worker 模式,用于隔离执行与并行处理。 支持"例程"(Routines):基于 cron 的计划任务、事件触发与 webhook 处理,用于后台自动化。 内置心跳/自修复机制(heartbeat & self-repair),用于检测和恢复卡住的操作。 |
| 自我扩展(Self-Expanding) | 动态工具构建:可以描述所需工具,IronClaw 能在运行时生成对应的 WASM 工具。 支持 MCP(Model Context Protocol)连接,以扩展模型上下文能力。 插件式架构:可热插入新的 WASM 工具和通道而无需重启主进程。 |
| 持久记忆(Persistent Memory)与检索 | 混合检索(Hybrid Search):结合全文检索与向量检索,并用 Reciprocal Rank Fusion 来合并结果。 工作区式文件系统(Workspace filesystem):按路径组织存储笔记、日志与上下文。 身份文件(Identity Files):保存个性与偏好,保证会话间一致性。 |
| OpenClaw 衍生与差异 | IronClaw 来源于 OpenClaw 的设计思想,但在实现上做出关键差异: 采用 Rust(单一二进制、内存安全) 替代 TypeScript; 以 WASM 沙箱 替代 Docker(更轻量、Capability-based); 持久层使用 PostgreSQL(生产就绪) 而非 SQLite; 并强调"security-first" 的多层防护设计。详细差异可见 FEATURE_PARITY 文档。 |

IronClaw 安装与使用方法

1、安装

本节包含"先决条件 / 下载或构建 / 配置向导 / 常用命令 / 开发调试与测试"等实操信息,均摘自仓库原文。

先决条件

Rust 1.85+。

PostgreSQL 15+ 且需要安装 pgvector 扩展(用于向量检索)。

NEAR AI 帐号(认证在 setup 向导中处理)。

下载或构建

仓库建议查看 Releases 页面获取最新二进制或安装程序。README 提到 Windows Installer 可直接下载运行。

配置(Setup / onboard)

首次配置通过命令行向导:

ironclaw onboard

向导会负责:数据库连接设置、NEAR AI 的浏览器 OAuth 认证、以及把机密保存到系统密钥链并写入数据库。某些引导变量(如 DATABASE_URL、LLM_BACKEND)会写入 ~/.ironclaw/.env 以便在数据库启动前使用。

2、使用方法

常用运行命令(示例)

复制代码
启动交互式 REPL:
cargo run

启动并开启 debug 日志:
RUST_LOG=ironclaw=debug cargo run

第一次 onboard(如上):
ironclaw onboard

这些命令出自 README 的"Usage"部分。

通道与插件安装(举例:Telegram)

仓库提供 docs/TELEGRAM_SETUP.md,说明如何为 IronClaw 配置 Telegram 通道:

支持 Webhook(推荐) 与 Polling(可选、约 30s 延迟) 模式;

在 ironclaw onboard 向导中启用 Telegram 通道并粘贴 Bot Token;向导会验证 token,并可配置 webhook secret 与 tunnel(ngrok / cloudflared)等;

支持 DM pairing(配对)流程用于控制谁能与 agent 交互(需管理员手动批准配对码)。

开发 / 测试(本地)

仓库同样列出常见开发命令:

复制代码
格式化代码:cargo fmt
Lint:cargo clippy --all --benches --tests --examples --all-features

运行测试(示例):先创建测试数据库 createdb ironclaw_test,然后 cargo test,或通过 cargo test test_name 运行指定测试。

IronClaw 案例应用

示例用来说明如何把 IronClaw 用到实际场景:

1) 作为个人/团队的"离线/可控"智能助理

将 IronClaw 部署在自有服务器或本地机器(数据库在 Postgres),所有会话与工具调用都记录在本地数据库,凭证加密存储,适用于希望把敏感数据留在自己控制下的个人或小团队。该用例基于项目"数据本地化、无遥测"的设计理念。

2) 聊天通道:Telegram(实战)

借助 docs/TELEGRAM_SETUP.md,可把 IronClaw 作为 Telegram Bot 使用,支持:

Webhook 模式(需要将本机暴露到 HTTPS,推荐使用 ngrok 或 cloudflared);

Polling 模式(无 tunnel 时可用,但有 ~30 秒延迟);

DM Pairing:当陌生用户发起 DM,会收到配对码;管理员通过 ironclaw pairing approve telegram <CODE> 批准后该用户才能交互(有效的访问控制流程)。

常用命令示例(文档中)包括:列出待配对请求 ironclaw pairing list telegram、批准配对 ironclaw pairing approve telegram ABC12345、以及在向导中保存 telegram_bot_token 等。

3) 自动化与后台任务(Routines / Webhooks)

可以利用 Routines(cron-style)与 webhook handlers 把 IronClaw 用作自动化引擎,例如按计划拉取/处理信息、监测任务并执行工具链(WASM 工具),这些都以"并行作业、隔离上下文"的方式执行,适合后台自动化场景。

4) 开发自定义工具(WASM)与集成

IronClaw 支持把自定义工具编译为 WASM 并以 capability 限权方式加载(channels-src 下有现成通道模板),适用于把现有脚本/功能打包成安全的工具供 agent 使用。文档也提到如果修改了通道源(例如 Telegram),需要运行 ./channels-src/telegram/build.sh 在构建前把更新的 WASM 打包进二进制。

相关推荐
掉鱼的猫2 小时前
Spring AI 2.0 GA 倒计时:先别急,来看看 Java AI 框架的另一条路
java·openai·agent
吴佳浩2 小时前
OpenClaw最严厉的父亲- 使用优化建议
人工智能·llm·agent
漓漾li4 小时前
每日面试题(2026-05-15)
架构·go·agent
jiayong235 小时前
Tool Permission 与 Sandbox 的安全流水线:Agent 工具系统的工程边界
java·数据库·安全·agent
小李子呢02115 小时前
大模型是什么?
大模型·agent
阿里云云原生5 小时前
实战揭秘:如何让你的 Agent 无缝接入现有系统?
agent
凌奕6 小时前
100 行代码搞懂多 Agent 协同:LangGraph 最小可运行示例(研究员 vs 批评家 + 总结员)
langchain·agent
小李子呢02116 小时前
什么是agent?
agent
带刺的坐椅6 小时前
Spring AI 2.0 GA 倒计时:先别急,来看看 Java AI 框架的另一条路
java·spring·ai·llm·agent·solon
JunLa6 小时前
Agent Basic 上篇
大数据·人工智能·agent