README.ja.md
IronClawはシンプルな原則に基づいて構築されています:あなたのAIアシスタントは、あなたのために働くべきであり、あなたに不利益をもたらすべきではありません。
AIシステムがデータの取り扱いについて不透明になり、企業の利益に沿って調整されることが増えている世界で、IronClawは異なるアプローチを取ります:
IronClawは、個人生活にも仕事にも本当に信頼できるAIアシスタントです。
最新のアップデートはリリースページをご覧ください。
<details> <summary>Windowsインストーラーでインストール(Windows)</summary>Windowsインストーラーをダウンロードして実行してください。
</details> <details> <summary>PowerShellスクリプトでインストール(Windows)</summary>irm https://github.com/nearai/ironclaw/releases/latest/download/ironclaw-installer.ps1 | iex
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/nearai/ironclaw/releases/latest/download/ironclaw-installer.sh | sh
brew install ironclaw
cargoでインストールします。コンピューターにRustがインストールされていることを確認してください。
# リポジトリをクローン
git clone https://github.com/nearai/ironclaw.git
cd ironclaw
# ビルド
cargo build --release
# テストを実行
cargo test
フルリリース(チャネルソースを変更した後)の場合、まず./scripts/build-all.shを実行してチャネルを再ビルドしてください。
# データベースを作成
createdb ironclaw
# pgvectorを有効化
psql ironclaw -c "CREATE EXTENSION IF NOT EXISTS vector;"
セットアップウィザードを実行してIronClawを設定します:
ironclaw onboard
ウィザードは、データベース接続、NEAR AI認証(ブラウザOAuth経由)、シークレットの暗号化(システムキーチェーンを使用)を処理します。設定は接続されたデータベースに永続化されます。ブートストラップ変数(例:DATABASE_URL、LLM_BACKEND)は、データベース接続前に利用できるよう~/.ironclaw/.envに書き込まれます。
IronClawはデフォルトでNEAR AIを使用しますが、多くのLLMプロバイダーをすぐに利用できます。組み込みプロバイダーにはAnthropic、OpenAI、Google Gemini、MiniMax、Mistral、Ollama(ローカル)が含まれます。OpenRouter(300以上のモデル)、Together AI、Fireworks AI、セルフホストサーバー(vLLM、LiteLLM)などのOpenAI互換サービスもサポートされています。
ウィザードでプロバイダーを選択するか、環境変数を直接設定してください:
# 例:MiniMax(組み込み、204Kコンテキスト)
LLM_BACKEND=minimax
MINIMAX_API_KEY=...
# 例:OpenAI互換エンドポイント
LLM_BACKEND=openai_compatible
LLM_BASE_URL=https://openrouter.ai/api/v1
LLM_API_KEY=sk-or-...
LLM_MODEL=anthropic/claude-sonnet-4
完全なプロバイダーガイドはdocs/LLM_PROVIDERS.mdをご覧ください。
IronClawは、データを保護し悪用を防ぐために多層防御を実装しています。
すべての信頼されていないツールは、隔離されたWebAssemblyコンテナで実行されます:
WASM ──► 許可リスト ──► リーク ──► 認証情報 ──► リクエスト ──► リーク ──► WASM
バリデーター スキャン 注入 実行 スキャン
(リクエスト) (レスポンス)
外部コンテンツは複数のセキュリティレイヤーを通過します:
┌────────────────────────────────────────────────────────────────┐
│ チャネル │
│ ┌──────┐ ┌──────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ REPL │ │ HTTP │ │WASMチャネル │ │ Web │ │
│ └──┬───┘ └──┬───┘ └──────┬──────┘ │ ゲートウェイ│ │
│ │ │ │ │(SSE + WS) │ │
│ │ │ │ └──────┬──────┘ │
│ └─────────┴──────────────┴────────────────┘ │
│ │ │
│ ┌─────────▼─────────┐ │
│ │ エージェントループ │ インテントルーティング│
│ └────┬──────────┬───┘ │
│ │ │ │
│ ┌──────────▼────┐ ┌──▼───────────────┐ │
│ │ スケジューラー │ │ ルーティン │ │
│ │ (並列ジョブ) │ │ エンジン │ │
│ └──────┬────────┘ │(cron,event,wh) │ │
│ │ └────────┬─────────┘ │
│ ┌─────────────┼────────────────────┘ │
│ │ │ │
│ ┌───▼─────┐ ┌────▼────────────────┐ │
│ │ ローカル │ │ オーケストレーター │ │
│ │ ワーカー │ │ ┌───────────────┐ │ │
│ │(プロセス │ │ │ Docker │ │ │
│ │ 内) │ │ │ サンドボックス│ │ │
│ └───┬─────┘ │ │ コンテナ │ │ │
│ │ │ │ ┌───────────┐ │ │ │
│ │ │ │ │Worker / CC│ │ │ │
│ │ │ │ └───────────┘ │ │ │
│ │ │ └───────────────┘ │ │
│ │ └─────────┬───────────┘ │
│ └──────────────────┤ │
│ │ │
│ ┌───────────▼──────────┐ │
│ │ ツールレジストリ │ │
│ │ 組み込み, MCP, WASM │ │
│ └──────────────────────┘ │
└────────────────────────────────────────────────────────────────┘
| コンポーネント | 目的 |
|---|---|
| エージェントループ | メインのメッセージ処理とジョブの調整 |
| ルーター | ユーザーの意図を分類(コマンド、クエリ、タスク) |
| スケジューラー | 優先度付きの並列ジョブ実行を管理 |
| ワーカー | LLM推論とツール呼び出しでジョブを実行 |
| オーケストレーター | コンテナのライフサイクル、LLMプロキシ、ジョブごとの認証 |
| Webゲートウェイ | チャット、メモリ、ジョブ、ログ、拡張機能、ルーティンのブラウザUI |
| ルーティンエンジン | スケジュール(cron)とリアクティブ(イベント、ウェブフック)のバックグラウンドタスク |
| ワークスペース | ハイブリッド検索付き永続メモリ |
| セーフティレイヤー | プロンプトインジェクション防御とコンテンツサニタイズ |
# 初回セットアップ(データベース、認証などを設定)
ironclaw onboard
# インタラクティブREPLを起動
cargo run
# デバッグログ付き
RUST_LOG=ironclaw=debug cargo run
# コードフォーマット
cargo fmt
# リント
cargo clippy --all --benches --tests --examples --all-features
# テスト実行
createdb ironclaw_test
cargo test
# 特定のテストを実行
cargo test test_name
cargo buildの前に./channels-src/telegram/build.shを実行して、更新されたWASMをバンドルしてください。IronClawはOpenClawにインスパイアされたRust再実装です。完全な対応表はFEATURE_PARITY.mdをご覧ください。
主な違い:
以下のいずれかのライセンスの下で提供されています:
お好みに応じて選択してください。