{
  "schemaVersion": "1.0",
  "item": {
    "slug": "clawfinger",
    "name": "Clawfinger",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/TracSystems/clawfinger",
    "canonicalUrl": "https://clawhub.ai/TracSystems/clawfinger",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/clawfinger",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=clawfinger",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "openclaw.plugin.json",
      "package.json",
      "SKILL.md",
      "src/ws-bridge.ts",
      "src/index.ts",
      "src/gateway-client.ts"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/clawfinger"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/clawfinger",
    "agentPageUrl": "https://openagent3.xyz/skills/clawfinger/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawfinger/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawfinger/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Clawfinger — OpenClaw Voice Gateway Plugin",
        "body": "Requires: Trac-Systems/clawfinger — the local voice gateway and Android phone app. Install and run the gateway before using this plugin.\n\nOpenClaw plugin that gives agents full control over the Clawfinger local voice gateway and its active phone calls."
      },
      {
        "title": "What It Does",
        "body": "Call control: Dial outbound calls, hang up, inject spoken messages into live calls\nLLM takeover: Replace the gateway's local LLM with agent-driven responses in real time\nContext injection: Push knowledge into the LLM context so the phone assistant has facts you provide\nInstruction management: Set system prompts at global, session, or one-shot turn scope\nCall policy: Read and update greetings, auto-answer, caller filtering, max duration\nObservation: Query session state, conversation history, and gateway health"
      },
      {
        "title": "Dependencies",
        "body": "Gateway: A running Clawfinger voice gateway (app.py on 127.0.0.1:8996)\nNode: @sinclair/typebox (install via npm install in plugin directory)\nPhone: Android phone with the PhoneBridge app, connected via ADB reverse port forwarding"
      },
      {
        "title": "Configuration",
        "body": "In ~/.openclaw/openclaw.json:\n\n{\n  \"plugins\": {\n    \"load\": { \"paths\": [\"/path/to/gateway/openclaw/clawfinger\"] },\n    \"entries\": {\n      \"clawfinger\": {\n        \"enabled\": true,\n        \"config\": {\n          \"gatewayUrl\": \"http://127.0.0.1:8996\",\n          \"bearerToken\": \"localdev\"\n        }\n      }\n    }\n  }\n}"
      },
      {
        "title": "Tools",
        "body": "ToolDescriptionclawfinger_statusGateway health, active sessions, bridge statusclawfinger_sessionsList active call session IDsclawfinger_call_stateFull call state: history, instructions, takeover statusclawfinger_dialDial outbound call via ADBclawfinger_hangupForce hang up active call and end sessionclawfinger_injectInject TTS message into a live callclawfinger_takeoverTake over LLM control for a sessionclawfinger_turn_waitWait for the next caller turn during takeover (returns transcript + request_id)clawfinger_turn_replySend your reply text for a takeover turn (requires request_id)clawfinger_releaseRelease LLM control back to local LLMclawfinger_context_setInject knowledge into session LLM contextclawfinger_context_clearClear injected knowledgeclawfinger_instructions_setSet LLM system instructions (global/session/turn)clawfinger_call_config_getRead call policy settingsclawfinger_call_config_setUpdate call policy settings"
      },
      {
        "title": "Slash Commands",
        "body": "/clawfinger status, /clawfinger dial <number>, /clawfinger hangup, /clawfinger inject <text>, /clawfinger takeover <sid>, /clawfinger release <sid>, /clawfinger end <sid>, /clawfinger context get|set|clear <sid>, /clawfinger config call|tts|llm, /clawfinger instructions <text>."
      },
      {
        "title": "Related Skills",
        "body": "agent-takeover: Full takeover lifecycle guide with timing model and test case\nvoice-gateway: Gateway installation, API reference, and operations"
      }
    ],
    "body": "Clawfinger — OpenClaw Voice Gateway Plugin\n\nRequires: Trac-Systems/clawfinger — the local voice gateway and Android phone app. Install and run the gateway before using this plugin.\n\nOpenClaw plugin that gives agents full control over the Clawfinger local voice gateway and its active phone calls.\n\nWhat It Does\nCall control: Dial outbound calls, hang up, inject spoken messages into live calls\nLLM takeover: Replace the gateway's local LLM with agent-driven responses in real time\nContext injection: Push knowledge into the LLM context so the phone assistant has facts you provide\nInstruction management: Set system prompts at global, session, or one-shot turn scope\nCall policy: Read and update greetings, auto-answer, caller filtering, max duration\nObservation: Query session state, conversation history, and gateway health\nDependencies\nGateway: A running Clawfinger voice gateway (app.py on 127.0.0.1:8996)\nNode: @sinclair/typebox (install via npm install in plugin directory)\nPhone: Android phone with the PhoneBridge app, connected via ADB reverse port forwarding\nConfiguration\n\nIn ~/.openclaw/openclaw.json:\n\n{\n  \"plugins\": {\n    \"load\": { \"paths\": [\"/path/to/gateway/openclaw/clawfinger\"] },\n    \"entries\": {\n      \"clawfinger\": {\n        \"enabled\": true,\n        \"config\": {\n          \"gatewayUrl\": \"http://127.0.0.1:8996\",\n          \"bearerToken\": \"localdev\"\n        }\n      }\n    }\n  }\n}\n\nTools\nTool\tDescription\nclawfinger_status\tGateway health, active sessions, bridge status\nclawfinger_sessions\tList active call session IDs\nclawfinger_call_state\tFull call state: history, instructions, takeover status\nclawfinger_dial\tDial outbound call via ADB\nclawfinger_hangup\tForce hang up active call and end session\nclawfinger_inject\tInject TTS message into a live call\nclawfinger_takeover\tTake over LLM control for a session\nclawfinger_turn_wait\tWait for the next caller turn during takeover (returns transcript + request_id)\nclawfinger_turn_reply\tSend your reply text for a takeover turn (requires request_id)\nclawfinger_release\tRelease LLM control back to local LLM\nclawfinger_context_set\tInject knowledge into session LLM context\nclawfinger_context_clear\tClear injected knowledge\nclawfinger_instructions_set\tSet LLM system instructions (global/session/turn)\nclawfinger_call_config_get\tRead call policy settings\nclawfinger_call_config_set\tUpdate call policy settings\nSlash Commands\n\n/clawfinger status, /clawfinger dial <number>, /clawfinger hangup, /clawfinger inject <text>, /clawfinger takeover <sid>, /clawfinger release <sid>, /clawfinger end <sid>, /clawfinger context get|set|clear <sid>, /clawfinger config call|tts|llm, /clawfinger instructions <text>.\n\nRelated Skills\nagent-takeover: Full takeover lifecycle guide with timing model and test case\nvoice-gateway: Gateway installation, API reference, and operations"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/TracSystems/clawfinger",
    "publisherUrl": "https://clawhub.ai/TracSystems/clawfinger",
    "owner": "TracSystems",
    "version": "0.1.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/clawfinger",
    "downloadUrl": "https://openagent3.xyz/downloads/clawfinger",
    "agentUrl": "https://openagent3.xyz/skills/clawfinger/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawfinger/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawfinger/agent.md"
  }
}