{
  "schemaVersion": "1.0",
  "item": {
    "slug": "venice-characters",
    "name": "Venice Characters",
    "source": "tencent",
    "type": "skill",
    "category": "内容创作",
    "sourceUrl": "https://clawhub.ai/sabrinaaquino/venice-characters",
    "canonicalUrl": "https://clawhub.ai/sabrinaaquino/venice-characters",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/venice-characters",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=venice-api-kit",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "scripts/api_keys_list.py",
      "scripts/api_key_create.py",
      "scripts/api_key_delete.py",
      "scripts/api_key_get.py",
      "scripts/api_key_update.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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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/venice-characters"
    },
    "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/venice-characters",
    "agentPageUrl": "https://openagent3.xyz/skills/venice-characters/agent",
    "manifestUrl": "https://openagent3.xyz/skills/venice-characters/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/venice-characters/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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Venice API Kit",
        "body": "Complete toolkit for the entire Venice AI API. Includes all inference endpoints (image, video, audio, embeddings), discovery tools (models, characters), and admin functions (billing, usage, API keys).\n\nAPI Base URL: https://api.venice.ai/api/v1\nDocumentation: docs.venice.ai"
      },
      {
        "title": "Setup",
        "body": "Get your API key from venice.ai → Settings → API Keys\nSet the environment variable:\n\nexport VENICE_API_KEY=\"your_api_key_here\"\n\nOr configure in ~/.openclaw/openclaw.json:\n\n{\n  skills: {\n    entries: {\n      \"venice-api-kit\": {\n        apiKey: \"your_api_key_here\"\n      }\n    }\n  }\n}"
      },
      {
        "title": "Image Generation",
        "body": "Generate images using Venice's image models. Returns base64 image data.\n\nuv run {baseDir}/scripts/image_generate.py --prompt \"a serene mountain landscape at sunset\"\n\nOptions:\n\n--prompt (required): Description of the image (max 7500 chars, model-dependent)\n--output: Output filename (default: auto-generated timestamp)\n--model: Model ID (default: flux-2-max)\n--size: Image size: 1024x1024, 1536x1024, 1024x1536, 1792x1024, 1024x1792 (default: 1024x1024)\n--style-id: Style preset ID (use --list-styles to see available)\n--negative-prompt: What to avoid in the image\n--seed: Seed for reproducible generation\n\nList available styles:\n\nuv run {baseDir}/scripts/image_generate.py --list-styles"
      },
      {
        "title": "Image Upscaling",
        "body": "Upscale images 1-4x with optional AI enhancement. Returns binary PNG.\n\nuv run {baseDir}/scripts/image_upscale.py --image input.png --scale 2\n\nOptions:\n\n--image (required): Input image path or URL\n--output: Output filename (default: upscaled-{timestamp}.png)\n--scale: Scale factor 1-4 (default: 2). Scale of 1 requires --enhance\n--enhance: Enable AI enhancement during upscaling\n--enhance-creativity: How much AI can change (0-1, higher = more creative)\n--enhance-prompt: Style to apply (e.g., \"gold\", \"marble\", \"cinematic\")\n--replication: Preserve original lines/noise (0-1, higher = less hallucination)\n\nExample with enhancement:\n\nuv run {baseDir}/scripts/image_upscale.py --image photo.png --scale 2 --enhance --enhance-prompt \"cinematic lighting\""
      },
      {
        "title": "Image Editing",
        "body": "Edit images with AI using text prompts. Returns binary PNG.\n\nuv run {baseDir}/scripts/image_edit.py --image photo.png --prompt \"add sunglasses\"\n\nOptions:\n\n--image (required): Input image path or URL\n--prompt (required): Edit instructions (e.g., \"remove the tree\", \"change sky to sunset\")\n--output: Output filename (default: edited-{timestamp}.png)\n--model: Edit model (default: qwen-edit). Available: qwen-edit, flux-2-max-edit, gpt-image-1-5-edit, nano-banana-pro-edit, seedream-v4-edit\n--aspect-ratio: Output aspect ratio: auto, 1:1, 3:2, 16:9, 21:9, 9:16, 2:3, 3:4"
      },
      {
        "title": "Background Removal",
        "body": "Remove backgrounds from images. Returns binary PNG with transparency.\n\nuv run {baseDir}/scripts/image_background_remove.py --image photo.png\n\nOptions:\n\n--image (required): Input image path or URL\n--output: Output filename (default: no-background-{timestamp}.png)"
      },
      {
        "title": "Text-to-Speech",
        "body": "Convert text to speech with multiple voices and formats. Returns binary audio.\n\nuv run {baseDir}/scripts/audio_speech.py --text \"Hello, welcome to Venice AI\"\n\nOptions:\n\n--text (required): Text to convert (max 4096 characters)\n--output: Output filename (default: speech-{timestamp}.{format})\n--voice: Voice ID (default: af_nicole)\n--model: TTS model (default: tts-kokoro)\n--speed: Speed multiplier 0.25-4.0 (default: 1.0)\n--format: Audio format: mp3, opus, aac, flac, wav, pcm (default: mp3)\n--streaming: Stream audio sentence by sentence\n\nAvailable voices:\n\nAmerican Female: af_alloy, af_aoede, af_bella, af_heart, af_jadzia, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky\nAmerican Male: am_adam, am_echo, am_eric\nBritish Female: bf_emma, bf_isabella, bf_alice\nBritish Male: bm_george, bm_lewis, bm_daniel"
      },
      {
        "title": "Audio Transcription",
        "body": "Transcribe audio files to text using Whisper-based speech recognition.\n\nuv run {baseDir}/scripts/transcribe.py --file audio.mp3\n\nOptions:\n\n--file (required): Audio file to transcribe (WAV, MP3, FLAC, M4A, AAC)\n--output: Save transcription to file\n--model: ASR model (default: openai/whisper-large-v3)\n--format: Output format: json or text (default: json)\n--timestamps: Include word/segment timestamps\n--language: Language hint (ISO 639-1: en, es, fr, etc.)"
      },
      {
        "title": "Embeddings",
        "body": "Generate vector embeddings for RAG applications.\n\nuv run {baseDir}/scripts/embeddings.py --text \"Your text to embed\"\n\nOptions:\n\n--text: Text to embed (use this OR --file)\n--file: Read text from file\n--output: Save embeddings to JSON file\n--model: Embedding model (default: text-embedding-3-small)"
      },
      {
        "title": "Video Generation",
        "body": "Generate videos from text prompts. Some models require a reference image. Async with polling.\n\nText-to-video:\n\nuv run {baseDir}/scripts/video_generate.py --prompt \"a cat playing piano\"\n\nImage-to-video (requires reference image):\n\nuv run {baseDir}/scripts/video_generate.py --prompt \"a cat playing piano\" --image reference.png\n\nOptions:\n\n--prompt (required): Video description (max 2500 characters)\n--image: Reference image (path or URL) - required for image-to-video models\n--output: Output filename (default: venice-video-{timestamp}.mp4)\n--model: Video model (default: wan-2.6-image-to-video). Also: wan-2.6-text-to-video, wan-2.6-flash-image-to-video\n--duration: Video duration: 5s or 10s (default: 5s)\n--resolution: Resolution: 480p, 720p, 1080p (default: 720p)\n--aspect-ratio: Aspect ratio (e.g., 16:9, 9:16, 1:1)\n--negative-prompt: What to avoid in the video\n--max-wait: Max seconds to wait for completion (default: 600)"
      },
      {
        "title": "Models Explorer",
        "body": "List and explore all available Venice AI models. No API key required.\n\nuv run {baseDir}/scripts/models.py\n\nOptions:\n\n--type: Filter by type: all, text, image, video, tts, asr, embedding, code, upscale, inpaint (default: all)\n--format: Output format: table, json, names (default: table)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/models.py --type image\nuv run {baseDir}/scripts/models.py --format json --output models.json"
      },
      {
        "title": "Characters Browser",
        "body": "Browse and discover Venice AI character personas.\n\nuv run {baseDir}/scripts/characters.py\n\nOptions:\n\n--search: Search by name or description\n--tag: Filter by tag\n--limit: Max results (default: 20)\n--format: Output format: table, json, list (default: table)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/characters.py --search \"coding\"\nuv run {baseDir}/scripts/characters.py --tag \"assistant\" --format json"
      },
      {
        "title": "Admin: Check Balance",
        "body": "Check your DIEM and USD balances. Requires Admin API key.\n\nuv run {baseDir}/scripts/balance.py\n\nShows current balance, consumption currency, and DIEM epoch allocation."
      },
      {
        "title": "Admin: Usage History",
        "body": "View detailed usage history with filtering. Requires Admin API key.\n\nuv run {baseDir}/scripts/usage.py\n\nOptions:\n\n--currency: Filter by currency: DIEM, USD, VCU (default: DIEM)\n--start-date: Start date (ISO format: 2024-01-01)\n--end-date: End date (ISO format: 2024-12-31)\n--limit: Results per page, max 200 (default: 50)\n--page: Page number (default: 1)\n--sort: Sort order: asc, desc (default: desc)\n--format: Output format: json, csv (default: json)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/usage.py --currency USD --limit 100\nuv run {baseDir}/scripts/usage.py --start-date 2024-01-01 --format csv --output usage.csv"
      },
      {
        "title": "Admin: List API Keys",
        "body": "List all your API keys with metadata. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_keys_list.py\n\nShows key ID, name, type, creation date, last used date, and rate limits."
      },
      {
        "title": "Admin: Get API Key Details",
        "body": "Get detailed information for a specific API key. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_get.py --id \"key_abc123\"\n\nOptions:\n\n--id (required): API key ID to get details for"
      },
      {
        "title": "Admin: Create API Key",
        "body": "Create a new API key. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_create.py --name \"My New Key\"\n\nOptions:\n\n--name (required): Name for the new API key\n--type: Key type: INFERENCE (default) or ADMIN\n\nImportant: The full key is only shown once on creation. Save it immediately."
      },
      {
        "title": "Admin: Update API Key",
        "body": "Update an existing API key's settings. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_update.py --id \"key_abc123\" --name \"New Name\"\n\nOptions:\n\n--id (required): API key ID to update\n--name: New name for the key"
      },
      {
        "title": "Admin: Delete API Key",
        "body": "Delete an API key. This action is irreversible. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_delete.py --id \"key_abc123\" --force\n\nOptions:\n\n--id (required): API key ID to delete\n--force (required): Confirm deletion"
      },
      {
        "title": "Rate Limits",
        "body": "Get current rate limits and balance information.\n\nuv run {baseDir}/scripts/rate_limits.py\n\nShows requests/minute, tokens/minute, tokens/day limits and current usage."
      },
      {
        "title": "Runtime Note",
        "body": "This skill uses uv run which automatically installs Python dependencies (httpx) via PEP 723 inline script metadata. No manual Python package installation required - uv handles everything."
      },
      {
        "title": "Security Notes",
        "body": "Privacy: All inference is private—no logging, no training on your data\nAPI Key: Store securely, never commit to version control\nAdmin vs Inference Keys: Admin keys can access billing/usage—use inference keys for everyday work\nData: Venice does not retain request/response data\nTrust: Verify you trust Venice.ai before sending sensitive data"
      },
      {
        "title": "API Reference",
        "body": "EndpointDescriptionResponse/image/generateFull image generationJSON with base64 images/images/generationsOpenAI-compatible generationJSON with base64/image/upscaleImage upscaling with enhancementBinary PNG/image/editAI image editingBinary PNG/image/background-removeBackground removalBinary PNG (transparent)/audio/speechText-to-speechBinary audio/audio/transcriptionsSpeech-to-textJSON with text/embeddingsVector embeddingsJSON/video/queueQueue video generationJSON with queue_id/video/retrieveRetrieve completed videoBinary MP4 or JSON status/modelsList available modelsJSON/charactersList character personasJSON/billing/balanceCheck account balanceJSON (Admin key)/billing/usageView usage historyJSON (Admin key)/api_keysList API keysJSON (Admin key)/api_keys/{id}Get/Update/Delete API keyJSON (Admin key)/api_keys/rate_limitsGet rate limits & balancesJSON\n\nFull API docs: docs.venice.ai"
      }
    ],
    "body": "Venice API Kit\n\nComplete toolkit for the entire Venice AI API. Includes all inference endpoints (image, video, audio, embeddings), discovery tools (models, characters), and admin functions (billing, usage, API keys).\n\nAPI Base URL: https://api.venice.ai/api/v1 Documentation: docs.venice.ai\n\nSetup\nGet your API key from venice.ai → Settings → API Keys\nSet the environment variable:\nexport VENICE_API_KEY=\"your_api_key_here\"\n\n\nOr configure in ~/.openclaw/openclaw.json:\n\n{\n  skills: {\n    entries: {\n      \"venice-api-kit\": {\n        apiKey: \"your_api_key_here\"\n      }\n    }\n  }\n}\n\nImage Generation\n\nGenerate images using Venice's image models. Returns base64 image data.\n\nuv run {baseDir}/scripts/image_generate.py --prompt \"a serene mountain landscape at sunset\"\n\n\nOptions:\n\n--prompt (required): Description of the image (max 7500 chars, model-dependent)\n--output: Output filename (default: auto-generated timestamp)\n--model: Model ID (default: flux-2-max)\n--size: Image size: 1024x1024, 1536x1024, 1024x1536, 1792x1024, 1024x1792 (default: 1024x1024)\n--style-id: Style preset ID (use --list-styles to see available)\n--negative-prompt: What to avoid in the image\n--seed: Seed for reproducible generation\n\nList available styles:\n\nuv run {baseDir}/scripts/image_generate.py --list-styles\n\nImage Upscaling\n\nUpscale images 1-4x with optional AI enhancement. Returns binary PNG.\n\nuv run {baseDir}/scripts/image_upscale.py --image input.png --scale 2\n\n\nOptions:\n\n--image (required): Input image path or URL\n--output: Output filename (default: upscaled-{timestamp}.png)\n--scale: Scale factor 1-4 (default: 2). Scale of 1 requires --enhance\n--enhance: Enable AI enhancement during upscaling\n--enhance-creativity: How much AI can change (0-1, higher = more creative)\n--enhance-prompt: Style to apply (e.g., \"gold\", \"marble\", \"cinematic\")\n--replication: Preserve original lines/noise (0-1, higher = less hallucination)\n\nExample with enhancement:\n\nuv run {baseDir}/scripts/image_upscale.py --image photo.png --scale 2 --enhance --enhance-prompt \"cinematic lighting\"\n\nImage Editing\n\nEdit images with AI using text prompts. Returns binary PNG.\n\nuv run {baseDir}/scripts/image_edit.py --image photo.png --prompt \"add sunglasses\"\n\n\nOptions:\n\n--image (required): Input image path or URL\n--prompt (required): Edit instructions (e.g., \"remove the tree\", \"change sky to sunset\")\n--output: Output filename (default: edited-{timestamp}.png)\n--model: Edit model (default: qwen-edit). Available: qwen-edit, flux-2-max-edit, gpt-image-1-5-edit, nano-banana-pro-edit, seedream-v4-edit\n--aspect-ratio: Output aspect ratio: auto, 1:1, 3:2, 16:9, 21:9, 9:16, 2:3, 3:4\nBackground Removal\n\nRemove backgrounds from images. Returns binary PNG with transparency.\n\nuv run {baseDir}/scripts/image_background_remove.py --image photo.png\n\n\nOptions:\n\n--image (required): Input image path or URL\n--output: Output filename (default: no-background-{timestamp}.png)\nText-to-Speech\n\nConvert text to speech with multiple voices and formats. Returns binary audio.\n\nuv run {baseDir}/scripts/audio_speech.py --text \"Hello, welcome to Venice AI\"\n\n\nOptions:\n\n--text (required): Text to convert (max 4096 characters)\n--output: Output filename (default: speech-{timestamp}.{format})\n--voice: Voice ID (default: af_nicole)\n--model: TTS model (default: tts-kokoro)\n--speed: Speed multiplier 0.25-4.0 (default: 1.0)\n--format: Audio format: mp3, opus, aac, flac, wav, pcm (default: mp3)\n--streaming: Stream audio sentence by sentence\n\nAvailable voices:\n\nAmerican Female: af_alloy, af_aoede, af_bella, af_heart, af_jadzia, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky\nAmerican Male: am_adam, am_echo, am_eric\nBritish Female: bf_emma, bf_isabella, bf_alice\nBritish Male: bm_george, bm_lewis, bm_daniel\nAudio Transcription\n\nTranscribe audio files to text using Whisper-based speech recognition.\n\nuv run {baseDir}/scripts/transcribe.py --file audio.mp3\n\n\nOptions:\n\n--file (required): Audio file to transcribe (WAV, MP3, FLAC, M4A, AAC)\n--output: Save transcription to file\n--model: ASR model (default: openai/whisper-large-v3)\n--format: Output format: json or text (default: json)\n--timestamps: Include word/segment timestamps\n--language: Language hint (ISO 639-1: en, es, fr, etc.)\nEmbeddings\n\nGenerate vector embeddings for RAG applications.\n\nuv run {baseDir}/scripts/embeddings.py --text \"Your text to embed\"\n\n\nOptions:\n\n--text: Text to embed (use this OR --file)\n--file: Read text from file\n--output: Save embeddings to JSON file\n--model: Embedding model (default: text-embedding-3-small)\nVideo Generation\n\nGenerate videos from text prompts. Some models require a reference image. Async with polling.\n\nText-to-video:\n\nuv run {baseDir}/scripts/video_generate.py --prompt \"a cat playing piano\"\n\n\nImage-to-video (requires reference image):\n\nuv run {baseDir}/scripts/video_generate.py --prompt \"a cat playing piano\" --image reference.png\n\n\nOptions:\n\n--prompt (required): Video description (max 2500 characters)\n--image: Reference image (path or URL) - required for image-to-video models\n--output: Output filename (default: venice-video-{timestamp}.mp4)\n--model: Video model (default: wan-2.6-image-to-video). Also: wan-2.6-text-to-video, wan-2.6-flash-image-to-video\n--duration: Video duration: 5s or 10s (default: 5s)\n--resolution: Resolution: 480p, 720p, 1080p (default: 720p)\n--aspect-ratio: Aspect ratio (e.g., 16:9, 9:16, 1:1)\n--negative-prompt: What to avoid in the video\n--max-wait: Max seconds to wait for completion (default: 600)\nModels Explorer\n\nList and explore all available Venice AI models. No API key required.\n\nuv run {baseDir}/scripts/models.py\n\n\nOptions:\n\n--type: Filter by type: all, text, image, video, tts, asr, embedding, code, upscale, inpaint (default: all)\n--format: Output format: table, json, names (default: table)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/models.py --type image\nuv run {baseDir}/scripts/models.py --format json --output models.json\n\nCharacters Browser\n\nBrowse and discover Venice AI character personas.\n\nuv run {baseDir}/scripts/characters.py\n\n\nOptions:\n\n--search: Search by name or description\n--tag: Filter by tag\n--limit: Max results (default: 20)\n--format: Output format: table, json, list (default: table)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/characters.py --search \"coding\"\nuv run {baseDir}/scripts/characters.py --tag \"assistant\" --format json\n\nAdmin: Check Balance\n\nCheck your DIEM and USD balances. Requires Admin API key.\n\nuv run {baseDir}/scripts/balance.py\n\n\nShows current balance, consumption currency, and DIEM epoch allocation.\n\nAdmin: Usage History\n\nView detailed usage history with filtering. Requires Admin API key.\n\nuv run {baseDir}/scripts/usage.py\n\n\nOptions:\n\n--currency: Filter by currency: DIEM, USD, VCU (default: DIEM)\n--start-date: Start date (ISO format: 2024-01-01)\n--end-date: End date (ISO format: 2024-12-31)\n--limit: Results per page, max 200 (default: 50)\n--page: Page number (default: 1)\n--sort: Sort order: asc, desc (default: desc)\n--format: Output format: json, csv (default: json)\n--output: Save to file\n\nExamples:\n\nuv run {baseDir}/scripts/usage.py --currency USD --limit 100\nuv run {baseDir}/scripts/usage.py --start-date 2024-01-01 --format csv --output usage.csv\n\nAdmin: List API Keys\n\nList all your API keys with metadata. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_keys_list.py\n\n\nShows key ID, name, type, creation date, last used date, and rate limits.\n\nAdmin: Get API Key Details\n\nGet detailed information for a specific API key. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_get.py --id \"key_abc123\"\n\n\nOptions:\n\n--id (required): API key ID to get details for\nAdmin: Create API Key\n\nCreate a new API key. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_create.py --name \"My New Key\"\n\n\nOptions:\n\n--name (required): Name for the new API key\n--type: Key type: INFERENCE (default) or ADMIN\n\nImportant: The full key is only shown once on creation. Save it immediately.\n\nAdmin: Update API Key\n\nUpdate an existing API key's settings. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_update.py --id \"key_abc123\" --name \"New Name\"\n\n\nOptions:\n\n--id (required): API key ID to update\n--name: New name for the key\nAdmin: Delete API Key\n\nDelete an API key. This action is irreversible. Requires Admin API key.\n\nuv run {baseDir}/scripts/api_key_delete.py --id \"key_abc123\" --force\n\n\nOptions:\n\n--id (required): API key ID to delete\n--force (required): Confirm deletion\nRate Limits\n\nGet current rate limits and balance information.\n\nuv run {baseDir}/scripts/rate_limits.py\n\n\nShows requests/minute, tokens/minute, tokens/day limits and current usage.\n\nRuntime Note\n\nThis skill uses uv run which automatically installs Python dependencies (httpx) via PEP 723 inline script metadata. No manual Python package installation required - uv handles everything.\n\nSecurity Notes\nPrivacy: All inference is private—no logging, no training on your data\nAPI Key: Store securely, never commit to version control\nAdmin vs Inference Keys: Admin keys can access billing/usage—use inference keys for everyday work\nData: Venice does not retain request/response data\nTrust: Verify you trust Venice.ai before sending sensitive data\nAPI Reference\nEndpoint\tDescription\tResponse\n/image/generate\tFull image generation\tJSON with base64 images\n/images/generations\tOpenAI-compatible generation\tJSON with base64\n/image/upscale\tImage upscaling with enhancement\tBinary PNG\n/image/edit\tAI image editing\tBinary PNG\n/image/background-remove\tBackground removal\tBinary PNG (transparent)\n/audio/speech\tText-to-speech\tBinary audio\n/audio/transcriptions\tSpeech-to-text\tJSON with text\n/embeddings\tVector embeddings\tJSON\n/video/queue\tQueue video generation\tJSON with queue_id\n/video/retrieve\tRetrieve completed video\tBinary MP4 or JSON status\n/models\tList available models\tJSON\n/characters\tList character personas\tJSON\n/billing/balance\tCheck account balance\tJSON (Admin key)\n/billing/usage\tView usage history\tJSON (Admin key)\n/api_keys\tList API keys\tJSON (Admin key)\n/api_keys/{id}\tGet/Update/Delete API key\tJSON (Admin key)\n/api_keys/rate_limits\tGet rate limits & balances\tJSON\n\nFull API docs: docs.venice.ai"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/sabrinaaquino/venice-characters",
    "publisherUrl": "https://clawhub.ai/sabrinaaquino/venice-characters",
    "owner": "sabrinaaquino",
    "version": "2.0.2",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/venice-characters",
    "downloadUrl": "https://openagent3.xyz/downloads/venice-characters",
    "agentUrl": "https://openagent3.xyz/skills/venice-characters/agent",
    "manifestUrl": "https://openagent3.xyz/skills/venice-characters/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/venice-characters/agent.md"
  }
}