コンテンツにスキップ

OpenClawのDockerサンドボックス設定とメモリ管理ガイド

エージェントを動かす際、セキュリティを確保しつつ、いかに効率よくメモリを管理するかは非常に重要なテーマです。特に Docker を使ったサンドボックス環境では、自由度と安全性のトレードオフに直面することがよくあります。OpenClaw でこれらをどう最適に設定すべきか、詳しく見ていきましょう。

OpenClaw における Docker サンドボックスのすべてと、メモリの仕組みについて解説します。


サンドボックス専用のドキュメントはありますか?

Section titled “サンドボックス専用のドキュメントはありますか?”

はい、あります。Sandboxing を参照してください。Docker 特有のセットアップについては、Docker を確認してください。


Docker が制限されているように感じます。フル機能を有効にするには?

Section titled “Docker が制限されているように感じます。フル機能を有効にするには?”

デフォルトのイメージはセキュリティを最優先しており、node ユーザーで実行されます。そのため、システムパッケージや Homebrew、同梱のブラウザなどは含まれていません。より充実した環境を構築するには、以下の設定を推奨します。

  • キャッシュを維持するために、OPENCLAW_HOME_VOLUME で /home/node を永続化する
  • OPENCLAW_DOCKER_APT_PACKAGES を使って、システム依存パッケージをイメージに組み込む
  • Playwright ブラウザを次のコマンドでインストールする: node /app/node_modules/playwright-core/cli.js install chromium
  • PLAYWRIGHT_BROWSERS_PATH を設定し、そのパスが永続化されていることを確認する

1つのエージェントで、DMはプライベートに保ちつつ、グループを公開/サンドボックス化できますか?

Section titled “1つのエージェントで、DMはプライベートに保ちつつ、グループを公開/サンドボックス化できますか?”

はい、可能です。プライベートなトラフィックが DM で、公開トラフィックが グループ である場合に有効です。

agents.defaults.sandbox.mode: "non-main" を使用してください。これにより、グループやチャンネルのセッション(non-main キー)は Docker 内で実行され、メインの DM セッションはホスト上に留まります。


ホストのフォルダをサンドボックスにバインドするには?

Section titled “ホストのフォルダをサンドボックスにバインドするには?”

agents.defaults.sandbox.docker.binds を ["host:path:mode"] の形式で設定します。

{
agents: {
defaults: {
sandbox: {
docker: {
binds: ["/home/user/src:/src:ro"]
}
}
}
}
}

機密性の高いものには :ro(読み取り専用)を使用してください。バインド設定はサンドボックスのファイルシステムによる壁をバイパスすることに注意が必要です。


メモリはどのように機能しますか?

Section titled “メモリはどのように機能しますか?”

OpenClaw のメモリは、エージェントのワークスペース内にあるシンプルな Markdown ファイルです。

  • 日次のノート: memory/YYYY-MM-DD.md
  • 厳選された長期ノート: MEMORY.md(メイン/プライベートセッションのみ)

また、OpenClaw はサイレント・プリコンパクション・メモリフラッシュを実行します。これは、自動コンパクションが行われる前に、耐久性のあるノートを書くようモデルに促す仕組みです。


メモリがすぐに忘れてしまいます。定着させるには?

Section titled “メモリがすぐに忘れてしまいます。定着させるには?”

ボットに対して、その事実をメモリに書き込むよう指示してください。長期的なノートは MEMORY.md に、短期的なコンテキストは memory/YYYY-MM-DD.md に保存されます。

もし忘れ続ける場合は、Gateway が実行のたびに同じワークスペースを使用しているか確認してください。


セマンティックメモリ検索には OpenAI の API キーが必要ですか?

Section titled “セマンティックメモリ検索には OpenAI の API キーが必要ですか?”

OpenAI embeddings を使用する場合のみ必要です。Codex OAuth はチャットや補完(completions)をカバーしていますが、embeddings へのアクセス権は付与されません。

OpenClaw は OpenAI、Gemini、またはローカルの埋め込みモデルをサポートしています。ローカル環境で完結させたい場合は、memorySearch.provider = "local" に設定してください。


メモリは永久に保持されますか?制限はありますか?

Section titled “メモリは永久に保持されますか?制限はありますか?”

メモリファイルはディスク上に保存され、削除するまで保持されます。制限はモデルではなく、ストレージの容量に依存します。

ただし、セッションコンテキストはモデルのコンテキストウィンドウによって制限されるため、長い会話は圧縮されたり切り捨てられたりすることがあります。そのためにメモリ検索が存在し、関連する部分だけをコンテキストに呼び戻すことができます。

AI Setup Assistant

OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。