Install any skill in seconds. Free to start, no credit card required.
Get Started Free →agent-takeover
How to perform a live agent takeover of the Clawfinger voice gateway — dial, inject greetings, handle turns, release, and observe handback. Covers timing, endpoints, the WebSocket protocol, and includes a human-guided test case.
Passed 17 of 24 test cases with the skill, and 0 of 24 without it.
18 fixed0 passed either way7 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
The instructions your model reads when the skill loads.
How an external agent (OpenClaw plugin, custom script, or any WebSocket client) takes control of a live phone call, handles conversation turns directly, and hands back to the local LLM.
Caller <--> Phone App <--> Gateway /api/turn <--> Local LLM
|
+-- (takeover) --> Agent WS
Normal flow: phone sends audio to /api/turn, gateway runs ASR → LLM → TTS, returns audio.
Takeover flow: after takeover, gateway sends turn.request to the agent WebSocket instead of calling the local LLM. The agent replies with text, gateway runs TTS, returns audio to phone.
WS /api/agent/ws — No authentication required on the WebSocket itself. Connects, receives all bus events, and sends commands.
| Send (agent → gateway) | Fields | Description |
|---|---|---|
dial | number | Dial outbound call via ADB |
inject | text, session_id | Queue TTS message for next turn poll |
takeover | session_id | Take over LLM for this session |
release | session_id | Hand back to local LLM |
hangup | session_id (optional) | Force hang up call + end session |
get_call_state | session_id | Query conversation history and state |
end_session | session_id | Mark session ended without phone hangup |
inject_context | session_id, context | Push knowledge into LLM context |
clear_context | session_id | Remove injected knowledge |
ping | — | Heartbeat |
| Receive (gateway → agent) | Fields | Description |
|---|---|---|
dial.ack | ok, detail | Dial result |
takeover.ack | ok, session_id | Takeover confirmed |
release.ack | ok, session_id | Release confirmed |
test cases passed, vs 0 / 24 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.