{
  "schemaVersion": "1.0",
  "item": {
    "slug": "digital-clawatar",
    "name": "Digital Clawatar",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/polucas/digital-clawatar",
    "canonicalUrl": "https://clawhub.ai/polucas/digital-clawatar",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/digital-clawatar",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=digital-clawatar",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/auth.sh",
      "scripts/create-head.sh",
      "scripts/delete-head.sh",
      "scripts/list-resources.sh",
      "scripts/update-head.sh"
    ],
    "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-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-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/digital-clawatar"
    },
    "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/digital-clawatar",
    "agentPageUrl": "https://openagent3.xyz/skills/digital-clawatar/agent",
    "manifestUrl": "https://openagent3.xyz/skills/digital-clawatar/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/digital-clawatar/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": "UNITH Digital Humans Skill",
        "body": "Create, configure, update, and deploy AI-powered Digital Human avatars using the UNITH API."
      },
      {
        "title": "Quick Overview",
        "body": "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.\n\nBase API URL: https://platform-api.unith.ai\nDocs: https://docs.unith.ai"
      },
      {
        "title": "Prerequisites",
        "body": "The user must supply the following credentials (stored as environment variables):\n\nVariableDescriptionHow to obtainUNITH_EMAILAccount emailRegister at https://unith.aiUNITH_SECRET_KEYNon-expiring secret keyUNITH dashboard → Manage Account → \"Secret Key\" section → Generate\n\n⚠️ The secret key is displayed only once. If lost, the user must delete and regenerate it."
      },
      {
        "title": "Authentication",
        "body": "All API calls require a Bearer token (valid 7 days). Use the auth script:\n\nsource scripts/auth.sh\n\nThis validates credentials, retries on network errors, and exports UNITH_TOKEN. On failure, it prints specific guidance (wrong key, expired token, etc.)."
      },
      {
        "title": "Step 1: Choose an Operating Mode",
        "body": "Ask the user what they want the digital human to do. Map their answer to one of 5 modes:\n\nModeoperationMode 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\n\nComplexity spectrum (simple → sophisticated):\n\nSimplest: ttt — just text in, video out. No knowledge base needed.\nStandard: oc — conversational with a system prompt. Good for general assistants.\nKnowledge-grounded: doc_qa — upload documents, avatar answers from them. Best for support/FAQ.\nWorkflow-driven: voiceflow — structured conversation paths. Requires Voiceflow account.\nMost flexible: plugin — BYO conversational engine. Maximum control."
      },
      {
        "title": "Step 2: List Available Faces",
        "body": "bash scripts/list-resources.sh faces\n\nEach face has an id (used as headVisualId in creation). Faces can be:\n\nPublic: Available to all organizations\nPrivate: Available only to the user's organization\nCustom (BYOF): User uploads a video of a real person (currently managed by UNITH)\n\nPresent the available faces to the user and let them choose."
      },
      {
        "title": "Step 3: List Available Voices",
        "body": "bash scripts/list-resources.sh voices\n\nVoices come from providers: elevenlabs, azure, audiostack. Present options to the user. Voices have performance rankings — faster voices are better for real-time conversation."
      },
      {
        "title": "Step 4: Create the Digital Human",
        "body": "Build a JSON payload file (see references/api-payloads.md for the schema per mode), then:\n\nbash scripts/create-head.sh payload.json --dry-run   # validate first\nbash scripts/create-head.sh payload.json              # create\n\nThe script validates required fields, checks mode-specific requirements, retries on server errors, and prints the publicUrl on success."
      },
      {
        "title": "Step 5 (doc_qa only): Upload Knowledge Document",
        "body": "For doc_qa mode, the digital human needs a knowledge document:\n\nbash scripts/upload-document.sh <headId> /path/to/document.pdf\n\nThe script checks file existence/size, uses a longer timeout for uploads, and provides guidance on next steps."
      },
      {
        "title": "Step 6: Test and Iterate",
        "body": "The digital human is live at the publicUrl from Step 4. The user should:\n\nVisit the URL and test the conversation\nUpdate configuration as needed (see below)"
      },
      {
        "title": "Updating a Digital Human",
        "body": "Use the update script to modify any parameter except the face (changing face requires creating a new head):\n\nbash scripts/update-head.sh <headId> updates.json                         # from a JSON file\nbash scripts/update-head.sh <headId> --field ttsVoice=rachel              # single field\nbash scripts/update-head.sh <headId> --field ttsVoice=rachel --field greetings=\"Hi!\"  # multiple fields"
      },
      {
        "title": "Listing Existing Digital Humans",
        "body": "bash scripts/list-resources.sh heads           # list all\nbash scripts/list-resources.sh head <headId>   # get details for one"
      },
      {
        "title": "Deleting a Digital Human",
        "body": "bash scripts/delete-head.sh <headId> --confirm     # always use --confirm in automated/agent contexts\n\nThis permanently removes the digital human and cannot be undone.\n\nAgent note: Always pass --confirm when calling this script. Without it, the script prompts for interactive input and will hang."
      },
      {
        "title": "Embedding",
        "body": "Digital humans can be embedded in websites/apps. See references/embedding.md for code snippets and configuration options."
      },
      {
        "title": "Scripts",
        "body": "All scripts include retry logic (exponential backoff), meaningful error messages, and input validation.\n\nScriptPurposescripts/_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\n\nConfiguration via environment variables:\n\nUNITH_MAX_RETRIES — max retry attempts (default: 3)\nUNITH_RETRY_DELAY — initial delay between retries in seconds (default: 2, doubles each retry)\nUNITH_CURL_TIMEOUT — curl timeout in seconds (default: 30, 120 for uploads)\nUNITH_CONNECT_TIMEOUT — connection timeout in seconds (default: 10)\nUNITH_TOKEN_CACHE — token cache file path (default: /tmp/.unith_token_cache, set empty to disable)"
      },
      {
        "title": "Detailed API Reference",
        "body": "For full payload schemas, configuration parameters, and mode-specific details:\n\nRead references/api-payloads.md      # Full request/response schemas per mode\nRead references/configuration.md     # All configurable parameters\nRead references/embedding.md         # Embedding code and options"
      },
      {
        "title": "Common Patterns",
        "body": "\"I want a quick video of someone saying X\" → ttt mode, minimal config\n\"I want a customer support avatar\" → doc_qa mode with knowledge docs\n\"I want an AI sales rep\" → oc mode with a sales personality prompt\n\"I want to connect my own LLM\" → plugin mode with webhook URL\n\"I want a guided onboarding flow\" → voiceflow mode with Voiceflow API key"
      },
      {
        "title": "Information to Collect from the User",
        "body": "Before creating, ask for:\n\nPurpose / use case → determines operating mode\nFace preference → list available faces for selection\nVoice preference → language, accent, gender, speed priority\nAlias → display name for the digital human\nLanguage → speech recognition and UI language (e.g., en-US, es-ES)\nGreeting message → initial message the avatar says\nSystem prompt (for oc/doc_qa) → personality and behavior instructions\nKnowledge documents (for doc_qa) → files to upload\nVoiceflow API key (for voiceflow) → from their Voiceflow account\nPlugin URL (for plugin) → webhook endpoint for their custom engine"
      }
    ],
    "body": "UNITH Digital Humans Skill\n\nCreate, configure, update, and deploy AI-powered Digital Human avatars using the UNITH API.\n\nQuick Overview\n\nUNITH 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.\n\nBase API URL: https://platform-api.unith.ai Docs: https://docs.unith.ai\n\nPrerequisites\n\nThe user must supply the following credentials (stored as environment variables):\n\nVariable\tDescription\tHow to obtain\nUNITH_EMAIL\tAccount email\tRegister at https://unith.ai\nUNITH_SECRET_KEY\tNon-expiring secret key\tUNITH dashboard → Manage Account → \"Secret Key\" section → Generate\n\n⚠️ The secret key is displayed only once. If lost, the user must delete and regenerate it.\n\nAuthentication\n\nAll API calls require a Bearer token (valid 7 days). Use the auth script:\n\nsource scripts/auth.sh\n\n\nThis validates credentials, retries on network errors, and exports UNITH_TOKEN. On failure, it prints specific guidance (wrong key, expired token, etc.).\n\nWorkflow: Creating a Digital Human\nStep 1: Choose an Operating Mode\n\nAsk the user what they want the digital human to do. Map their answer to one of 5 modes:\n\nMode\toperationMode value\tUse case\tOutput\nText-to-Video\tttt\tGenerate an MP4 video of the avatar speaking provided text\tMP4 file\nOpen Dialogue\toc\tFree-form conversational avatar guided by a system prompt\tHosted conversational URL\nDocument Q&A\tdoc_qa\tAvatar answers questions from uploaded documents\tHosted conversational URL\nVoiceflow\tvoiceflow\tGuided conversation flow via Voiceflow\tHosted conversational URL\nPlugin\tplugin\tConnect any external LLM or conversational engine via webhook\tHosted conversational URL\n\nComplexity spectrum (simple → sophisticated):\n\nSimplest: ttt — just text in, video out. No knowledge base needed.\nStandard: oc — conversational with a system prompt. Good for general assistants.\nKnowledge-grounded: doc_qa — upload documents, avatar answers from them. Best for support/FAQ.\nWorkflow-driven: voiceflow — structured conversation paths. Requires Voiceflow account.\nMost flexible: plugin — BYO conversational engine. Maximum control.\nStep 2: List Available Faces\nbash scripts/list-resources.sh faces\n\n\nEach face has an id (used as headVisualId in creation). Faces can be:\n\nPublic: Available to all organizations\nPrivate: Available only to the user's organization\nCustom (BYOF): User uploads a video of a real person (currently managed by UNITH)\n\nPresent the available faces to the user and let them choose.\n\nStep 3: List Available Voices\nbash scripts/list-resources.sh voices\n\n\nVoices come from providers: elevenlabs, azure, audiostack. Present options to the user. Voices have performance rankings — faster voices are better for real-time conversation.\n\nStep 4: Create the Digital Human\n\nBuild a JSON payload file (see references/api-payloads.md for the schema per mode), then:\n\nbash scripts/create-head.sh payload.json --dry-run   # validate first\nbash scripts/create-head.sh payload.json              # create\n\n\nThe script validates required fields, checks mode-specific requirements, retries on server errors, and prints the publicUrl on success.\n\nStep 5 (doc_qa only): Upload Knowledge Document\n\nFor doc_qa mode, the digital human needs a knowledge document:\n\nbash scripts/upload-document.sh <headId> /path/to/document.pdf\n\n\nThe script checks file existence/size, uses a longer timeout for uploads, and provides guidance on next steps.\n\nStep 6: Test and Iterate\n\nThe digital human is live at the publicUrl from Step 4. The user should:\n\nVisit the URL and test the conversation\nUpdate configuration as needed (see below)\nUpdating a Digital Human\n\nUse the update script to modify any parameter except the face (changing face requires creating a new head):\n\nbash scripts/update-head.sh <headId> updates.json                         # from a JSON file\nbash scripts/update-head.sh <headId> --field ttsVoice=rachel              # single field\nbash scripts/update-head.sh <headId> --field ttsVoice=rachel --field greetings=\"Hi!\"  # multiple fields\n\nListing Existing Digital Humans\nbash scripts/list-resources.sh heads           # list all\nbash scripts/list-resources.sh head <headId>   # get details for one\n\nDeleting a Digital Human\nbash scripts/delete-head.sh <headId> --confirm     # always use --confirm in automated/agent contexts\n\n\nThis permanently removes the digital human and cannot be undone.\n\nAgent note: Always pass --confirm when calling this script. Without it, the script prompts for interactive input and will hang.\n\nEmbedding\n\nDigital humans can be embedded in websites/apps. See references/embedding.md for code snippets and configuration options.\n\nScripts\n\nAll scripts include retry logic (exponential backoff), meaningful error messages, and input validation.\n\nScript\tPurpose\nscripts/_utils.sh\tShared utilities: retry wrapper, colored logging, error parsing\nscripts/auth.sh\tAuthenticate and export UNITH_TOKEN (with 6-day token caching)\nscripts/list-resources.sh\tList faces, voices, heads, languages, or get head details\nscripts/create-head.sh\tCreate a digital human from a JSON payload file (with --dry-run validation)\nscripts/update-head.sh\tUpdate a digital human's configuration (JSON file or --field flags)\nscripts/delete-head.sh\tDelete a digital human (with confirmation prompt)\nscripts/upload-document.sh\tUpload knowledge document to a doc_qa head\n\nConfiguration via environment variables:\n\nUNITH_MAX_RETRIES — max retry attempts (default: 3)\nUNITH_RETRY_DELAY — initial delay between retries in seconds (default: 2, doubles each retry)\nUNITH_CURL_TIMEOUT — curl timeout in seconds (default: 30, 120 for uploads)\nUNITH_CONNECT_TIMEOUT — connection timeout in seconds (default: 10)\nUNITH_TOKEN_CACHE — token cache file path (default: /tmp/.unith_token_cache, set empty to disable)\nDetailed API Reference\n\nFor full payload schemas, configuration parameters, and mode-specific details:\n\nRead references/api-payloads.md      # Full request/response schemas per mode\nRead references/configuration.md     # All configurable parameters\nRead references/embedding.md         # Embedding code and options\n\nCommon Patterns\n\n\"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\n\nInformation to Collect from the User\n\nBefore creating, ask for:\n\nPurpose / use case → determines operating mode\nFace preference → list available faces for selection\nVoice preference → language, accent, gender, speed priority\nAlias → display name for the digital human\nLanguage → speech recognition and UI language (e.g., en-US, es-ES)\nGreeting message → initial message the avatar says\nSystem prompt (for oc/doc_qa) → personality and behavior instructions\nKnowledge documents (for doc_qa) → files to upload\nVoiceflow API key (for voiceflow) → from their Voiceflow account\nPlugin URL (for plugin) → webhook endpoint for their custom engine"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/polucas/digital-clawatar",
    "publisherUrl": "https://clawhub.ai/polucas/digital-clawatar",
    "owner": "polucas",
    "version": "1.0.2",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/digital-clawatar",
    "downloadUrl": "https://openagent3.xyz/downloads/digital-clawatar",
    "agentUrl": "https://openagent3.xyz/skills/digital-clawatar/agent",
    "manifestUrl": "https://openagent3.xyz/skills/digital-clawatar/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/digital-clawatar/agent.md"
  }
}