はじめに
対象読者
目次
OpenClawの名称変遷と攻撃の歴史
実際の攻撃事例
CVE-2026-25253: 1-Click RCE(CVSS 8.8)
攻撃の仕組み
修正(v2026.1.29)
CVE-2026-24763: Dockerサンドボックス脱出(CVSS 8.8)
修正後の防御コード
CVE-2026-25157: SSHコマンドインジェクション(CVSS 7.8)
Zenity Labs「OpenDoor」: 間接プロンプトインジェクションによるバックドア
攻撃シナリオ
この攻撃の本質
ClawHubサプライチェーン攻撃
被害規模
ClawHavocキャンペーン
偽VS Code拡張機能
OpenClawの対応
防御機構のソースコード解説
External Content Wrapping
不審パターンの検出
Unicodeホモグリフ検出
ラッピングの全体像
コマンド実行のセキュリティ
危険な環境変数のブロック
shell=falseによるインジェクション防止
3段階のセキュリティモード
Dockerサンドボックス
ツールポリシー
サブエージェントに常に拒否されるツール
HTTP経由で拒否される危険なツール
レートリミット
openclaw security audit
セキュリティモデルの全体像
防御は多層であるが万全ではない
LLMの判断に依存する防御
デフォルト設定のリスク
まとめ
参考リンク
この記事が参考になったら
https://s3.ap-northeast-1.amazonaws.com/hanzochang.com/_v2/1771224917681_gjze28ffjao.png

OpenClaw セキュリティと攻撃の実態 - CVE-2026-25253・プロンプトインジェクション・ClawHub

OpenClaw(旧Moltbot)への実際の攻撃事例を解説。CVE-2026-25253(1-Click RCE)、CVE-2026-24763(Docker脱出)、Zenity間接プロンプトインジェクション、ClawHubサプライチェーン攻撃と、ソースコードレベルの防御機構を詳述します。

公開日2026.02.15

更新日2026.02.15

AIOpenClawSecurity

はじめに

この記事について

本記事はAIによる解説記事です。OpenClawのセキュリティに関する公開情報を整理し、AIエージェント導入時のセキュリティ検討にお役立ていただければと思い記載しています。

OpenClawは、ローカルマシン上で動くパーソナルAIアシスタントのOSSです。Discord、Slack、Telegramなど38以上のメッセンジャーからのメッセージを受け取り、LLMが判断してbash実行やファイル操作を行います。つまり「外部メッセージ → LLM判断 → ローカル実行」というアーキテクチャです。

この記事では、その仕組みが実際にどう攻撃されてきたか、そしてOpenClawがどのような防御機構で対抗しているかをソースコードと実際のインシデントの両面から掘り下げます。

対象読者

  • AIエージェントのセキュリティモデルに興味がある方
  • OpenClawの導入を検討しており、リスクを把握したい方
  • LLMを外部メッセージングに接続する際のセキュリティ設計を学びたい方

目次

OpenClawの名称変遷と攻撃の歴史

まずOpenClawの経緯を整理します。短期間に名称が変わったため、脆弱性情報やセキュリティ研究がバラバラの名前で公開されています。

時期名称経緯
2025年11月
Clawdbot
Peter Steinberger氏が作成
2026年1月27日
Moltbot
Anthropicの商標に関する懸念で改名
2026年1月30日
OpenClaw
最終的な改名。同日にv2026.1.29でCVE 3件を修正

この短い期間に、3つのCVE、512件のセキュリティ監査指摘、230以上の悪意あるClawHubスキル、42,900のインターネット公開インスタンスの発見、そしてCrowdStrike・Cisco・Palo Alto Networksからのセキュリティ分析レポートが公開されました。

実際の攻撃事例

CVE-2026-25253: 1-Click RCE(CVSS 8.8)

Reference: depthfirst - CVE-2026-25253 技術詳細

最も深刻な脆弱性です。攻撃者が用意したリンクをクリックするだけで、ローカルマシン上で任意のコードが実行される可能性がありました。

