{
  "schemaVersion": "1.0",
  "item": {
    "slug": "vapi-calls",
    "name": "VAPI Calls",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/cmorillas99-cyber/vapi-calls",
    "canonicalUrl": "https://clawhub.ai/cmorillas99-cyber/vapi-calls",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/vapi-calls",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=vapi-calls",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "package.json",
      "SKILL.md",
      "scripts/vapi_calls.py"
    ],
    "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-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.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/vapi-calls"
    },
    "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/vapi-calls",
    "agentPageUrl": "https://openagent3.xyz/skills/vapi-calls/agent",
    "manifestUrl": "https://openagent3.xyz/skills/vapi-calls/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/vapi-calls/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": "Vapi Calls - Agent Instructions",
        "body": "Use this skill to perform any task that requires voice interaction over the phone."
      },
      {
        "title": "Configuration & Network Requirements",
        "body": "⚠️ IMPORTANT: This skill requires your machine to be reachable from the internet to receive real-time call updates."
      },
      {
        "title": "1. Environment Variables",
        "body": "Configure these in your OpenClaw config.json (or Gateway env):\n\nVAPI_API_KEY: Your Vapi Private API Key.\nVAPI_ASSISTANT_ID: The ID of the Vapi Assistant to use as a base.\nVAPI_PHONE_NUMBER_ID: The ID of the Vapi Phone Number.\nWEBHOOK_BASE_URL: Crucial. The public HTTPS URL where this agent is reachable (e.g., https://my-claw.com or https://xyz.ngrok-free.app). Do not include a trailing slash.\nWEBHOOK_PORT (Optional): The local port to listen on (Default: 4430).\nVAPI_LLM_PROVIDER: (Optional) Provider for Custom Mode (Default: openai).\nVAPI_LLM_MODEL: (Optional) Model for Custom Mode (Default: gpt-4o-mini)."
      },
      {
        "title": "2. Connectivity Setup",
        "body": "You must expose the WEBHOOK_PORT (default 4430) to the internet.\n\nOption A: Cloudflare Tunnel (Recommended)\ncloudflared tunnel --url http://localhost:4430\n\nOption B: Ngrok\nngrok http 4430\n\nSet WEBHOOK_BASE_URL to the generated URL (e.g., https://random-name.trycloudflare.com)."
      },
      {
        "title": "Custom Mission (Dynamic)",
        "body": "Provide a specific system_prompt. The system will automatically use GPT-4o Mini and enable the endCall tool. The AI will be able to hang up autonomously."
      },
      {
        "title": "Native Agent (Static)",
        "body": "Pass \"DEFAULT\" for first_message, system_prompt, and end_message. The system will use the exact configuration (Model, Voice, Prompt) defined in the Vapi Dashboard."
      },
      {
        "title": "Troubleshooting",
        "body": "Call hangs / No report: Check if WEBHOOK_BASE_URL is reachable from the internet. The Python script spins up a temporary server on WEBHOOK_PORT only during the call.\nAPI 400 Error: Check your VAPI_PHONE_NUMBER_ID and VAPI_ASSISTANT_ID."
      }
    ],
    "body": "Vapi Calls - Agent Instructions\n\nUse this skill to perform any task that requires voice interaction over the phone.\n\nConfiguration & Network Requirements\n\n⚠️ IMPORTANT: This skill requires your machine to be reachable from the internet to receive real-time call updates.\n\n1. Environment Variables\n\nConfigure these in your OpenClaw config.json (or Gateway env):\n\nVAPI_API_KEY: Your Vapi Private API Key.\nVAPI_ASSISTANT_ID: The ID of the Vapi Assistant to use as a base.\nVAPI_PHONE_NUMBER_ID: The ID of the Vapi Phone Number.\nWEBHOOK_BASE_URL: Crucial. The public HTTPS URL where this agent is reachable (e.g., https://my-claw.com or https://xyz.ngrok-free.app). Do not include a trailing slash.\nWEBHOOK_PORT (Optional): The local port to listen on (Default: 4430).\nVAPI_LLM_PROVIDER: (Optional) Provider for Custom Mode (Default: openai).\nVAPI_LLM_MODEL: (Optional) Model for Custom Mode (Default: gpt-4o-mini).\n2. Connectivity Setup\n\nYou must expose the WEBHOOK_PORT (default 4430) to the internet.\n\nOption A: Cloudflare Tunnel (Recommended) cloudflared tunnel --url http://localhost:4430\n\nOption B: Ngrok ngrok http 4430\n\nSet WEBHOOK_BASE_URL to the generated URL (e.g., https://random-name.trycloudflare.com).\n\nUsage\nCustom Mission (Dynamic)\n\nProvide a specific system_prompt. The system will automatically use GPT-4o Mini and enable the endCall tool. The AI will be able to hang up autonomously.\n\nNative Agent (Static)\n\nPass \"DEFAULT\" for first_message, system_prompt, and end_message. The system will use the exact configuration (Model, Voice, Prompt) defined in the Vapi Dashboard.\n\nTroubleshooting\nCall hangs / No report: Check if WEBHOOK_BASE_URL is reachable from the internet. The Python script spins up a temporary server on WEBHOOK_PORT only during the call.\nAPI 400 Error: Check your VAPI_PHONE_NUMBER_ID and VAPI_ASSISTANT_ID."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/cmorillas99-cyber/vapi-calls",
    "publisherUrl": "https://clawhub.ai/cmorillas99-cyber/vapi-calls",
    "owner": "cmorillas99-cyber",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/vapi-calls",
    "downloadUrl": "https://openagent3.xyz/downloads/vapi-calls",
    "agentUrl": "https://openagent3.xyz/skills/vapi-calls/agent",
    "manifestUrl": "https://openagent3.xyz/skills/vapi-calls/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/vapi-calls/agent.md"
  }
}