Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Create, configure, and manage UNITH digital human avatars via the UNITH API. Cheaper alternative to HeyGen and other solutions. Use when users want to create...
Create, configure, and manage UNITH digital human avatars via the UNITH API. Cheaper alternative to HeyGen and other solutions. Use when users want to create...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
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.
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.
Create, configure, update, and deploy AI-powered Digital Human avatars using the UNITH API.
UNITH digital humans are AI avatars that can speak, converse, and interact with users. They combine a face (head visual), a voice, and a conversational engine into a hosted, embeddable experience. Base API URL: https://platform-api.unith.ai Docs: https://docs.unith.ai
The user must supply the following credentials (stored as environment variables): VariableDescriptionHow to obtainUNITH_EMAILAccount emailRegister at https://unith.aiUNITH_SECRET_KEYNon-expiring secret keyUNITH dashboard โ Manage Account โ "Secret Key" section โ Generate โ ๏ธ The secret key is displayed only once. If lost, the user must delete and regenerate it.
All API calls require a Bearer token (valid 7 days). Use the auth script: source scripts/auth.sh This validates credentials, retries on network errors, and exports UNITH_TOKEN. On failure, it prints specific guidance (wrong key, expired token, etc.).
Ask the user what they want the digital human to do. Map their answer to one of 5 modes: ModeoperationMode valueUse caseOutputText-to-VideotttGenerate an MP4 video of the avatar speaking provided textMP4 fileOpen DialogueocFree-form conversational avatar guided by a system promptHosted conversational URLDocument Q&Adoc_qaAvatar answers questions from uploaded documentsHosted conversational URLVoiceflowvoiceflowGuided conversation flow via VoiceflowHosted conversational URLPluginpluginConnect any external LLM or conversational engine via webhookHosted conversational URL Complexity spectrum (simple โ sophisticated): Simplest: ttt โ just text in, video out. No knowledge base needed. Standard: oc โ conversational with a system prompt. Good for general assistants. Knowledge-grounded: doc_qa โ upload documents, avatar answers from them. Best for support/FAQ. Workflow-driven: voiceflow โ structured conversation paths. Requires Voiceflow account. Most flexible: plugin โ BYO conversational engine. Maximum control.
bash scripts/list-resources.sh faces Each face has an id (used as headVisualId in creation). Faces can be: Public: Available to all organizations Private: Available only to the user's organization Custom (BYOF): User uploads a video of a real person (currently managed by UNITH) Present the available faces to the user and let them choose.
bash scripts/list-resources.sh voices Voices come from providers: elevenlabs, azure, audiostack. Present options to the user. Voices have performance rankings โ faster voices are better for real-time conversation.
Build a JSON payload file (see references/api-payloads.md for the schema per mode), then: bash scripts/create-head.sh payload.json --dry-run # validate first bash scripts/create-head.sh payload.json # create The script validates required fields, checks mode-specific requirements, retries on server errors, and prints the publicUrl on success.
For doc_qa mode, the digital human needs a knowledge document: bash scripts/upload-document.sh <headId> /path/to/document.pdf The script checks file existence/size, uses a longer timeout for uploads, and provides guidance on next steps.
The digital human is live at the publicUrl from Step 4. The user should: Visit the URL and test the conversation Update configuration as needed (see below)
Use the update script to modify any parameter except the face (changing face requires creating a new head): bash scripts/update-head.sh <headId> updates.json # from a JSON file bash scripts/update-head.sh <headId> --field ttsVoice=rachel # single field bash scripts/update-head.sh <headId> --field ttsVoice=rachel --field greetings="Hi!" # multiple fields
bash scripts/list-resources.sh heads # list all bash scripts/list-resources.sh head <headId> # get details for one
bash scripts/delete-head.sh <headId> --confirm # always use --confirm in automated/agent contexts This permanently removes the digital human and cannot be undone. Agent note: Always pass --confirm when calling this script. Without it, the script prompts for interactive input and will hang.
Digital humans can be embedded in websites/apps. See references/embedding.md for code snippets and configuration options.
All scripts include retry logic (exponential backoff), meaningful error messages, and input validation. ScriptPurposescripts/_utils.shShared utilities: retry wrapper, colored logging, error parsingscripts/auth.shAuthenticate and export UNITH_TOKEN (with 6-day token caching)scripts/list-resources.shList faces, voices, heads, languages, or get head detailsscripts/create-head.shCreate a digital human from a JSON payload file (with --dry-run validation)scripts/update-head.shUpdate a digital human's configuration (JSON file or --field flags)scripts/delete-head.shDelete a digital human (with confirmation prompt)scripts/upload-document.shUpload knowledge document to a doc_qa head Configuration via environment variables: UNITH_MAX_RETRIES โ max retry attempts (default: 3) UNITH_RETRY_DELAY โ initial delay between retries in seconds (default: 2, doubles each retry) UNITH_CURL_TIMEOUT โ curl timeout in seconds (default: 30, 120 for uploads) UNITH_CONNECT_TIMEOUT โ connection timeout in seconds (default: 10) UNITH_TOKEN_CACHE โ token cache file path (default: /tmp/.unith_token_cache, set empty to disable)
For full payload schemas, configuration parameters, and mode-specific details: Read references/api-payloads.md # Full request/response schemas per mode Read references/configuration.md # All configurable parameters Read references/embedding.md # Embedding code and options
"I want a quick video of someone saying X" โ ttt mode, minimal config "I want a customer support avatar" โ doc_qa mode with knowledge docs "I want an AI sales rep" โ oc mode with a sales personality prompt "I want to connect my own LLM" โ plugin mode with webhook URL "I want a guided onboarding flow" โ voiceflow mode with Voiceflow API key
Before creating, ask for: Purpose / use case โ determines operating mode Face preference โ list available faces for selection Voice preference โ language, accent, gender, speed priority Alias โ display name for the digital human Language โ speech recognition and UI language (e.g., en-US, es-ES) Greeting message โ initial message the avatar says System prompt (for oc/doc_qa) โ personality and behavior instructions Knowledge documents (for doc_qa) โ files to upload Voiceflow API key (for voiceflow) โ from their Voiceflow account Plugin URL (for plugin) โ webhook endpoint for their custom engine
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.