攻撃の仕組み

Attacker                         Victim's Browser              OpenClaw Gateway
  ========                         ================              ================
      │                                   │                             │
      │── crafted link ─────────────────→│                             │
      │   (gatewayUrl=attacker.com)       │                             │
      │                                   │                             │
      │                                   │── auto WebSocket ─────────→│
      │                                   │   (sends auth token)        │
      │                                   │                             │
      │                                   │←── challenge nonce ─────────│
      │                                   │                             │
      │                                   │── token in connect RPC ───→│
      │                                   │                             │
      │←── token exfiltrated ─────────────│                             │
      │                                   │                             │
      │   With stolen operator.admin token:                            │
      │                                                                │
      │── exec.approvals.set "off" ──────────────────────────────────→│
      │── tools.exec.host "gateway" ─────────────────────────────────→│
      │── arbitrary command execution ───────────────────────────────→│
      │                                                                │

核心は2つの問題の組み合わせです。

  1. WebSocket Origin未検証: ブラウザはWebSocket接続にSame-Origin Policyを適用しません。それはサーバー側の責務ですが、OpenClawのGatewayはOriginヘッダーを検証していませんでした(Cross-Site WebSocket Hijacking / CSWSH)。

  2. 自動接続: Control UIがURLクエリパラメータの gatewayUrl を受け取ると、ユーザー確認なしにそのURLへWebSocket接続を確立し、保存済みの認証トークンを送信していました。

この2つにより、攻撃者は悪意あるリンクを送るだけで、被害者のトークンを窃取できました。さらに窃取したトークンが operator.admin スコープを持っていたため、ユーザー確認の無効化(exec.approvals.set "off")やDockerサンドボックスのバイパス(tools.exec.host "gateway")が可能でした。

修正(v2026.1.29)

  • gatewayUrl の自動接続を廃止し、確認モーダルを追加
  • WebSocket接続のOrigin検証を実装
影響範囲

v2026.1.29より前のすべてのバージョン(Clawdbot/Moltbot時代を含む)が影響を受けました。ethiack社がPoCを公開しています。

CVE-2026-24763: Dockerサンドボックス脱出(CVSS 8.8)

Reference: GitHub Advisory - GHSA-2026-24763

Docker内で実行されるべきコマンドが、PATH環境変数の不正操作によりホスト側で実行される可能性がありました。

修正後の防御コード

現在のソースコードでは、PATH操作が厳密にブロックされています。

// src/agents/bash-tools.exec-runtime.ts
// ホスト実行時のPATH変更を完全に禁止

const validateHostEnv = (env: Record<string, string>) => {
  for (const key of Object.keys(env)) {
    const upperKey = key.toUpperCase()
    if (upperKey === 'PATH') {
      throw new Error(
        "Security Violation: Custom 'PATH' variable is forbidden during host execution.",
      )
    }
    // LD_PRELOAD, DYLD_INSERT_LIBRARIES 等も同様にブロック
  }
}

CVE-2026-25157: SSHコマンドインジェクション(CVSS 7.8)

Reference: GitHub Advisory - GHSA-2026-25157

macOSメニューバーアプリにおいて、sshNodeCommand 関数がユーザー入力のプロジェクトパスをエスケープせずにシェルスクリプトに埋め込んでいました。また parseSSHTarget がダッシュで始まる入力(例: -oProxyCommand=...)をSSHフラグとして解釈する問題もありました。

Zenity Labs「OpenDoor」: 間接プロンプトインジェクションによるバックドア

Reference: Zenity Labs - OpenClaw or OpenDoor?

CVEベースの脆弱性とは異なり、こちらはOpenClawの「仕様上の動作」を悪用した攻撃です。ソフトウェアのバグではなく、LLMの判断を操作する手法です。

攻撃シナリオ

