{
  "schemaVersion": "1.0",
  "item": {
    "slug": "visla",
    "name": "Visla AI Video Creation",
    "source": "tencent",
    "type": "skill",
    "category": "内容创作",
    "sourceUrl": "https://clawhub.ai/visla-admin/visla",
    "canonicalUrl": "https://clawhub.ai/visla-admin/visla",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/visla",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=visla",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/visla_cli.sh",
      "scripts/visla_cli.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",
      "slug": "visla",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T23:44:37.200Z",
      "expiresAt": "2026-05-07T23:44:37.200Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=visla",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=visla",
        "contentDisposition": "attachment; filename=\"visla-1.0.3.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "visla"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/visla"
    },
    "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/visla",
    "agentPageUrl": "https://openagent3.xyz/skills/visla/agent",
    "manifestUrl": "https://openagent3.xyz/skills/visla/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/visla/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": "Visla Video Generation",
        "body": "Version: 260218-1410\n\nCreate AI-generated videos from text scripts, web URLs, or documents (PPT/PDF) using Visla's OpenAPI."
      },
      {
        "title": "Before You Start",
        "body": "Credentials (NEVER output API keys/secrets in responses):\n\nIMPORTANT: Only read local credential files with explicit user consent.\n\nAsk the user for permission before reading ~/.config/visla/.credentials\nIf permission is granted and the file exists with valid credentials, use --credentials-file ~/.config/visla/.credentials with the Python CLI. The Bash CLI does not support --credentials-file, so use environment variables instead.\nIf permission is denied, missing, or invalid, ask the user for credentials\n\nOnly process local files (scripts/docs) explicitly provided by the user, and remind users to avoid uploading sensitive data.\n\nTell the user: this is a one-time setup (once configured, they won't need to do this again)\nTell the user: get API Key and Secret from https://www.visla.us/visla-api\nAsk for the API key/secret explicitly (or ask the user to update the file and confirm). Do not repeat the secrets back in the response.\n\nCredential validity check (practical):\n\nIf credentials exist but running account fails with VISLA_CLI_ERROR_CODE=missing_credentials or VISLA_CLI_ERROR_CODE=auth_failed, treat credentials as invalid and ask the user to provide real ones.\n\nFile format (bash/zsh):\n\nexport VISLA_API_KEY=\"your_key\"\nexport VISLA_API_SECRET=\"your_secret\"\n\nFor PowerShell (temporary session):\n\n$env:VISLA_API_KEY = \"your_key\"\n$env:VISLA_API_SECRET = \"your_secret\"\n\nScripts: scripts/visla_cli.py (Python), scripts/visla_cli.sh (Bash)"
      },
      {
        "title": "Platform Execution",
        "body": "Default strategy:\n\nPrefer Bash on macOS when dependencies are available (the Bash CLI avoids Python SSL-stack issues on some macOS setups).\nPrefer Python when you're already using a well-configured Python (or when Bash dependencies are missing).\n\nBash (recommended on macOS; also works on Linux-like environments):\n\n# With user consent, you may source ~/.config/visla/.credentials\nexport VISLA_API_KEY=\"your_key\"\nexport VISLA_API_SECRET=\"your_secret\"\n./scripts/visla_cli.sh <command>\n\nPython (cross-platform):\n\npython3 scripts/visla_cli.py --key \"your_key\" --secret \"your_secret\" <command>\n# Or, with user consent:\npython3 scripts/visla_cli.py --credentials-file ~/.config/visla/.credentials <command>\n\nWindows native (PowerShell/CMD without Bash; Python):\n\n# PowerShell\n$env:VISLA_API_KEY = \"your_key\"\n$env:VISLA_API_SECRET = \"your_secret\"\npython scripts/visla_cli.py <command>\n\nWindows note:\n\nThe agent should prefer running the Python CLI on Windows unless it has verified a Bash environment (WSL/Git Bash) is available.\nFor simple scripts, pass directly: python scripts/visla_cli.py script \"Scene 1: ...\"\nFor multi-line or complex scripts, use stdin with - (recommended, no temp files):\n@\"\nScene 1: ...\nScene 2: ...\n\"@ | python scripts/visla_cli.py script -\n\n\nIf you have Python Launcher installed, py -3 scripts/visla_cli.py <command> may work better than python.\nCredentials:\n\nThe Python CLI only reads a credentials file if --credentials-file is explicitly provided.\nOn Windows the default path is typically: %USERPROFILE%\\\\.config\\\\visla\\\\.credentials.\n\nNote: do not print credentials. Prefer environment variables or --credentials-file with explicit user consent."
      },
      {
        "title": "Commands",
        "body": "CommandDescription/visla script <script-or-@file>Create video from a script (text or a local file)/visla url <URL>Create video from web page URL/visla doc <file>Create video from document (PPT/PDF)/visla accountShow account info and credit balance\n\nSource of truth for the exact CLI surface: run scripts/visla_cli.sh --help or python3 scripts/visla_cli.py --help."
      },
      {
        "title": "Script Format",
        "body": "**Scene 1** (0-10 sec):\n**Visual:** A futuristic calendar flipping to 2025 with digital patterns.\n**Narrator:** \"AI is evolving rapidly! Here are 3 game-changing AI trends.\"\n\n**Scene 2** (10-25 sec):\n**Visual:** Text: \"Trend #1: Generative AI Everywhere.\" Show tools like ChatGPT.\n**Narrator:** \"Generative AI is dominating industries—creating content and images.\""
      },
      {
        "title": "Workflow",
        "body": "The script, url, and doc commands execute the complete flow automatically:\n\nCreate project\nPoll until generation completes (may take a few minutes)\nAuto-export and return download link\n\nExecution Instructions:\n\nInform user that video generation takes some time\nReport progress status periodically during polling"
      },
      {
        "title": "Timeout Guidance",
        "body": "This workflow typically takes 3-10 minutes, but can take up to ~30 minutes in the worst case. Set the task/command timeout to >= 30 minutes (Windows defaults are often ~10 minutes and need to be increased). If you cannot change the timeout, warn the user up front and, on timeout, ask whether to continue or switch to a step-by-step run.\nIf timeout occurs, the CLI returns project_uuid in the output. Inform the user they can manually check project status and continue later using the Visla web interface or API."
      },
      {
        "title": "Examples",
        "body": "/visla script @myscript.txt\n/visla script \"Scene 1: ...\"\n/visla url https://blog.example.com/article\n/visla doc presentation.pptx\n/visla account"
      },
      {
        "title": "Supported Document Formats",
        "body": "PowerPoint: .pptx, .ppt\nPDF: .pdf"
      },
      {
        "title": "Output Format",
        "body": "Start: Display \"Visla Skill v260218-1410\" when skill begins\nEnd: Display \"Visla Skill v260218-1410 completed\" when skill finishes"
      }
    ],
    "body": "Visla Video Generation\n\nVersion: 260218-1410\n\nCreate AI-generated videos from text scripts, web URLs, or documents (PPT/PDF) using Visla's OpenAPI.\n\nBefore You Start\n\nCredentials (NEVER output API keys/secrets in responses):\n\nIMPORTANT: Only read local credential files with explicit user consent.\n\nAsk the user for permission before reading ~/.config/visla/.credentials\nIf permission is granted and the file exists with valid credentials, use --credentials-file ~/.config/visla/.credentials with the Python CLI. The Bash CLI does not support --credentials-file, so use environment variables instead.\nIf permission is denied, missing, or invalid, ask the user for credentials\n\nOnly process local files (scripts/docs) explicitly provided by the user, and remind users to avoid uploading sensitive data.\n\nTell the user: this is a one-time setup (once configured, they won't need to do this again)\nTell the user: get API Key and Secret from https://www.visla.us/visla-api\nAsk for the API key/secret explicitly (or ask the user to update the file and confirm). Do not repeat the secrets back in the response.\n\nCredential validity check (practical):\n\nIf credentials exist but running account fails with VISLA_CLI_ERROR_CODE=missing_credentials or VISLA_CLI_ERROR_CODE=auth_failed, treat credentials as invalid and ask the user to provide real ones.\n\nFile format (bash/zsh):\n\nexport VISLA_API_KEY=\"your_key\"\nexport VISLA_API_SECRET=\"your_secret\"\n\n\nFor PowerShell (temporary session):\n\n$env:VISLA_API_KEY = \"your_key\"\n$env:VISLA_API_SECRET = \"your_secret\"\n\n\nScripts: scripts/visla_cli.py (Python), scripts/visla_cli.sh (Bash)\n\nPlatform Execution\n\nDefault strategy:\n\nPrefer Bash on macOS when dependencies are available (the Bash CLI avoids Python SSL-stack issues on some macOS setups).\nPrefer Python when you're already using a well-configured Python (or when Bash dependencies are missing).\n\nBash (recommended on macOS; also works on Linux-like environments):\n\n# With user consent, you may source ~/.config/visla/.credentials\nexport VISLA_API_KEY=\"your_key\"\nexport VISLA_API_SECRET=\"your_secret\"\n./scripts/visla_cli.sh <command>\n\n\nPython (cross-platform):\n\npython3 scripts/visla_cli.py --key \"your_key\" --secret \"your_secret\" <command>\n# Or, with user consent:\npython3 scripts/visla_cli.py --credentials-file ~/.config/visla/.credentials <command>\n\n\nWindows native (PowerShell/CMD without Bash; Python):\n\n# PowerShell\n$env:VISLA_API_KEY = \"your_key\"\n$env:VISLA_API_SECRET = \"your_secret\"\npython scripts/visla_cli.py <command>\n\n\nWindows note:\n\nThe agent should prefer running the Python CLI on Windows unless it has verified a Bash environment (WSL/Git Bash) is available.\nFor simple scripts, pass directly: python scripts/visla_cli.py script \"Scene 1: ...\"\nFor multi-line or complex scripts, use stdin with - (recommended, no temp files):\n@\"\nScene 1: ...\nScene 2: ...\n\"@ | python scripts/visla_cli.py script -\n\nIf you have Python Launcher installed, py -3 scripts/visla_cli.py <command> may work better than python.\nCredentials:\nThe Python CLI only reads a credentials file if --credentials-file is explicitly provided.\nOn Windows the default path is typically: %USERPROFILE%\\\\.config\\\\visla\\\\.credentials.\n\nNote: do not print credentials. Prefer environment variables or --credentials-file with explicit user consent.\n\nCommands\nCommand\tDescription\n/visla script <script-or-@file>\tCreate video from a script (text or a local file)\n/visla url <URL>\tCreate video from web page URL\n/visla doc <file>\tCreate video from document (PPT/PDF)\n/visla account\tShow account info and credit balance\n\nSource of truth for the exact CLI surface: run scripts/visla_cli.sh --help or python3 scripts/visla_cli.py --help.\n\nScript Format\n**Scene 1** (0-10 sec):\n**Visual:** A futuristic calendar flipping to 2025 with digital patterns.\n**Narrator:** \"AI is evolving rapidly! Here are 3 game-changing AI trends.\"\n\n**Scene 2** (10-25 sec):\n**Visual:** Text: \"Trend #1: Generative AI Everywhere.\" Show tools like ChatGPT.\n**Narrator:** \"Generative AI is dominating industries—creating content and images.\"\n\nWorkflow\n\nThe script, url, and doc commands execute the complete flow automatically:\n\nCreate project\nPoll until generation completes (may take a few minutes)\nAuto-export and return download link\n\nExecution Instructions:\n\nInform user that video generation takes some time\nReport progress status periodically during polling\nTimeout Guidance\nThis workflow typically takes 3-10 minutes, but can take up to ~30 minutes in the worst case. Set the task/command timeout to >= 30 minutes (Windows defaults are often ~10 minutes and need to be increased). If you cannot change the timeout, warn the user up front and, on timeout, ask whether to continue or switch to a step-by-step run.\nIf timeout occurs, the CLI returns project_uuid in the output. Inform the user they can manually check project status and continue later using the Visla web interface or API.\nExamples\n/visla script @myscript.txt\n/visla script \"Scene 1: ...\"\n/visla url https://blog.example.com/article\n/visla doc presentation.pptx\n/visla account\n\nSupported Document Formats\nPowerPoint: .pptx, .ppt\nPDF: .pdf\nOutput Format\nStart: Display \"Visla Skill v260218-1410\" when skill begins\nEnd: Display \"Visla Skill v260218-1410 completed\" when skill finishes"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/visla-admin/visla",
    "publisherUrl": "https://clawhub.ai/visla-admin/visla",
    "owner": "visla-admin",
    "version": "1.0.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/visla",
    "downloadUrl": "https://openagent3.xyz/downloads/visla",
    "agentUrl": "https://openagent3.xyz/skills/visla/agent",
    "manifestUrl": "https://openagent3.xyz/skills/visla/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/visla/agent.md"
  }
}