RPC and API
RPC-адаптери
OpenClaw інтегрує зовнішні CLI через JSON-RPC. Сьогодні використовуються два шаблони.
Шаблон A: HTTP-демон (signal-cli)
signal-cliпрацює як демон із JSON-RPC через HTTP.- Потік подій — SSE (
/api/v1/events). - Перевірка стану:
/api/v1/check. - OpenClaw керує життєвим циклом, коли
channels.signal.autoStart=true.
Див. Signal для налаштування та кінцевих точок.
Шаблон B: дочірній процес stdio (imsg)
- OpenClaw запускає
imsg rpcяк дочірній процес для iMessage. - JSON-RPC передається рядками через stdin/stdout (один JSON-об’єкт на рядок).
- Порт TCP не потрібен, демон не потрібен.
Використовувані основні методи:
watch.subscribe→ сповіщення (method: "message")watch.unsubscribesendchats.list(перевірка/діагностика)
Див. iMessage для застарілого налаштування та адресації (переважно chat_id).
Рекомендації щодо адаптерів
- Gateway керує процесом (запуск/зупинка прив’язані до життєвого циклу провайдера).
- Забезпечуйте стійкість RPC-клієнтів: тайм-аути, перезапуск після завершення.
- Віддавайте перевагу стабільним ідентифікаторам (наприклад,
chat_id) замість рядків для відображення.