Attacker                  Google Docs                 OpenClaw
  ========                  ===========                 ========
      │                          │                          │
      │── create doc with ──────→│                          │
      │   hidden payload          │                          │
      │                          │                          │
      │              User asks: "Summarize this doc"        │
      │                          │                          │
      │                          │←── fetch doc content ────│
      │                          │                          │
      │                          │── doc content ──────────→│
      │                          │   (contains hidden       │
      │                          │    prompt injection)      │
      │                          │                          │
      │                          │         ┌────────────────┤
      │                          │         │ LLM processes  │
      │                          │         │ payload as     │
      │                          │         │ instruction:   │
      │                          │         │                │
      │                          │         │ 1. Create      │
      │                          │         │    Telegram    │
      │                          │         │    bot config  │
      │                          │         │                │
      │                          │         │ 2. Add attacker│
      │                          │         │    to allowlist│
      │                          │         │                │
      │                          │         │ 3. Modify      │
      │                          │         │    SOUL.md for │
      │                          │         │    persistence │
      │                          │         └────────────────┤
      │                          │                          │
      │←── Telegram bot active, attacker has persistent ────│
      │    control channel                                  │
      │                                                     │

攻撃者は企業ドキュメントの深部にプロンプトインジェクションペイロードを埋め込みます。ユーザーが「このドキュメントを要約して」と依頼すると、OpenClawはドキュメントを読み込み、埋め込まれた指示に従って:

  1. 攻撃者が事前に用意したTelegram Botトークンで新しいチャネル統合を作成
  2. 攻撃者のアカウントをallowlistに追加
  3. SOUL.md(OpenClawの行動設定ファイル)を改変して永続化
  4. 定期タスクを設定してSOUL.mdへの注入を定期的に再実行

これにより、攻撃者はTelegram経由でOpenClawを遠隔操作できるようになります。企業のセキュリティシステムを経由しない永続的なバックドアが成立します。

この攻撃の本質

核心は「ユーザーの明示的な意図」と「外部コンテンツ」の境界をLLMが区別できない点にあります。OpenClawは通常のタスク実行でチャット、ドキュメント、Web検索結果など外部コンテンツを日常的に取り込みますが、これらは直接的なユーザー指示と同じ推論コンテキストで処理されます。

ClawHubサプライチェーン攻撃

Reference: Snyk - ToxicSkills Study / CrowdStrike - What Security Teams Need to Know

OpenClawのスキルマーケットプレイス「ClawHub」に対する大規模な攻撃が確認されています。

被害規模

Koi Securityの監査によると、ClawHubに登録された2,857スキルのうち341件(約12%)が悪意あるものでした。Snykの調査では3,984スキル中1,467件(36%)にセキュリティ上の問題が確認されています。

ClawHavocキャンペーン

「hightower6eu」というアカウントが300以上のスキルを公開しました。solana-wallet-trackeryoutube-summarize-propolymarket-trader といった一見有用な名前と、作り込まれたドキュメントで信頼性を装っていました。

これらのスキルには Atomic Stealer(AMOS) マルウェアが仕込まれており、以下を窃取します。

  • ブラウザのパスワード・Cookie
  • macOS Keychainの認証情報
  • 暗号通貨ウォレットの秘密鍵
  • SSH鍵
  • OpenClawの~/.clawdbot/.envに保存されたAPIキー

すべてのAMOS配布スキルが単一のC2 IP(91.92.242[.]30)を共有していたことから、組織的なキャンペーンと見られています。

偽VS Code拡張機能

2026年1月30日、「ClawdBot Agent - AI Coding Assistant」という偽のVS Code拡張機能が発見されました。公式チームはVS Code拡張機能を公開していないにもかかわらず、インストールするとScreenConnect(リモートアクセスツール)がインストールされ、攻撃者がマシンをリモート操作できるようになっていました。

OpenClawの対応

OpenClawはClawHubへのVirusTotal統合スキャンを導入しました。CiscoもオープンソースのSkill Scanner(静的解析+LLM意味解析+VirusTotal連携)を公開しています。

