Saltar al contenido principal

Adaptadores RPC

OpenClaw integra CLI externos mediante JSON-RPC. Hoy se usan dos patrones.

Patrón A: daemon HTTP (signal-cli)

  • signal-cli se ejecuta como daemon con JSON-RPC sobre HTTP.
  • El stream de eventos es SSE (/api/v1/events).
  • Sonda de estado: /api/v1/check.
  • OpenClaw controla el ciclo de vida cuando channels.signal.autoStart=true.
Consulta Signal para ver configuración y endpoints.

Patrón B: proceso hijo stdio (heredado: imsg)

Nota: Para configuraciones nuevas de iMessage, usa BlueBubbles en su lugar.
  • OpenClaw genera imsg rpc como proceso hijo (integración heredada de iMessage).
  • JSON-RPC está delimitado por líneas sobre stdin/stdout (un objeto JSON por línea).
  • No requiere puerto TCP ni daemon.
Métodos centrales usados:
  • watch.subscribe → notificaciones (method: "message")
  • watch.unsubscribe
  • send
  • chats.list (sonda/diagnósticos)
Consulta iMessage para ver la configuración heredada y el direccionamiento (se prefiere chat_id).

Directrices para adaptadores

  • El Gateway controla el proceso (inicio/parada vinculados al ciclo de vida del proveedor).
  • Mantén clientes RPC resilientes: tiempos de espera, reinicio al salir.
  • Prefiere IDs estables (por ejemplo chat_id) frente a cadenas de visualización.