ironclaw README

The project's README from github.com/nearai/ironclaw. As one markdown file: README.md.

IronClaw

IronClaw

Your secure personal AI assistant, always on your side

License: MIT OR Apache-2.0 Telegram: @ironclawAI Reddit: r/ironclawAI gitcgr

English | 简体中文 | Русский | 日本語 | 한국어

Quick Start • Philosophy • Features • Installation • Configuration • Security • Architecture


Quick Start

Choose an ironclaw-v* tag from the Releases page, then install it on macOS, Linux, or Windows/WSL. Replace X.Y.Z with the selected version, including any prerelease suffix:

IRONCLAW_RELEASE_TAG=ironclaw-vX.Y.Z
curl --proto '=https' --tlsv1.2 -LsSf \
  "https://github.com/nearai/ironclaw/releases/download/${IRONCLAW_RELEASE_TAG}/ironclaw-installer.sh" | sh

Then run the guided setup:

ironclaw onboard

Choose an LLM provider, enter its API key in the hidden prompt, and accept the default model or enter another one. IronClaw provisions its local configuration, encrypted credential store, and WebUI login token. On macOS and Linux it also installs and starts the background service, then prints a link that opens the WebUI.

Use ironclaw status to check the service and print the login link again. Windows users can start the WebUI in the foreground with ironclaw serve. See Installation for Windows installers and source builds.

Philosophy

IronClaw is built on a simple principle: your AI assistant should work for you, not against you.

In a world where AI systems are increasingly opaque about data handling and aligned with corporate interests, IronClaw takes a different approach:

IronClaw is the AI assistant you can actually trust with your personal and professional life.

Features

Security First

Always Available

Self-Expanding

Persistent Memory

Installation

The Releases page provides pre-built binaries and installers.

Install via Windows Installer (Windows)

Open the selected ironclaw-v* release, download ironclaw-x86_64-pc-windows-msvc.msi, and run it.

Install via PowerShell script (Windows)
$IronClawReleaseTag = "ironclaw-vX.Y.Z"
irm "https://github.com/nearai/ironclaw/releases/download/$IronClawReleaseTag/ironclaw-installer.ps1" | iex
Install via shell script (macOS, Linux, Windows/WSL)
IRONCLAW_RELEASE_TAG=ironclaw-vX.Y.Z
curl --proto '=https' --tlsv1.2 -LsSf \
  "https://github.com/nearai/ironclaw/releases/download/${IRONCLAW_RELEASE_TAG}/ironclaw-installer.sh" | sh
Build and install from source

Source builds require Rust 1.96+ and Node.js 22+ with Corepack/pnpm.

git clone https://github.com/nearai/ironclaw.git
cd ironclaw
corepack enable pnpm
cargo install --locked --path crates/app/ironclaw_cli

Configuration

ironclaw onboard is the primary configuration path. It writes Reborn state under $HOME/.ironclaw/reborn by default, stores the selected LLM credential in the encrypted local secret store, and preserves existing configuration when it is run again.

Inspect the current setup with:

ironclaw status
ironclaw models status
ironclaw config list

To switch providers after onboarding, select the route and then store its API key using the hidden prompt:

ironclaw models set-provider openai --model gpt-5-mini
ironclaw config set openai.api_key

Additional settings use the same command. For example:

ironclaw config set google.client_id YOUR_CLIENT_ID
ironclaw config set google.client_secret
ironclaw config set google.redirect_uri YOUR_REDIRECT_URI
ironclaw config set webui.token --rotate

Secret values never accept a positional argument; IronClaw prompts for them without echoing the value. Channels such as Slack and Telegram have no configuration-file settings and no CLI enablement key: install the extension and complete its setup on the WebUI Extensions page, which is what makes the route serve.

Configuration writes never restart the service automatically. Run ironclaw service restart after a change that affects the running service, and use ironclaw config set --help for the complete list of supported keys.

Security

IronClaw implements defense in depth to protect your data and prevent misuse.

WASM Sandbox

All untrusted tools run in isolated WebAssembly containers:

WASM ──► Allowlist ──► Leak Scan ──► Credential ──► Execute ──► Leak Scan ──► WASM
         Validator     (request)     Injector       Request     (response)

Prompt Injection Defense

External content passes through multiple security layers:

Data Protection

Architecture

┌────────────────────────────────────────────────────────────────┐
│                          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 │                          │
│              └──────────────────────┘                          │
└────────────────────────────────────────────────────────────────┘

Core Components