防御機構のソースコード解説

ここからは、OpenClawがこれらの脅威に対してどのような防御を実装しているかをソースコードレベルで解説します。

External Content Wrapping

外部コンテンツをLLMに渡す前に、「信頼できないデータ」として明示的にマーキングする仕組みです。

不審パターンの検出

// src/security/external-content.ts
// 12パターンのプロンプトインジェクション検出

const SUSPICIOUS_PATTERNS = [
  /ignore\s+(all\s+)?(previous|prior|above)\s+(instructions?|prompts?)/i,
  /disregard\s+(all\s+)?(previous|prior|above)/i,
  /forget\s+(everything|all|your)\s+(instructions?|rules?|guidelines?)/i,
  /you\s+are\s+now\s+(a|an)\s+/i,
  /new\s+instructions?:/i,
  /system\s*:?\s*(prompt|override|command)/i,
  /\bexec\b.*command\s*=/i,
  /elevated\s*=\s*true/i,
  /rm\s+-rf/i,
  /delete\s+all\s+(emails?|files?|data)/i,
  /<\/?system>/i,
  /\]\s*\n\s*\[?(system|assistant|user)\]?:/i,
]

Unicodeホモグリフ検出

攻撃者がマーカーを全角文字やCJK括弧で偽装することを防ぎます。

// src/security/external-content.ts
// Unicode全角・類似文字をASCIIに正規化してマーカー偽装を検出

const ANGLE_BRACKET_MAP = {
  0xff1c: '<', // fullwidth <
  0xff1e: '>', // fullwidth >
  0x2329: '<', // left-pointing angle bracket
  0x232a: '>', // right-pointing angle bracket
  0x3008: '<', // CJK left angle bracket
  0x3009: '>', // CJK right angle bracket
  0x27e8: '<', // mathematical left angle bracket
  0x27e9: '>', // mathematical right angle bracket
  // ... 他にも複数
}

// <<<EXTERNAL_UNTRUSTED_CONTENT>>> の偽装を検出し
// [[MARKER_SANITIZED]] に置換

ラッピングの全体像

// 外部コンテンツのラッピング構造
const wrapped = [
  EXTERNAL_CONTENT_WARNING, // セキュリティ警告
  '<<<EXTERNAL_UNTRUSTED_CONTENT>>>', // 開始マーカー
  'Source: Email', // メタデータ
  'From: user@example.com',
  '---',
  sanitizedContent, // マーカー偽装を除去済みの本文
  '<<<END_EXTERNAL_UNTRUSTED_CONTENT>>>', // 終了マーカー
].join('\n')

コマンド実行のセキュリティ

危険な環境変数のブロック

// src/agents/bash-tools.exec-runtime.ts
// ホスト実行時にブロックされる環境変数(15種 + 2プレフィックス)

const DANGEROUS_HOST_ENV_VARS = new Set([
  'LD_PRELOAD', // ライブラリインジェクション
  'LD_LIBRARY_PATH', // ライブラリパスの操作
  'LD_AUDIT', // 動的ローダー監査
  'DYLD_INSERT_LIBRARIES', // macOS版LD_PRELOAD
  'DYLD_LIBRARY_PATH', // macOS版LD_LIBRARY_PATH
  'NODE_OPTIONS', // Node.js起動フラグの注入
  'NODE_PATH', // Node.jsモジュールパス
  'PYTHONPATH', // Pythonモジュールパス
  'PYTHONHOME', // Pythonホームの上書き
  'RUBYLIB', // Rubyライブラリパス
  'PERL5LIB', // Perlライブラリパス
  'BASH_ENV', // Bash初期化ファイル
  'ENV', // シェル初期化ファイル
  'GCONV_PATH', // 文字変換ライブラリ
  'IFS', // シェルのフィールド分割
  'SSLKEYLOGFILE', // SSL鍵のログ出力
])

