Generate HeyGen videos with sound from text, first-frame images, or reference media through RunAPI, with contract-aware submission and deliverable verification.
The fastest way to install a skill directly from the registry.
npx clawhub@latest install runapi-heygen-video
Copy the skill folder to one of these locations
~/.openclaw/skills/ <project>/skills/ Priority: Workspace > Local > Bundled
Copy this prompt to OpenClaw to install it automatically.
Help me install runapi-heygen-video using Clawhub. If Clawhub is not installed, install it first (npm i -g clawhub).
Get the raw skill files in a ZIP archive.
HeyGen Video on RunAPI is an Openclaw Skills integration for creating videos with sound from text prompts, a first-frame image, or reference media. It guides agents through discovering the current operation contract, preparing a valid request, submitting a generation task, and verifying the resulting media and response data.
Use the RunAPI CLI for one-off generation and the RunAPI SDK for applications, workers, and production integrations. The workflow emphasizes safe authentication, evidence-based recovery, and validating every requested deliverable rather than treating a successful task status as proof that the video is ready.
heygen-video CLI service for a one-off result, or the SDK for application and production code. Do not use the CLI as a production runtime.request.json using only accepted fields. Check all applicable conditional rules and nested relationships. Provide local media paths directly where the contract accepts file inputs or top-level media URL fields.Install the RunAPI CLI if it is not already available:
brew install runapi-ai/tap/runapi
Authenticate using the configured RunAPI environment or saved CLI credentials. RUNAPI_API_KEY is an optional environment variable; agents should prefer environment authentication or saved CLI configuration. Import a user-provided token from stdin if needed. Use browser login only when the user explicitly requests it:
runapi auth status > auth.json
jq -e '.authenticated == true' auth.json
# If needed, import a user-provided key from stdin:
runapi auth import-token --token -
Discover the available service and operation before preparing a request. If the installed catalog does not list heygen-video, stop and report that the service is unavailable. Select an operation only from the service help, then inspect its current API contract:
runapi heygen-video --help
runapi heygen-video <operation> --help
curl --fail --location https://runapi.ai/docs/api/heygen-video/<operation>.md --output contract.md
Create request.json according to the discovered contract and validate it before execution:
jq empty request.json
runapi heygen-video <operation> --async --input-file request.json > task.json
task_id="$(jq -er '.id' task.json)"
runapi wait "$task_id" --service heygen-video --action <operation> > result.json
Only stop after saving task.json when the user explicitly asks for background execution, polling, or webhook integration; report the task ID and do not claim the deliverable is complete. For application or production integration, consult the current RunAPI SDK reference and use the SDK for the target language instead of shelling out to the CLI.
The skill uses contract-defined JSON and response files; exact request fields depend on the operation and model discovered from the installed CLI and API Reference.
| File or data | Purpose |
|---|---|
auth.json |
Captures the result of runapi auth status; verify .authenticated before submitting. |
contract.md |
Stores the current API Reference for the selected operation. |
request.json |
Contains only fields accepted by the discovered operation contract, including any required nested objects or arrays. |
task.json |
Preserves the asynchronous task response and task ID before waiting. |
result.json |
Stores the complete response from waiting on the same task. |
| Downloaded media | Contains every requested media deliverable, checked for non-empty content and expected MIME type or family. |
For local media inputs, pass an agent-readable local file path directly in request.json when the contract supports a file field or top-level media URL field. Use runapi files create only when a reusable URL is needed, the input is Base64, or the contract explicitly requires a separate upload. The skill does not impose a fixed request schema: command help defines the installed operation and top-level fields, while the API Reference defines full request and response details. The declared fallback MIME family for deliverables is video/* when a more specific expected type cannot be derived from response metadata, selected output format, or the API Reference.
Loading
Generate Vidu Q4 videos from image inputs with RunAPI, then verify and save every requested deliverable.

Generate images, create transparent-background assets, and make mask-based edits with Qwen 2.1 through a contract-checked RunAPI workflow.

CommsHarbor lets an AI agent inspect authorized email workspaces and discover domain setup details through a secure MCP connection.

PontoFato helps Openclaw Skills look up Brazilian CEPs, map address points, and research companies nearby.

XApiClaw enables user-authorized X/Twitter research through validated TwexAPI endpoints while protecting credentials and enforcing safety boundaries.

AgentPocket gives AI agents a non-custodial wallet for sending and receiving USDC, with payment proof, escrow, and portable reputation.
