RPC and API
آداپتورهای RPC
OpenClaw، CLIهای خارجی را از طریق JSON-RPC یکپارچه میکند. امروزه دو الگو استفاده میشود.
الگوی A: daemon مبتنی بر HTTP (signal-cli)
signal-cliبهصورت daemon با JSON-RPC روی HTTP اجرا میشود.- جریان رویداد SSE است (
/api/v1/events). - بررسی سلامت:
/api/v1/check. - OpenClaw زمانی مالک چرخهٔ حیات است که
channels.signal.autoStart=trueباشد.
برای راهاندازی و endpointها، Signal را ببینید.
الگوی B: فرایند فرزند stdio (قدیمی: imsg)
نکته: برای راهاندازیهای جدید iMessage، بهجای آن از BlueBubbles استفاده کنید.
- OpenClaw،
imsg rpcرا بهعنوان یک فرایند فرزند اجرا میکند (یکپارچهسازی قدیمی iMessage). - JSON-RPC روی stdin/stdout بهصورت خطبهخط جدا میشود (یک شیء JSON در هر خط).
- هیچ پورت TCP و هیچ daemonی لازم نیست.
روشهای اصلی استفادهشده:
watch.subscribe← اعلانها (method: "message")watch.unsubscribesendchats.list(بررسی/عیبیابی)
برای راهاندازی قدیمی و آدرسدهی (chat_id ترجیح داده میشود)، iMessage را ببینید.
رهنمودهای adapter
- Gateway مالک فرایند است (شروع/توقف به چرخهٔ حیات provider گره خورده است).
- کلاینتهای RPC را تابآور نگه دارید: timeoutها، راهاندازی مجدد هنگام خروج.
- شناسههای پایدار (مانند
chat_id) را به رشتههای نمایشی ترجیح دهید.