コンテナ分離:Agentごとに専用サンドボックスを
NanoClawのセキュリティモデルは、Linuxコンテナを基盤としています。Agentタスクがトリガーされるたびに、NanoClawはそのタスク専用の独立したLinuxコンテナを作成します。このコンテナは独自の隔離されたファイルシステムを持ち、明示的にマウントされたディレクトリのみがAgentから参照可能です。
これが何を意味するのか?例えば、Claudeにプロジェクトのリファクタリングを依頼したとします。Agentはマウントした /home/user/project ディレクトリを読み取ることはできますが、/home/user/personal やシステムの /etc/passwd にはアクセスできません。Bashコマンドはコンテナ内でのみ実行されるため、悪意のあるプロンプトが入力されたとしても、ホストマシンへの脱出は不可能です。
主要なセキュリティ特性:
- ファイルシステムの分離:マウントされていない場所は不可視
- ネットワーク制御:コンテナ単位でアウトバウンド接続を制限
- プロセス分離:Agentからはホストマシンのプロセスツリーが見えない
- リソース制限:CPUとメモリの上限設定が可能
ターミナルで直接 claude コマンドを実行するのと比較して、コンテナ分離は確実なセキュリティ境界を提供します。「信頼」に依存するのではなく、カーネルレベルで強制的に分離されます。
WhatsApp連携:スマホで使うClaude
これはNanoClawの最も画期的な機能です。WhatsAppでグループを作成し、NanoClawのWhatsApp番号を招待して、グループ内でメンション(@)やメッセージを送るだけで、Claudeが返信してくれます。
グループ単位のコンテキスト分離
各WhatsAppグループは完全に独立した会話コンテキストを持ちます。グループAでコードのリファクタリングを議論し、グループBでコンテンツ制作を議論しても、それぞれのCLAUDE.mdメモリファイルは分離されており、互いに干渉しません。
実際の使用体験
あなた: @nanoclaw このエラーログを分析して [server-error.logをアップロード]NanoClaw: ログを確認しました。主な原因はデータベース接続プールの枯渇です... max_connectionsを20から50に調整することをお勧めします。このプロセスはすべてスマートフォン上で完結し、PCを開いたりWebサイトにログインしたりする必要はありません。通勤中でもClaudeに問題の調査を依頼できます。
技術的な実装
WhatsApp連携は @whiskeysockets/baileys ライブラリをベースに、WhatsApp Webプロトコルを通じて接続しています。NanoClawは永続的なSQLiteメッセージストレージを保持しており、再起動後も会話履歴が失われることはありません。
Claude Agent SDK:ストリーミングAgentエンジン
NanoClawのAgentランタイムはClaude Agent SDKに基づいています。各Agentリクエストはストリーミング方式で処理されるため、トークンが逐次返され、結果を待つ間も画面が止まることはありません。
Agent SDKにより、NanoClawはClaudeの能力をフル活用できます:
- ツール利用(Tool Use):ファイル操作、ネットワークリクエスト、shellコマンド実行
- マルチステップ推論:複雑なタスクを自動的に分解して実行
- コンテキスト管理:長文の会話を自動圧縮し、トークン予算を最適化
定期タスク:ワークフローの自動化
NanoClawにはタスクスケジューラーが組み込まれています。Claudeに定期的なタスクを実行させることが可能です:
# 毎朝9時に日報を生成schedule: "0 9 * * *"prompt: "昨日の進捗をまとめ、日報としてグループに送信して"よくある自動化の例:
- デイリースタンドアップ:昨日のGitコミットとプロジェクト進捗の要約
- サービス監視:定期的なヘルスチェックとレポート作成
- データ収集:指定したデータソースからの定期的な取得と集計
- リマインダー:重要なイベントのカウントダウンと通知
タスクスケジューラーは標準的なcron式をサポートしており、SQLiteに保存されるため、再起動後も自動的に復旧します。
Agentクラスター:マルチAgentによる協調
単一のAgentでできることには限界があります。NanoClawは複数のAgentインスタンスを起動し、複雑なタスクを並列処理できます。例えば、大規模なコードベースのレビューを行う場合:
- Agent Aがフロントエンドコードをスキャン
- Agent Bがバックエンドコードをスキャン
- Agent Cがテストカバレッジをスキャン
- 結果を統合レポートにまとめる
各Agentは独立したコンテナで実行され、互いに干渉しません。これは「分割統治」のAI版と言えます。
グループメモリシステム
各WhatsAppグループとCLIセッションには、独自のメモリファイルが存在します。NanoClawはSQLiteを使用して会話履歴や重要な情報を保存し、以下を実現します:
- 永続的なコンテキスト:再起動後も前回の会話状態を復元
- カスタム指示:グループごとに専用のCLAUDE.mdを設定し、振る舞いを定義
- メモリ検索:Agentが過去の会話から情報を検索
毎回ゼロから会話を始めるよりもはるかに効率的です。Claudeはあなたが以前何を依頼したか、どのようなスタイルを好むか、プロジェクトの背景は何かを理解しています。
まとめ
| 機能 | 一言まとめ | 活用シーン |
|---|---|---|
| コンテナ分離 | カーネルレベルの安全なサンドボックス | 機密コードやデータの処理 |
| WhatsApp連携 | スマホでClaudeを活用 | モバイルワーク、チームコラボレーション |
| Agent SDK | ストリーミング推論エンジン | 複雑なマルチステップタスク |
| 定期タスク | ワークフローの自動化 | 日報、監視、データ収集 |
| Agentクラスター | 並列マルチAgent処理 | 大規模プロジェクトのレビュー |
| グループメモリ | 永続的なコンテキスト | 長期プロジェクトの追跡 |
これらの機能が組み合わさることで、NanoClawは単なる「ターミナル内のチャットボット」を超え、プログラム可能で永続性があり、安全に隔離されたパーソナルAIワークプラットフォームへと進化します。
