OpenClaw WebChat チャンネル
WebChat は OpenClaw Gateway に組み込まれたチャットインターフェースです。WebSocket を介して直接接続するため、外部サービス、API キー、サードパーティアカウントは一切不要です。Gateway を起動し、認証を設定して WebChat UI を開くだけで、AI アシスタントとのチャットを開始できます。すべてのメッセージは決定的にルーティングされ、返信は常に会話を開始した WebChat セッションに返されます。
WebChat 対応機能
テキストメッセージ
対応
メディア・ファイル
非対応
リアクション
非対応
スレッド
非対応
音声メッセージ
非対応
グループチャット
非対応
WebChat 前提条件
- OpenClaw Gateway がインストール・稼働済み
- Gateway 認証が設定済み(トークンまたはパスワードモード)
- モダンな Web ブラウザ(Control UI)またはネイティブ macOS/iOS クライアント
- Gateway の WebSocket ポートへのネットワークアクセス(デフォルト: 3000)
WebChat クイックセットアップ
Gateway を起動
OpenClaw Gateway を起動します。WebChat は組み込み機能のため、別途インストールやプラグインは不要です。'openclaw start' を実行して Gateway サービスを起動します。
認証を設定
openclaw.json で gateway.auth.mode に 'token' または 'password' 認証を設定します。localhost を含むすべての接続で認証が必須です。
WebChat を開く
ブラウザの Control UI チャットタブから WebChat インターフェースにアクセスするか、ネイティブ macOS/iOS クライアントを起動します。ws://localhost:3000(または設定済みのホストとポート)で Gateway に接続します。
チャットを開始
テストメッセージを送信して接続を確認します。AI アシスタントは同じ WebChat セッションを通じて応答します。会話履歴は Gateway が管理し、再接続後も保持されます。
WebChat 設定例
{
"gateway": {
"port": 3000,
"bind": "127.0.0.1",
"auth": {
"mode": "token",
"token": "YOUR_SECRET_TOKEN"
}
}
}WebChat 詳細ドキュメント
アーキテクチャ概要
Gateway 認証
{
"gateway": {
"auth": {
"mode": "token",
"token": "a-strong-random-token-here"
}
}
}リモートアクセス
{
"gateway": {
"remote": {
"url": "wss://your-remote-host:3000",
"token": "YOUR_REMOTE_TOKEN"
}
}
}セッション管理
読み取り専用モード
ネイティブクライアントの機能
メッセージ配信
{
"channels": {
"webchat": {
"textChunkLimit": 2000,
"blockStreaming": true
}
}
}セキュリティのベストプラクティス
WebChat 設定リファレンス
| Key | Type | Default | Description |
|---|---|---|---|
| gateway.port | number | 3000 | Gateway の WebSocket ポート番号 |
| gateway.bind | string | "127.0.0.1" | Gateway が WebSocket 接続をバインドするホストアドレス |
| gateway.auth.mode | string | "token" | 認証モード: 共有シークレットの場合は 'token'、資格情報ベースの場合は 'password' |
| gateway.auth.token | string | "" | WebSocket 認証用の共有シークレットトークン |
| gateway.auth.password | string | "" | WebSocket 認証用のパスワード |
| gateway.remote.url | string | "" | リモート Gateway の WebSocket URL(例: wss://remote-host:3000) |
| gateway.remote.token | string | "" | リモート Gateway への接続用認証トークン |
| gateway.remote.password | string | "" | リモート Gateway への接続用認証パスワード |
| session.defaultKey | string | "" | WebChat 会話のデフォルトセッションキー |
| session.storage | string | "memory" | セッションストレージバックエンド(memory、file、redis など) |
| textChunkLimit | number | 2000 | 送信メッセージチャンクあたりの最大文字数 |
| blockStreaming | boolean | false | 生成中にブロック単位のチャンクで応答を送信し、リアルタイムフィードバックを提供 |
Gateway の WebSocket ポート番号
Gateway が WebSocket 接続をバインドするホストアドレス
認証モード: 共有シークレットの場合は 'token'、資格情報ベースの場合は 'password'
WebSocket 認証用の共有シークレットトークン
WebSocket 認証用のパスワード
リモート Gateway の WebSocket URL(例: wss://remote-host:3000)
リモート Gateway への接続用認証トークン
リモート Gateway への接続用認証パスワード
WebChat 会話のデフォルトセッションキー
セッションストレージバックエンド(memory、file、redis など)
送信メッセージチャンクあたりの最大文字数
生成中にブロック単位のチャンクで応答を送信し、リアルタイムフィードバックを提供
WebChat よくある質問
WebChat トラブルシューティング
Gateway が稼働していないか、WebSocket ポートがファイアウォールでブロックされています。
トークンまたはパスワードが Gateway の設定と一致していません。
AI エージェントが設定されていないか、AI プロバイダーの API キーが無効です。
SSH トンネルが正しいポートを転送していないか、Gateway が想定されるアドレスでリッスンしていません。
セッションが接続間で期限切れになったか、クリアされました。