OpenClawをiMessageに接続
macOSのApple Messagesを通じてAIアシスタントを直接利用。iMessageとSMSの両方に対応。
iMessage連携にはMessagesアプリが設定されたmacOSが必要です。imsg CLIツールを使用してローカルのMessagesデータベースから読み取ります。
- +ネイティブApple連携 — 既存のMessagesアプリと連携
- +iMessage + SMS — 両方のプロトコルにシームレス対応
- +開封確認 — メッセージの配信と既読を確認
- +リアクション — iMessageリアクションに対応
- +グループチャット — グループ会話に参加
- +リモートゲートウェイ — SSH経由でリモートMacと連携可能
- 1.macOS
Messagesアプリが設定済みでApple IDにサインイン済み
- 2.フルディスクアクセス権限
OpenClawが~/Library/Messages/chat.dbを読み取るために必要
- 3.imsg CLI
Messagesと対話するためのコマンドラインツール
セットアップ手順
imsg CLIをインストール
OpenClawがMessagesと対話するために使用するimsgコマンドラインツールをインストール:
brew install imsg
またはimsg GitHubリリースページからダウンロード
フルディスクアクセスを許可
OpenClawがMessagesデータベースを読み取るには権限が必要です:
- - システム設定(またはシステム環境設定)を開く
- - プライバシーとセキュリティ > フルディスクアクセスに移動
- - +ボタンをクリックしてTerminal(またはiTerm)を追加
- - バイナリとして実行する場合はOpenClaw実行ファイルも追加
OpenClawを設定
openclaw.json設定ファイルにiMessage設定を追加:
{
"channels": {
"imessage": {
"enabled": true,
"cliPath": "imsg",
"dbPath": "~/Library/Messages/chat.db",
"allowFrom": ["+15555550123", "user@example.com"]
}
}
}allowFromを設定
ボットと対話できる人を指定:
- - 国コード付き電話番号: +15555550123
- - Apple ID(メールアドレス): user@example.com
接続をテスト
iMessageチャンネルが動作しているか確認:
openclaw channels status imessage
許可された連絡先からメッセージを送信して連携をテスト。
iMessageチャンネルの全設定オプション:
{
"channels": {
"imessage": {
"enabled": true,
"cliPath": "imsg",
"dbPath": "~/Library/Messages/chat.db",
"remoteHost": "user@gateway-host",
"dmPolicy": "pairing",
"allowFrom": ["+15555550123", "user@example.com"],
"historyLimit": 50,
"includeAttachments": false,
"mediaMaxMb": 16,
"service": "auto",
"region": "US"
}
}
}cliPath— imsg CLI実行ファイルへのパスdbPath— MessagesデータベースへのパスremoteHost— リモートゲートウェイ設定用SSHホストdmPolicy— ダイレクトメッセージの処理方法allowFrom— メッセージを許可する電話番号またはApple IDhistoryLimit— コンテキストに含めるメッセージ数includeAttachments— 添付ファイル処理を有効化mediaMaxMb— 最大添付ファイルサイズ(MB)service— iMessageまたはSMSを強制、またはautoを使用region— 電話番号フォーマット用の地域
サーバーでOpenClawを実行しつつ、自宅のMacからiMessageにアクセスしたい場合はSSHを使用できます:
{
"channels": {
"imessage": {
"enabled": true,
"remoteHost": "user@your-mac.local",
"cliPath": "/usr/local/bin/imsg"
}
}
}- - SSHキー認証が設定されていることを確認
- - Macは常にオンで接続されている必要あり
- - Macでimsgとフルディスクアクセスが設定されている必要あり
chat.db読み取り時に権限拒否?
Terminal/iTermとOpenClaw実行ファイルにフルディスクアクセスを許可したか確認。アクセス許可後にターミナルの再起動が必要な場合があります。
ボットがメッセージに応答しない?
allowFromの電話番号またはApple IDが完全に一致しているか確認。電話番号には+と国コードが必要です。
chat.dbが見つからない?
デフォルトパスは~/Library/Messages/chat.dbです。Messagesアプリが少なくとも一度開かれ、サインインしていることを確認。
imsgコマンドが見つからない?
imsgがインストールされPATHにあることを確認。cliPathでフルパスを指定できます。
リモートゲートウェイが接続しない?
ssh user@hostでSSHキー認証が機能すること、リモートMacにimsgとフルディスクアクセスが設定されていることを確認。