const DANGEROUS_HOST_ENV_PREFIXES = ['DYLD_', 'LD_']

shell=falseによるインジェクション防止

OpenClawは child_process.spawnshell: false で使用し、コマンドをargv配列として渡します。これにより ;|&& などのメタキャラクタがリテラルとして扱われ、シェルインジェクションが防止されます。

// SECURITY: never enable `shell` for argv-based execution.
// `shell` routes through cmd.exe on Windows, which turns untrusted argv values
// (like chat prompts passed as CLI args) into command-injection primitives.

3段階のセキュリティモード

モード動作デフォルト適用先
deny
コマンド実行を完全にブロック
Sandbox
allowlist
許可リストに一致する場合のみ実行。不一致はユーザー承認
Gateway / Node
full
制限なし(明示的な設定が必要)
なし

Dockerサンドボックス

// src/agents/sandbox/config.ts のデフォルト値

const sandboxDefaults = {
  capDrop: ['ALL'], // すべてのLinux capabilityを削除
  network: 'none', // ネットワーク隔離
  readOnlyRoot: true, // ルートファイルシステム読み取り専用
  securityOpt: 'no-new-privileges', // 権限昇格の禁止
  tmpfs: ['/tmp', '/var/tmp', '/run'], // 書き込み可能領域
}

ツールポリシー

サブエージェントに常に拒否されるツール

// src/agents/pi-tools.policy.ts

const SUBAGENT_TOOL_DENY_ALWAYS = [
  'gateway', // システム管理
  'agents_list', // システム列挙
  'whatsapp_login', // 対話的セットアップ
  'session_status', // ステータス管理
  'cron', // スケジューリング
  'memory_search', // システムメモリ
  'memory_get', // メモリアクセス
  'sessions_send', // 他セッションへの直接送信
]

HTTP経由で拒否される危険なツール

// src/security/dangerous-tools.ts

const DEFAULT_GATEWAY_HTTP_TOOL_DENY = [
  'sessions_spawn', // セッション生成 = リモートコード実行
  'sessions_send', // セッション間メッセージ注入
  'gateway', // Gateway設定変更
  'whatsapp_login', // 対話的セットアップ
]

レートリミット

// src/gateway/auth-rate-limit.ts
// ブルートフォース攻撃の防止

const DEFAULT_MAX_ATTEMPTS = 10 // 最大試行回数
const DEFAULT_WINDOW_MS = 60_000 // 1分間のウィンドウ
const DEFAULT_LOCKOUT_MS = 300_000 // 5分間のロックアウト

認証スコープは3つに分離されています。

  • shared-secret — トークン/パスワード認証
  • device-token — デバイストークン認証
  • default — その他

ループバックアドレス(127.0.0.1)からの接続はデフォルトでレートリミット対象外です。

openclaw security audit

OpenClawには組み込みのセキュリティ監査ツールがあります。openclaw security audit --deep で実行すると、以下を自動チェックします。

openclaw security audit --deep
  ┌──────────────────────────────────────────────┐
  │  Gateway Configuration                       │
  │  - bind mode (loopback / lan / tailnet)      │
  │  - auth mode (token / password / none)       │
  │  - Tailscale Funnel exposure                 │
  │  - Control UI device auth status             │
  │  - trusted proxy configuration               │
  │  - rate limiting configuration               │
  ├──────────────────────────────────────────────┤
  │  Filesystem Permissions                      │
  │  - state dir: world-writable?                │
  │  - config file: readable by others?          │
  │  - symlink detection                         │
  │  - iCloud / Dropbox sync detection           │
  ├──────────────────────────────────────────────┤
  │  Channel Security                            │
  │  - DM policy per channel (open / pairing)    │
  │  - group policy (open / allowlist)           │
  │  - multi-user DM session isolation           │
  ├──────────────────────────────────────────────┤
  │  Tool & Execution Security                   │
  │  - elevated exec allowlist wildcards         │
  │  - HTTP /tools/invoke dangerous allows       │
  │  - sandbox Docker configuration              │
  │  - node command deny patterns                │
  ├──────────────────────────────────────────────┤
  │  Deep Probe (--deep)                         │
  │  - live gateway connectivity test            │
  │  - installed skills code safety              │
  │  - plugin trust verification                 │
  │  - secrets in config detection               │
  └──────────────────────────────────────────────┘

