{"id":"078a4d5b-c9e7-49e5-be00-1716e44d230f","entityType":"agent","slug":"clawhub-dlazyai-dlazy-elevenlabs-search","name":"音色库搜索 ElevenLabs Voice Search","canonicalUrl":"https://www.xpersona.co/agent/clawhub-dlazyai-dlazy-elevenlabs-search","canonicalPath":"/agent/clawhub-dlazyai-dlazy-elevenlabs-search","generatedAt":"2026-10-10T07:55:10.094Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":null},"description":"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 2.9K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s170j1ymymrxasgd00dsk7tckx84cf45:dlazy-elevenlabs-search","sourceUrl":"https://clawhub.ai/dlazyai/dlazy-elevenlabs-search","homepage":"https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/dlazyai/dlazy-elevenlabs-search","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":69,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"音色库搜索 ElevenLabs Voice Search technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":null},"stars":null,"forks":null,"downloads":2873,"packageName":null,"latestVersion":"1.3.26","tractionLabel":"2.9K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T11:01:10.166Z","lastCrawledAt":"2026-10-09T11:01:10.166Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T11:01:10.166Z","lastVerifiedAt":null,"highlights":[{"version":"1.3.26","createdAt":"2026-10-08T01:06:11.479Z","changelog":"例行版本更新 2026-10-08","fileCount":4,"zipByteSize":9055},{"version":"1.3.25","createdAt":"2026-10-04T01:06:30.173Z","changelog":"例行版本更新 2026-10-04","fileCount":4,"zipByteSize":9168},{"version":"1.3.24","createdAt":"2026-10-02T04:50:31.022Z","changelog":"例行版本更新 2026-10-02","fileCount":4,"zipByteSize":9033},{"version":"1.3.23","createdAt":"2026-09-30T01:05:26.836Z","changelog":"例行版本更新 2026-09-30","fileCount":4,"zipByteSize":9005},{"version":"1.3.22","createdAt":"2026-09-28T02:05:14.725Z","changelog":"例行版本更新 2026-09-28","fileCount":4,"zipByteSize":9079},{"version":"1.3.21","createdAt":"2026-09-28T01:05:53.598Z","changelog":"例行版本更新 2026-09-28","fileCount":4,"zipByteSize":9098},{"version":"1.3.20","createdAt":"2026-09-24T01:37:37.505Z","changelog":"例行版本更新 2026-09-24","fileCount":4,"zipByteSize":9124},{"version":"1.3.19","createdAt":"2026-09-24T01:12:15.024Z","changelog":"例行版本更新 2026-09-24","fileCount":4,"zipByteSize":9287}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s170j1ymymrxasgd00dsk7tckx84cf45:dlazy-elevenlabs-search","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s170j1ymymrxasgd00dsk7tckx84cf45:dlazy-elevenlabs-search` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/dlazyai/dlazy-elevenlabs-search before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T07:55:10.092Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-dlazy-elevenlabs-search/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":null},"readme":"Skill: 音色库搜索 ElevenLabs Voice Search\n\nOwner: dlazyai\n\nSummary: Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\n\nTags: latest:1.3.26\n\nVersion history:\n\nv1.3.26 | 2026-10-08T01:06:11.479Z | user\n\n例行版本更新 2026-10-08\n\nv1.3.25 | 2026-10-04T01:06:30.173Z | user\n\n例行版本更新 2026-10-04\n\nv1.3.24 | 2026-10-02T04:50:31.022Z | user\n\n例行版本更新 2026-10-02\n\nv1.3.23 | 2026-09-30T01:05:26.836Z | user\n\n例行版本更新 2026-09-30\n\nv1.3.22 | 2026-09-28T02:05:14.725Z | user\n\n例行版本更新 2026-09-28\n\nv1.3.21 | 2026-09-28T01:05:53.598Z | user\n\n例行版本更新 2026-09-28\n\nv1.3.20 | 2026-09-24T01:37:37.505Z | user\n\n例行版本更新 2026-09-24\n\nv1.3.19 | 2026-09-24T01:12:15.024Z | user\n\n例行版本更新 2026-09-24\n\nv1.3.18 | 2026-09-22T01:04:44.549Z | user\n\n例行版本更新 2026-09-22\n\nv1.3.17 | 2026-09-20T01:07:51.895Z | user\n\n例行版本更新 2026-09-20\n\nv1.3.16 | 2026-09-18T01:28:21.815Z | user\n\n例行版本更新 2026-09-18\n\nv1.3.15 | 2026-09-14T01:05:49.083Z | user\n\n例行版本更新 2026-09-14\n\nv1.3.14 | 2026-09-10T01:04:57.759Z | user\n\n例行版本更新 2026-09-10\n\nv1.3.13 | 2026-09-08T01:05:20.578Z | user\n\n例行版本更新 2026-09-08\n\nv1.3.12 | 2026-09-07T01:08:13.900Z | user\n\n例行版本更新 2026-09-07\n\nv1.3.11 | 2026-09-04T01:10:50.283Z | user\n\n例行版本更新 2026-09-04\n\nv1.3.10 | 2026-09-02T01:05:28.861Z | user\n\n例行版本更新 2026-09-02\n\nv1.3.9 | 2026-08-31T02:46:59.325Z | user\n\n源码仓库迁移至 github.com/dlazy-ai/cli\n\nv1.3.8 | 2026-08-24T09:16:18.938Z | user\n\nRestore Chinese display name\n\nv1.3.7 | 2026-08-17T08:59:25.259Z | user\n\nRestore Chinese display name\n\nv1.3.6 | 2026-08-10T05:41:17.062Z | user\n\nRestore Chinese display name\n\nv1.3.5 | 2026-08-10T03:55:44.451Z | user\n\nRestore Chinese display name\n\nv1.3.4 | 2026-07-21T02:07:59.440Z | auto\n\n- Updated CLI dependency version to @dlazy/cli@1.2.3.\n- Adjusted installation and usage instructions in documentation to reflect the new CLI version.\n- Removed the skill-card.md file as part of documentation cleanup.\n\nv1.3.3 | 2026-07-17T09:51:27.841Z | auto\n\n- Pin CLI install version to 1.2.2 in documentation and metadata.\n- Update installation commands for both npm and npx to use version 1.2.2.\n- Remove the file skill-card.md.\n- Minor maintenance updates to markdown documentation.\n\nv1.2.2 | 2026-07-17T08:37:45.124Z | auto\n\n- Removed the skill-card.md file.\n- No changes to functionality or user-facing documentation.\n\nv1.3.2 | 2026-07-09T01:41:41.201Z | user\n\nset Chinese display name for CN search\n\nv1.3.1 | 2026-07-09T01:22:35.120Z | user\n\nset Chinese display name for CN search\n\nv1.3.0 | 2026-07-07T19:40:08.772Z | auto\n\n- Updated version to 1.3.0.\n- Documentation improvements in SKILL.md and SKILL-cn.md; content and usage instructions clarified.\n- No functional or command changes—reference and metadata information cleaned up.\n\nv1.2.1 | 2026-07-07T18:29:09.187Z | auto\n\n- Added bilingual (English/Chinese) description to enhance international accessibility.\n- Improved documentation in SKILL.md and SKILL-cn.md.\n- Removed skill-card.md file.\n\nv1.2.0 | 2026-06-02T09:51:20.453Z | auto\n\ndlazy-elevenlabs-search 1.2.0\n\n- Updated CLI install instructions and metadata to use the latest version of @dlazy/cli (was pinned to 1.0.9, now uses @latest).\n- Removed the skill-card.md file.\n- Minor formatting and metadata adjustments in documentation.\n\nv1.0.0 | 2026-06-02T02:05:45.023Z | auto\n\n- Added detailed documentation on authentication, usage, and error handling.\n- Clarified options and help text for the elevenlabs-search command.\n- Included explicit agent instructions for handling insufficient balance and missing API key errors.\n- Updated metadata with installation details and API endpoint information.\n- Provided example usage and expected output formats for clarity.\n\nArchive index:\n\nArchive v1.3.26: 4 files, 9055 bytes\n\nFiles: skill-card.md (2107b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.26:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.26:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.26\",\n  \"publishedAt\": 1791421571479\n}\n\nFile v1.3.26:skill-card.md\n\n## Description:\n\nSearch the ElevenLabs voice library by keyword, source, and category to find voices and playable previews for TTS selection.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nAgents and their users search available ElevenLabs voices by description, source, or category and inspect previews before choosing a voice for TTS.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Search prompts and parameters are sent to the third-party dLazy cloud service.\n\nMitigation: Avoid submitting sensitive prompts or parameters; review the service terms before use.\n\nRisk: Authentication may save a dLazy API key locally, and using the skill can install a third-party npm package.\n\nMitigation: Review the pinned CLI package before installation and protect or rotate the locally stored API key.\n\nRisk: The documented output example appears inconsistent with voice-search results.\n\nMitigation: Check actual CLI output before relying on documented fields or preview links.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy CLI source linked in skill metadata](https://github.com/dlazy-ai/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands, Text]\n\n**Output Format:** [Markdown with shell commands and voice-search results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Voice matches may include playable preview links; the documented example response shape may be inaccurate.]\n\n## Skill Version(s):\n\n1.3.26 (source: server-resolved ClawHub release; artifact frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.26:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.25: 4 files, 9168 bytes\n\nFiles: skill-card.md (2293b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.25:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.25:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.25\",\n  \"publishedAt\": 1791075990173\n}\n\nFile v1.3.25:skill-card.md\n\n## Description:\n\nSearch the ElevenLabs voice library by keyword, source, and category to find voices and preview samples for TTS selection.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nCreators and developers search available voices by keyword, source, or category and preview matches before choosing a voice for TTS.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Using the third-party CLI requires trust in its package and dLazy account model.\n\nMitigation: Review the pinned @dlazy/cli package and service terms before installing or authenticating.\n\nRisk: Search queries and parameters are sent to the dLazy service, and API keys may be stored locally.\n\nMitigation: Avoid sensitive queries; use the per-invocation DLAZY_API_KEY option when local key persistence is unsuitable.\n\nRisk: The documentation includes image and media examples that may be inaccurate; supplying local file paths could upload files.\n\nMitigation: Confirm CLI behavior and do not supply local file paths unless the upload is intended.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI source (listed in skill metadata; not verified release provenance)](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Shell commands, Guidance]\n\n**Output Format:** [CLI JSON responses with voice search results and preview references; Markdown usage guidance]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Voice results may include playable previews; the documentation's sample JSON instead depicts an image, so confirm actual response shape. Async mode returns a task ID for later polling.]\n\n## Skill Version(s):\n\n1.3.25 (source: ClawHub release metadata; skill frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.25:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.24: 4 files, 9033 bytes\n\nFiles: skill-card.md (2009b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.24:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.24:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.24\",\n  \"publishedAt\": 1790916631022\n}\n\nFile v1.3.24:skill-card.md\n\n## Description:\n\nSearch the ElevenLabs voice library by keyword, source, and category to help select a voice using available previews.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nCreators and developers use this skill to search for ElevenLabs voices by keyword, source, or category and review previews before choosing a voice for text-to-speech.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill installs or runs the pinned dLazy CLI and stores a dLazy API key locally.\n\nMitigation: Review the CLI before installation, and use an appropriately scoped key that can be rotated or revoked.\n\nRisk: Search prompts and parameters are sent to dLazy; the documentation also describes local-file upload and saving outputs beyond voice search.\n\nMitigation: Avoid private local files and sensitive --save paths until the publisher clarifies the behavior and confirms the voice-search output format.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI repository (listed in skill metadata)](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Guidance, Shell commands]\n\n**Output Format:** [Markdown guidance; CLI response documented as JSON]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Voice previews are claimed, but the documented response example shows an image asset rather than voice-search results.]\n\n## Skill Version(s):\n\n1.3.24 (source: ClawHub release metadata; artifact frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.24:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.23: 4 files, 9005 bytes\n\nFiles: skill-card.md (1982b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.23:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.23:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.23\",\n  \"publishedAt\": 1790730326836\n}\n\nFile v1.3.23:skill-card.md\n\n## Description:\n\nSearches the ElevenLabs voice library by keyword, source, and category to help users choose voices using playable previews.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nCreators and developers search for suitable ElevenLabs voices and listen to previews before using a voice for text-to-speech.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The external dLazy CLI and hosted service receive search prompts and parameters.\n\nMitigation: Review the CLI before installation and avoid sending sensitive prompts or parameters.\n\nRisk: Using local media paths can upload files, while --save can download results to disk.\n\nMitigation: Pass media paths or use --save only when the transfer is intended.\n\nRisk: The documentation includes generic generation and image-output examples that may not reflect voice-search results.\n\nMitigation: Check actual results and preview links before relying on or sharing them.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI repository](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Shell commands, Guidance]\n\n**Output Format:** [Markdown with voice-search summaries and optional preview links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Voice results and preview availability depend on the external service.]\n\n## Skill Version(s):\n\n1.3.23 (source: server-resolved ClawHub release)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.23:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.22: 4 files, 9079 bytes\n\nFiles: skill-card.md (2168b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.22:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.22:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.22\",\n  \"publishedAt\": 1790561114725\n}\n\nFile v1.3.22:skill-card.md\n\n## Description:\n\nSearches the ElevenLabs voice library by keyword, source, and category to help select voices and preview them before TTS.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nCreators and developers use this skill to search ElevenLabs voices by keyword, source, or category and choose a voice for TTS using preview results.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The documented output and options include generic media and asynchronous behavior that may not match voice search.\n\nMitigation: Confirm the command returns voice metadata and audio previews before relying on its results.\n\nRisk: The CLI sends prompts to a hosted service and documentation describes uploading local media paths.\n\nMitigation: Avoid confidential prompts and sensitive local file paths; review the skill before installing or invoking it.\n\nRisk: A persistent global CLI installation may be undesirable.\n\nMitigation: Use the documented pinned npx invocation if you prefer not to retain a global CLI.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI source (skill metadata; not verified release provenance)](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands]\n\n**Output Format:** [Markdown with inline shell commands]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Search guidance covers keywords, voice source, category, and preview selection; actual voice metadata and preview availability require confirmation.]\n\n## Skill Version(s):\n\n1.3.22 (source: ClawHub release metadata; artifact frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.22:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.21: 4 files, 9098 bytes\n\nFiles: skill-card.md (2147b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.21:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.21:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.21\",\n  \"publishedAt\": 1790557553598\n}\n\nFile v1.3.21:skill-card.md\n\n## Description:\n\nHelps agents search the ElevenLabs voice library by keyword, source, and category and inspect voice previews through the dLazy CLI.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and other voice-content creators can find and compare ElevenLabs voices by keyword, source, and category before selecting a voice for text-to-speech work.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The third-party cloud CLI uses a dLazy API key and sends request data to dLazy.\n\nMitigation: Review the CLI before installation, use a revocable or per-invocation key when appropriate, and avoid sharing sensitive request data.\n\nRisk: Local media paths supplied to the CLI may be uploaded to dLazy storage.\n\nMitigation: Pass local file paths only when you intend to upload those files.\n\nRisk: The documented image and generation example does not match the voice-search purpose, so the output contract is uncertain.\n\nMitigation: Verify the pinned CLI's actual behavior and returned voice results before relying on previews or using them downstream.\n\n## Reference(s):\n\n- [dLazy CLI repository (listed in skill metadata)](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Guidance, Shell commands]\n\n**Output Format:** [Markdown with voice search results, preview links, and optional CLI commands]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [The bundled example depicts an image response rather than voice previews; confirm the actual returned voice data before use.]\n\n## Skill Version(s):\n\n1.3.21 (source: ClawHub release; bundled skill frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.21:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.20: 4 files, 9124 bytes\n\nFiles: skill-card.md (2234b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.20:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.20:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.20\",\n  \"publishedAt\": 1790213857505\n}\n\nFile v1.3.20:skill-card.md\n\n## Description:\n\nSearches the ElevenLabs voice library by keyword, source, and category, returning playable previews so users can choose voices before TTS.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and developers use this skill to search ElevenLabs voices by keyword, source, and category before selecting a voice for text-to-speech work.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill relies on the broader dLazy CLI, which can store API keys, upload local media paths, download assets, and run async tasks.\n\nMitigation: Use npx @dlazy/cli@1.2.3 or DLAZY_API_KEY for less persistence, review the CLI source or package before global install, and pass only files intended for upload.\n\nRisk: Prompts, parameters, and selected local media paths are sent to dLazy services.\n\nMitigation: Avoid sensitive prompts and local file paths unless disclosure to the service is intended.\n\nRisk: A locally saved dLazy API key may persist in user configuration.\n\nMitigation: Use per-invocation DLAZY_API_KEY when persistence is not desired, and rotate or revoke keys from the dLazy dashboard when needed.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [Publisher profile](https://clawhub.ai/user/dlazyai)\n- [dLazy CLI source](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with bash commands and JSON command output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Returns voice-search results with preview URLs; async mode may return a task identifier for polling.]\n\n## Skill Version(s):\n\n1.3.20 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.20:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.19: 4 files, 9287 bytes\n\nFiles: skill-card.md (2631b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.19:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                          |\r\n| 503  | API request failed (no balance)    | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API request failed (server error)  | `HTTP status code error (500 server crash)`                                                                             |\r\n| 504  | Asynchronous task execution failed | `=== Generation Failed ===` / `{Specific error reason returned by backend, for example \"Prompt violates safety policy\"}` |\r\n\r\n> **AGENT CRITICAL INSTRUCTION**: \r\n> 1. If the execution result returns `code: \"insufficient_balance\"`, you MUST explicitly inform the user that their credits are insufficient and guide them to recharge: [https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. If the execution result returns `code: \"unauthorized\"` or indicates missing API key, you MUST inform the user to get their API key from [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) and save it using `dlazy auth set <key>` and resume the task.\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nFile v1.3.19:_meta.json\n\n{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.19\",\n  \"publishedAt\": 1790212335024\n}\n\nFile v1.3.19:skill-card.md\n\n## Description:\n\nSearch the ElevenLabs voice library by keyword, source, and category, returning playable previews so an agent can help choose a voice before text-to-speech generation.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, content creators, and agents use this skill to search the ElevenLabs voice library by keyword, voice source, and category, then inspect playable previews before choosing a voice for TTS work.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The security scan labels the release suspicious because the voice-search skill is mixed with broader generation, upload, download, async, and image-output behavior.\n\nMitigation: Review the dLazy CLI and the `dlazy elevenlabs-search -h` help output before installing or running the skill.\n\nRisk: Authentication can persist a dLazy API key in the local CLI configuration.\n\nMitigation: Use `npx @dlazy/cli@1.2.3` or the `DLAZY_API_KEY` environment variable for per-invocation use when local persistence is not desired, and rotate or revoke keys from the dLazy dashboard when needed.\n\nRisk: Local file paths passed to media fields may be uploaded to `files.dlazy.com`.\n\nMitigation: Avoid passing local file paths unless uploading those files to the hosted service is intended.\n\nRisk: The artifact's sample output schema describes image output even though the workflow is for voice search.\n\nMitigation: Inspect the actual command output for the current request and do not rely on the documented image sample as the voice-search result contract.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI source](https://github.com/dlazy-ai/cli)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n\n## Skill Output:\n\n**Output Type(s):** [shell commands, JSON, guidance]\n\n**Output Format:** [Command-line guidance and JSON command output containing voice-search results and preview URLs.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires a dLazy API key and npm or npx; the documented CLI install pins @dlazy/cli to version 1.2.3.]\n\n## Skill Version(s):\n\n1.3.19 (source: server release evidence; artifact frontmatter lists 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.3.19:SKILL-cn.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IVC); generated=AI 生成; professional=专业 (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              返回数量 [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## 输出格式\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## 命令示例\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt '提示词内容'\r\n```\r\n\r\n## 错误处理\r\n\r\n| Code | 错误类型                         | 示例信息                                                                                                                 |\r\n| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |\r\n| 502  | 本地文件读取失败                 | `Error: Image file/Video file not found: C:\\path\\to\\your\\file`                                                           |\r\n| 503  | API 请求失败（余额不足）         | `ok: false, code: \"insufficient_balance\"` |\r\n| 503  | API 请求失败（服务端错误）       | `HTTP status code error (500 server crash)`                                                                              |\r\n| 504  | 异步任务执行失败                 | `=== Generation Failed ===` / `{后端返回的具体失败原因，比如 \"Prompt violates safety policy\"}`                             |\r\n\r\n> **智能体关键指令**: \r\n> 1. 如果执行结果返回 `code: \"insufficient_balance\"` 且提示余额不足（Insufficient balance），您必须明确告知用户当前积分不足，并引导用户点击以下链接前往充值：[https://dlazy.com/dashboard/organization/settings?tab=credits](https://dlazy.com/dashboard/organization/settings?tab=credits)\r\n> 2. 如果执行结果返回 `code: \"unauthorized\"` 或提示缺少 API Key，您必须明确告知用户前往 [https://dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key) 获取 API Key 并使用 `dlazy auth set <key>` 保存，然后继续执行任务。\r\n\r\n## Tips\r\n\r\nVisit https://dlazy.com for more information.\n\nArchive v1.3.18: 4 files, 9404 bytes\n\nFiles: skill-card.md (2771b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)\n\nFile v1.3.18:SKILL.md\n\n---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint (`api.dlazy.com`) for inference.\r\n- Any local file paths you pass to image / video / audio fields are uploaded to dLazy's media storage (`files.dlazy.com`) so the model can read them — the same flow as any cloud-based generation API.\r\n- Generated output URLs returned by the API are hosted on `files.dlazy.com`.\r\n\r\nThis is the standard SaaS pattern; the skill itself does not access network or filesystem resources beyond what the dLazy CLI already handles. See [dlazy.com](https://dlazy.com) for the full service terms.\r\n\r\n## Usage\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\nExecute `dlazy elevenlabs-search` to get the result.\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    Sent verbatim to ElevenLabs as a substring search over each voice's name/labels — it is NOT split into OR'd keywords, so every extra word NARROWS the result and a full sentence usually matches nothing. Give ONE English descriptor (two at most). Good: deep, young, old, raspy, narrative, male, child. Bad: 'stern angry mature male boss scolding in mandarin'. Pick source/style with voice_type / category, not with more words here. [default: ]\r\n  --voice_type [voice_type]            Voice source（any=Any; personal=My Voices; community=Community Library; default=Default; workspace=Workspace; non-default=Non-default; non-community=Personal + Workspace; saved=Saved） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                Category（any=Any; premade=Premade; cloned=Instant (IVC); generated=AI Generated; professional=Professional (PVC)） [default: any] (choices: \"any\", \"premade\", \"cloned\", \"generated\", \"professional\")\r\n  --page_size [page_size]              Result count [default: 10]\r\n  --dry-run                            Print payload + cost estimate without calling API\r\n  --no-wait                            Return generateId immediately for async tasks\r\n  --timeout <seconds>                  Max seconds to wait for async completion (default: \"1800\")\r\n  --save <path>                        Download the result asset to this local path (mkdir + retry handled for you)\r\n  -h, --help                           display help for command\r\n```\r\n\r\n> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.\r\n\r\n## Output Format\r\n\r\n```json\r\n{\r\n  \"ok\": true,\r\n  \"result\": {\r\n    \"tool\": \"elevenlabs-search\",\r\n    \"modelId\": \"elevenlabs-search\",\r\n    \"outputs\": [\r\n      {\r\n        \"type\": \"image\",\r\n        \"id\": \"o_xxxxxxxx\",\r\n        \"url\": \"https://files.dlazy.com/result.png\",\r\n        \"mimeType\": \"image/png\"\r\n      }\r\n    ]\r\n  }\r\n}\r\n```\r\n\r\n> Async tasks (when `--no-wait` is passed) return `outputs: []` and a `task: { generateId, status }` field instead. Use `dlazy status <generateId> --wait` to poll.\r\n\r\n## Examples\r\n\r\n```bash\r\ndlazy elevenlabs-search --prompt 'prompt content'\r\n```\r\n\r\n## Error Handling\r\n\r\n| Code | Error Type                         | Example Message                                                                                                          |\r\n| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |\r\n| 401  | Unauthorized (No API Key)          | `ok: false, code: \"unauthorized\", message: \"API key is missing or invalid\"`                                                              |\r\n| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |\r\n| 502  | Local file read error              | `Error: Image file/Vide\n\nArchive v1.3.17: 4 files, 9178 bytes\n\nFiles: skill-card.md (2321b), SKILL-cn.md (8056b), SKILL.md (8228b), _meta.json (143b)","readmeExcerpt":"Skill: 音色库搜索 ElevenLabs Voice Search Owner: dlazyai Summary: Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。 Tags: latest:1.3.26 Version history: v1.3.26 | 2026-10-08T01:06:11.479Z | user 例行版本更新 2026-10-08 v1.3.25 | 2026-10-04T01:06:30","codeSnippets":[],"executableExamples":[],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"Search the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS. 搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"When invoking this skill, use dlazy elevenlabs-search -h for help.\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\nSearch the ElevenLabs voice library by keyword, source, and category. Returns a playable preview for each matched voice so you can pick the right one before running TTS.\r\n\r\n## Trigger Keywords\r\n\r\n- elevenlabs-search\r\n\r\n## Authentication\r\n\r\nAll requests require a dLazy API key. The recommended way to authenticate is:\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\nThis runs a device-code flow (also works in remote shells) and **automatically saves your API key** to the local CLI config — no manual copy/paste required.\r\n\r\n### Alternative: Set the Key Manually\r\n\r\nIf you already have an API key, you can save it directly:\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nThe CLI saves the key in your user config directory (`~/.dlazy/config.json` on macOS/Linux, `%USERPROFILE%\\.dlazy\\config.json` on Windows), with file permissions restricted to your OS user account. You can also supply the key per-invocation via the `DLAZY_API_KEY` environment variable.\r\n\r\n### Getting Your API Key Manually\r\n\r\n1. Sign in or create an account at [dlazy.com](https://dlazy.com)\r\n2. Go to [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. Copy the key shown in the API Key section\r\n\r\nEach key is scoped to your dLazy organization and can be **rotated or revoked at any time** from the same dashboard.\r\n\r\n## About & Provenance\r\n\r\n- **CLI source code**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **Maintainer**: dlazyai\r\n- **npm package**: `@dlazy/cli` (pinned to `1.2.3` in this skill's install spec)\r\n- **Homepage**: [dlazy.com](https://dlazy.com)\r\n\r\nYou can install on demand without persisting a global binary by running:\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\nOr, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing.\r\n\r\n## How It Works\r\n\r\nThis skill is a thin client over the dLazy hosted API. When you invoke it:\r\n\r\n- Prompts and parameters you provide are sent to the dLazy API endpoint "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7c5wgeajfcfvdfb5ceemvdb984cjpd\",\n  \"slug\": \"dlazy-elevenlabs-search\",\n  \"version\": \"1.3.26\",\n  \"publishedAt\": 1791421571479\n}"},{"path":"skill-card.md","content":"## Description:\n\nSearch the ElevenLabs voice library by keyword, source, and category to find voices and playable previews for TTS selection.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[dlazyai](https://clawhub.ai/user/dlazyai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nAgents and their users search available ElevenLabs voices by description, source, or category and inspect previews before choosing a voice for TTS.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Search prompts and parameters are sent to the third-party dLazy cloud service.\n\nMitigation: Avoid submitting sensitive prompts or parameters; review the service terms before use.\n\nRisk: Authentication may save a dLazy API key locally, and using the skill can install a third-party npm package.\n\nMitigation: Review the pinned CLI package before installation and protect or rotate the locally stored API key.\n\nRisk: The documented output example appears inconsistent with voice-search results.\n\nMitigation: Check actual CLI output before relying on documented fields or preview links.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/dlazyai/skills/dlazy-elevenlabs-search)\n- [dLazy CLI npm package](https://www.npmjs.com/package/@dlazy/cli)\n- [dLazy CLI source linked in skill metadata](https://github.com/dlazy-ai/cli)\n- [dLazy service](https://dlazy.com)\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands, Text]\n\n**Output Format:** [Markdown with shell commands and voice-search results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Voice matches may include playable preview links; the documented example response shape may be inaccurate.]\n\n## Skill Version(s):\n\n1.3.26 (source: server-resolved ClawHub release; artifact frontmatter says 1.3.4)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."},{"path":"SKILL-cn.md","content":"---\r\nname: dlazy-elevenlabs-search\r\nversion: 1.3.4\r\ndescription: \"搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\"\r\nmetadata: {\"clawdbot\":{\"emoji\":\"🤖\",\"requires\":{\"bins\":[\"npm\",\"npx\"]},\"install\":\"npm install -g @dlazy/cli@1.2.3\",\"installAlternative\":\"npx @dlazy/cli@1.2.3\",\"homepage\":\"https://github.com/dlazy-ai/cli\",\"source\":\"https://github.com/dlazy-ai/cli\",\"author\":\"dlazyai\",\"license\":\"see-repo\",\"npm\":\"https://www.npmjs.com/package/@dlazy/cli\",\"configLocation\":\"~/.dlazy/config.json\",\"apiEndpoints\":[\"api.dlazy.com\",\"files.dlazy.com\"]},\"openclaw\":{\"systemPrompt\":\"当调用此技能时，可以使用 dlazy elevenlabs-search -h 查看帮助信息。\"}}\r\n---\r\n\r\n# 音色库搜索 ElevenLabs Voice Search\r\n\r\n[English](./SKILL.md) · [中文](./SKILL-cn.md)\r\n\r\n\r\n搜索 ElevenLabs 人声库：按关键词、来源、分类筛选可用音色，返回每个音色的试听样本，便于挑选后用于 TTS 配音。\r\n\r\n## 触发关键词\r\n\r\n- elevenlabs-search\r\n\r\n## 身份验证 (Authentication)\r\n\r\n所有请求都需要 dLazy API key。**推荐使用** `dlazy login` 完成登录：\r\n\r\n```bash\r\ndlazy login\r\n```\r\n\r\n该命令使用设备码流程（远程终端也可用），登录成功后 **自动把 API key 写入本地 CLI 配置**，无需手动复制粘贴。\r\n\r\n### 备选：手动设置 API Key\r\n\r\n如果你已有 API key，也可以直接保存：\r\n\r\n```bash\r\ndlazy auth set YOUR_API_KEY\r\n```\r\n\r\nCLI 会把 key 保存在你的用户配置目录（macOS/Linux 上为 `~/.dlazy/config.json`，Windows 上为 `%USERPROFILE%\\.dlazy\\config.json`），文件权限仅限当前操作系统用户访问。你也可以用 `DLAZY_API_KEY` 环境变量按次传入。\r\n\r\n### 手动获取 API Key\r\n\r\n1. 登录或在 [dlazy.com](https://dlazy.com) 创建账号\r\n2. 访问 [dlazy.com/dashboard/organization/api-key](https://dlazy.com/dashboard/organization/api-key)\r\n3. 复制 API Key 区域显示的密钥\r\n\r\n每个 key 都属于你自己的 dLazy 组织，可在同一控制面板**随时轮换或吊销**。\r\n\r\n## 关于与来源 (Provenance)\r\n\r\n- **CLI 源代码**: [github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli)\r\n- **维护者**: dlazyai\r\n- **npm 包名**: `@dlazy/cli`（本技能 install 字段固定到 `1.2.3` 版本）\r\n- **官网**: [dlazy.com](https://dlazy.com)\r\n\r\n如果你不希望在系统上长期保留一个全局 CLI，可以按需运行：\r\n\r\n```bash\r\nnpx @dlazy/cli@1.2.3 <command>\r\n```\r\n\r\n如选择全局安装，技能的 `metadata.clawdbot.install` 字段已固定到 `npm install -g @dlazy/cli@1.2.3`。安装前建议先到 GitHub 仓库审阅源码。\r\n\r\n## 工作原理\r\n\r\n此技能是 dLazy 托管 API 的轻量封装。调用时：\r\n\r\n- 你提供的提示词与参数会发送到 dLazy API（`api.dlazy.com`）进行推理。\r\n- 传入图像 / 视频 / 音频字段的本地文件路径会被 CLI 上传到 dLazy 媒体存储（`files.dlazy.com`），以便模型读取 —— 与任何云端生成 API 的流程一致。\r\n- API 返回的生成结果 URL 由 `files.dlazy.com` 托管。\r\n\r\n这是标准的 SaaS 调用模式；技能本身不会越权访问网络或文件系统，所有动作都由 dLazy CLI 完成。完整服务条款请参见 [dlazy.com](https://dlazy.com)。\r\n\r\n## 使用方法\r\n\r\n**CRITICAL INSTRUCTION FOR AGENT**:\r\n执行 `dlazy elevenlabs-search` 命令获取结果。\r\n\r\n```bash\r\ndlazy elevenlabs-search -h\r\n\r\nOptions:\r\n  --prompt [prompt]                    本字段会原样作为子串检索传给 ElevenLabs（匹配每个 voice 的名称/标签），不会被拆成「或」关系的关键词——每多一个词都会收窄结果，整句通常一个都搜不到。只给一个英文描述词（最多两个）。可用：deep、young、old、raspy、narrative、male、child；避免「凶老板用普通话训斥」这类整句。来源与风格用 voice_type / category 控制，而不是在这里堆词。 [default: ]\r\n  --voice_type [voice_type]            音色来源（any=全部; personal=我的音色; community=社区库; default=官方预制; workspace=工作区; non-default=排除官方; non-community=我的+工作区; saved=已收藏） [default: any] (choices: \"any\", \"personal\", \"community\", \"default\", \"workspace\", \"non-default\", \"non-community\", \"saved\")\r\n  --category [category]                分类（any=全部; premade=官方预制; cloned=即时 (IV"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1317,"uniquenessScore":41,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T11:01:10.166Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:55:10.094Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}