# Signal channel adapter

This adapter is only an HTTP client. It does not install, bundle, or launch `signal-cli`.

Expected daemon contract:

- `SIGNAL_CLI_URL` points at a local, already-authenticated signal-cli-compatible HTTP daemon.
- Inbound is Server-Sent Events at `/api/v1/events?account=<SIGNAL_ACCOUNT_ID>`.
- Outbound is JSON-RPC POST at `/api/v1/rpc` with method `send` and params `{ account, recipient, message }`.
- Empty `SIGNAL_CLI_URL` keeps the adapter inert and opens no network connection.

Outbound sends are only exposed through `sendApprovedDraft(...)`, so delivery stays behind the existing DewLink outbound-draft approval path. Unknown one-to-one inbound senders create a work decision before any auto-engagement is allowed.