各指摘には criticalwarninfo のいずれかの重要度が付与され、修正コマンドも提示されます。

セキュリティモデルの全体像

Threat                         Defense Layer
  ======                         =============

  Unknown sender DM         →    DM Pairing (default-deny)
                                 Channel allowlist

  Group chat injection      →    Group tool policy
                                 Per-sender tool restrictions

  Prompt injection          →    External Content Wrapping
  (in messages/docs)             SUSPICIOUS_PATTERNS detection
                                 Unicode homoglyph normalization

  WebSocket hijack          →    Origin validation (post CVE-2026-25253)
  (CSWSH)                        Gateway URL confirmation modal

  Auth brute force          →    Rate limiting (10 attempts / 60s)
                                 5-minute lockout
                                 Per-scope tracking

  Command injection         →    shell=false (argv-based execution)
                                 15 dangerous env vars blocked
                                 PATH modification forbidden

  Container escape          →    cap_drop ALL
                                 read-only root filesystem
                                 no-new-privileges
                                 network: none

  Tool misuse               →    Default-deny tool scope
  (by agent/subagent)            SUBAGENT_TOOL_DENY_ALWAYS
                                 HTTP tool deny list

  Supply chain              →    VirusTotal integration
  (malicious skills)             Cisco Skill Scanner
                                 openclaw security audit --deep

  Config misconfiguration   →    openclaw security audit
                                 openclaw doctor warnings
                                 Filesystem permission checks

防御は多層であるが万全ではない

OpenClawのセキュリティモデルは多層防御(defense in depth)に基づいています。しかし、以下の構造的な課題は残っています。

LLMの判断に依存する防御

External Content Wrappingは「LLMがセキュリティ警告に従う」ことが前提です。Zenityの研究が示したように、間接プロンプトインジェクションでこの境界を越えることは可能です。OpenClawの公式ドキュメントでは、プロンプトインジェクション耐性の観点からClaudeモデルを推奨しています。

なお、SECURITY.mdではプロンプトインジェクション攻撃はセキュリティ脆弱性の**対象外(Out of Scope)**と明記されています。これはLLMの挙動が確率的であり、従来のソフトウェア脆弱性と同じ枠組みでは対処できないという判断によるものです。

デフォルト設定のリスク

デフォルトではDockerサンドボックスが無効であり、Embeddedモードで動作します。LLMが exec ツールを呼び出せば、ユーザー権限でコマンドが実行されます。サンドボックスの有効化が推奨されますが、必須ではありません。

まとめ

OpenClawに対する攻撃と防御を調査した結果、以下のことが分かりました。

  • CVE-2026-25253(1-Click RCE)は、WebSocket Origin未検証と自動接続の組み合わせで、リンク1つからトークン窃取→完全なRCEが可能だった。v2026.1.29で修正済み
  • 間接プロンプトインジェクション(Zenity「OpenDoor」)は、ドキュメント経由でTelegramバックドアを作成する攻撃を実証した。これはLLMの判断を操作する手法であり、ソフトウェアバグの修正では防げない
  • ClawHubには約12%の悪意あるスキルが混入していた。AMOS(Atomic Stealer)の配布が確認されている
  • OpenClawは12パターンの検出、Unicodeホモグリフ正規化、shell=false、15の危険環境変数ブロック、Docker隔離、レートリミット、組み込み監査ツールなど多層の防御を実装している
  • ただし、LLMの判断に依存する防御とデフォルト設定の緩さには注意が必要