Component Purpose
Agent Loop Main message handling and job coordination
Router Classifies user intent (command, query, task)
Scheduler Manages parallel job execution with priorities
Worker Executes jobs with LLM reasoning and tool calls
Orchestrator Container lifecycle, LLM proxying, per-job auth
Web Gateway Browser UI with chat, memory, jobs, logs, extensions, routines
Routines Engine Scheduled (cron) and reactive (event, webhook) background tasks
Workspace Persistent memory with hybrid search
Safety Layer Prompt injection defense and content sanitization

Usage

# Check the background service and print the WebUI login link
ironclaw status

# Start an interactive terminal session
ironclaw repl

# Run one turn
ironclaw run --message "hello"

Development

# Format code
cargo fmt

# Lint
cargo clippy --all --benches --tests --examples --all-features

# Run tests
createdb ironclaw_test
cargo test

# Run specific test
cargo test test_name

OpenClaw Heritage

IronClaw is a Rust reimplementation inspired by OpenClaw. See FEATURE_PARITY.md for the complete tracking matrix.

Key differences:

License

Licensed under either of:

at your option.

ironclaw (nearai/ironclaw)

Searching Database…

12.7K ·GitHub
这是什么?IronClaw 是一个开源的个人 AI 助手——一个专注于隐私、安全和可扩展性的 Agent OS,用 Rust 编写。它的核心原则是:助手为你服务,你的所有数据都保存在本地、由你自己掌控。
它是桌面应用、命令行工具,还是网页服务?它作为后台服务在你的电脑上运行,并带有浏览器 WebUI,用于聊天、记忆、任务和日志。你也可以通过 REPL、HTTP webhook,以及 Telegram 或 Slack 频道来使用它。
怎么安装,怎么让它连上模型?从 Releases 页面下载预编译的二进制文件,然后运行引导式的 'ironclaw onboard':选择一个 LLM 提供商,填入它的 API 密钥,再选一个模型。在 macOS 和 Linux 上,它随后会安装并启动后台服务,并打印出 WebUI 的登录链接(用 'ironclaw status' 可以再次查看)。
我需要先准备 API 密钥或开发者工具吗?只需要你所选 LLM 提供商的 API 密钥——在引导过程中填入,会存进加密的本地密钥库里。只有从源码构建才需要额外工具:Rust 1.96+ 以及带 Corepack/pnpm 的 Node.js 22+。
Windows 上的安装方式和 Mac、Linux 一样吗?差不多,但不完全一样:开机自启的后台服务只在 macOS 和 Linux 上安装。在 Windows 上,可以用 'ironclaw serve' 在前台启动 WebUI,或者用 WSL 获得完整的后台服务安装方式。
它能在哪些系统上运行?macOS、Linux 和 Windows/WSL,Releases 页面上提供预编译的二进制文件和安装包(Windows 用的是 MSI)。
我的数据或密钥会离开我的电脑吗?所有数据都保存在本地并加密存储——密钥采用 AES-256-GCM 加密——没有任何遥测、分析或数据共享,并且对所有工具执行都有完整的审计日志。
装好跑起来之后,它到底能做什么?你可以在浏览器或通过 Telegram/Slack 和它聊天,它同时在隔离的上下文里并行执行任务。它支持 cron 定时任务、事件触发器和 webhook 处理器来做后台自动化,还有心跳系统用于主动监控、对卡住的操作自我修复,以及带全文加向量混合搜索的持久记忆。
它怎么防止有 bug 或恶意的工具泄露我的数据?不受信任的工具在 WASM 沙箱里运行,并采用基于能力的权限控制:HTTP 只能访问明确列入白名单的主机和路径,密钥只在宿主边界注入,永远不会暴露给工具代码;此外还有泄露检测、按工具限速,以及内存/CPU/时间上限。外部内容还要经过提示词注入检测、净化和策略规则的检查。
我可以给它添加新工具或集成吗?可以——描述你的需求,IronClaw 会当场把它构建成一个 WASM 工具。它还能连接 MCP 服务器来获得更多能力,而且新增的 WASM 工具和渠道无需重启就能直接生效。Telegram 和 Slack 是作为扩展安装的,在 WebUI 的 Extensions 页面上进行设置。
OpenClaw 是什么?它和 IronClaw 有什么关系?OpenClaw 是 IronClaw 用 Rust 重新实现的那个项目。主要区别在于:用 Rust 取代 TypeScript(单个原生二进制文件),用 WASM 沙箱取代 Docker 来隔离工具,用 PostgreSQL 取代 SQLite 做持久化存储,以及安全优先的多层设计。FEATUREPARITY.md 矩阵用于跟踪功能对等情况。
Creator
nearai
Size
1019.9 MB
Stars
12.7K
Age
8mo
Commits · 90 Days