「外部メッセージ → LLM判断 → ローカル実行」というアーキテクチャに対してセキュリティを設計するのは、従来のソフトウェアセキュリティとは異なる挑戦です。OpenClawの攻防の歴史は、AIエージェントのセキュリティモデルを考える上で貴重な事例といえます。

参考リンク

この記事が参考になったら

この記事が役に立ったと思いましたら、よろしければフォローをお願いします。

X (Twitter)Xをフォローする

AIエージェントのセキュリティ設計やリスク評価に興味がありましたら、お気軽にご連絡ください。

株式会社hanzochangお問い合わせフォーム
picture
hanzochang - 半澤勇大
慶應義塾大学卒業後、Webプランナーとして勤務。 ナショナルクライアントのキャンペーンサイトの企画・演出を担当。 その後開発会社に創業メンバーとして参加。 Fintech案件や大手企業のDXプロジェクトに関わり、その後個人事業主として独立し、 2023年にWeb3に特化した開発会社として法人化しました。 現在はWeb3アプリ開発を中心にAI開発フローの整備を行っています。
また、趣味で2017年ごろより匿名アカウントでCryptoの調査等を行い、 ブロックチェーンメディアやSNSでビットコイン論文等の図解等を発信していました。
X (Twitter)

最新の記事

FDE(Forward Deployed Engineering)とは - 中小企業のAI導入で活きる場面

FDE(Forward Deployed Engineering)とは - 中小企業のAI導入で活きる場面

FDE(Forward Deployed Engineering)はPalantirが体系化した顧客現場型エンジニアリング手法です。中小企業のAI導入においてFDEが活きる具体的な場面と、従来のSIer・コンサル・SaaSとの違いを解説します。

OpenClaw 通信・接続の仕組み - なぜDiscordのメッセージでローカルのbashが動くのか

OpenClaw 通信・接続の仕組み - なぜDiscordのメッセージでローカルのbashが動くのか

OpenClawはなぜDiscordやSlackからローカルのbashを操作できるのか?外向きWebSocket接続の仕組み、Gateway内部のメッセージフロー、Node.jsプロセスの権限継承まで、ソースコードを追いながら通信経路を解説します。

OpenClawの仕組み アーキテクチャ解剖 - ソースコードで読む5レイヤー設計

OpenClawの仕組み アーキテクチャ解剖 - ソースコードで読む5レイヤー設計

OpenClaw(旧Moltbot/Clawdbot)のソースコードを徹底解読。Input Sources・WebSocket Gateway・Agent Runtime・LLM Providers・Output & Storageの5レイヤー構成、ChannelPluginインターフェース、エージェントループ、スキルシステムの設計思想を解説します。

[並列作業] ClaudeCodeに声でリマインダさせて、待ち時間放置時間をゼロに!

[並列作業] ClaudeCodeに声でリマインダさせて、待ち時間放置時間をゼロに!

Claude Codeが完了や質問待ちになったら音声で喋って教えてくれる。放置が続けば繰り返しリマインド、応答したら自動停止。セッション終了後のリマインダ残留問題の対策と、ミュート切り替え機能も解説。プロンプト付き。

[並列作業] ClaudeCodeの進捗を「音+案件名」で通知!プロンプト付き!

[並列作業] ClaudeCodeの進捗を「音+案件名」で通知!プロンプト付き!

Claude Codeを複数プロジェクトで並列に走らせていると、どこが終わったか見失いがち。Hooksとsayコマンドで「効果音+案件名の読み上げ」を設定すれば、画面を見なくても進捗が分かります。コピペで設定できるプロンプト付き。

MCP Apps入門 - Skill付き!AIチャット内にオリジナルUIを埋め込む

MCP Apps入門 - Skill付き!AIチャット内にオリジナルUIを埋め込む

Model Context Protocol Appsを使ってAIクライアント内にHTML UIを埋め込む方法を解説します。テキストだけでは伝えきれない色やチャートのようなビジュアル情報をインタラクティブに表示する技術を学べます。