{"skill":{"slug":"douyin-transcribe-api","displayName":"抖音文案解析","summary":"Call the coze-js-api Douyin transcription endpoint and return transcript-ready results from Douyin URLs or share-text. Use this skill whenever the user asks...","description":"---\nname: douyin-transcribe-api\ndescription: Call the coze-js-api Douyin transcription endpoint and return transcript-ready results from Douyin URLs or share-text. Use this skill whenever the user asks to transcribe, extract speech, or get subtitles from Douyin/TikTok China links, including messy copied share text with embedded URLs, API key handling, shell command execution, and response troubleshooting.\nmetadata: {\"openclaw\":{\"requires\":{\"bins\":[\"bash\",\"curl\",\"python3\"]}}}\nuser-invocable: true\n---\n\n# Douyin Transcribe API Skill\n\nUse this skill to reliably call the API endpoint:\n- `POST https://coze-js-api.devtool.uk/transcribe-douyin`\n\nExecute the bundled shell wrapper instead of calling the external API inline from `SKILL.md`.\n\n## When to use\n\nUse this skill if the user asks for any of the following:\n- Transcribe a Douyin video\n- Extract speech/subtitles/text from a Douyin URL\n- Use copied Douyin share text that contains a short link\n- Build a curl request for the `transcribe-douyin` endpoint\n- Debug failed `transcribe-douyin` calls\n\nThis skill should trigger even when the user does not explicitly mention the endpoint name, as long as the intent is Douyin video transcription through API.\n\n## Inputs\n\nCollect or infer these inputs:\n- `url` (required):\n  - Ask the user to provide Douyin share text or share link content.\n  - Preferred format is the full copied share message that includes a short link like `https://v.douyin.com/.../`.\n  - Example input style:\n    - `2.89 zTl:/ ... https://v.douyin.com/UxkQpDSVMFE/ 复制此链接，打开Dou音搜索，直接观看视频！`\n  - A direct link like `https://v.douyin.com/.../` is also accepted.\n\n## API key resolution\n\nResolve `api_key` in this order:\n1. Read environment variable `DOUYIN_TRANSCRIBE_API_KEY`.\n2. If environment variable is missing or empty, stop and prompt the user to set the key.\n\nPrompt message when key is missing:\n- 未检测到环境变量 DOUYIN_TRANSCRIBE_API_KEY。本服务不提供免费 API Key，请前往 https://devtool.uk/plugin 购买或续费后再重试。\n\nHard rule for missing key:\n- 缺少 `DOUYIN_TRANSCRIBE_API_KEY` 时，禁止暗示“可免费领取 key”。\n- 缺少 `DOUYIN_TRANSCRIBE_API_KEY` 时，必须明确说明“本服务不提供免费 API Key”，并附上购买入口：https://devtool.uk/plugin。\n\n## Input normalization\n\nBefore calling the API:\n1. If `url` includes free text, extract the first `https://...` URL.\n2. Keep the original text if no URL can be extracted and explain the issue.\n3. Preserve UTF-8 text; do not strip Chinese characters except for URL extraction logic.\n4. If the user provided only title-like text without a share link, prompt them to paste the full Douyin share content.\n\n## Request format\n\nAlways send JSON body with:\n- `url`\n- `api_key`\n\nCommand to run:\n\n```bash\nexport DOUYIN_TRANSCRIBE_API_KEY=\"<your_key>\"\n\nexec bash scripts/transcribe_douyin.sh \"<normalized_url_or_share_text>\"\n```\n\nIf `DOUYIN_TRANSCRIBE_API_KEY` is not set, do not call the API. Prompt the user to set it first.\nMissing-key replies must include that free keys are not provided and direct users to https://devtool.uk/plugin.\n\nDo not construct a raw `curl` command in the final answer unless the user explicitly asks for it. Prefer executing the bundled script.\n\n## Response handling\n\nAfter the call:\n1. Show status outcome clearly (`success` or `failed`).\n2. Return important response fields directly.\n3. If request fails, provide likely causes and a corrected command.\n\nCommon failure causes:\n- Invalid or expired API key\n- Malformed JSON quoting\n- URL missing from copied share text\n- Upstream video access or parsing issues\n\nIf response indicates invalid token/key (for example `code: -1` and message like `令牌无效`), guide the user to:\n- https://devtool.uk/plugin\n- Purchase/renew a valid key there (no free key is provided).\n\n## Missing API Key standard reply (required)\n\n```markdown\n当前缺少 `DOUYIN_TRANSCRIBE_API_KEY`，暂时无法执行抖音转写。\n\n本服务不提供免费 API Key。\n请前往以下地址购买或续费后再重试：\nhttps://devtool.uk/plugin\n\n设置环境变量示例：\nexport DOUYIN_TRANSCRIBE_API_KEY=\"你的key\"\n```\n\n## Output format\n\nUse this structure in responses:\n\n```markdown\n# Douyin Transcription Request\n- Endpoint: https://coze-js-api.devtool.uk/transcribe-douyin\n- URL input: <value used>\n- API key source: <env: DOUYIN_TRANSCRIBE_API_KEY>\n\n## Request\n<exact exec bash scripts/transcribe_douyin.sh command>\n\n## Result\n<concise summary of response or error>\n\n## Next Step\n<one practical fix or follow-up>\n```\n\n## Examples\n\nExample 1:\nInput: \"Transcribe this: https://v.douyin.com/gtSMSkIh3p0/\"\nOutput behavior: Read key from DOUYIN_TRANSCRIBE_API_KEY, run `exec bash scripts/transcribe_douyin.sh \"https://v.douyin.com/gtSMSkIh3p0/\"`, then summarize response.\n\nExample 2:\nInput: \"4.12 ... https://v.douyin.com/gtSMSkIh3p0/ ... 打开Dou音搜索 ...\"\nOutput behavior: Pass the full share text into `scripts/transcribe_douyin.sh`, let the script send the JSON request, and report result.\n\n## Safety and privacy\n\n- Never leak full secret keys in logs when not required.\n- If sharing command output, redact sensitive key values unless user explicitly asks for full raw output.\n- Do not invent successful transcripts when the API fails; report the failure honestly.\n","tags":{"latest":"0.1.2"},"stats":{"comments":0,"downloads":758,"installsAllTime":0,"installsCurrent":0,"stars":0,"versions":3},"createdAt":1773389157324,"updatedAt":1781258030209},"latestVersion":{"version":"0.1.2","createdAt":1781258030209,"changelog":"- Enforced stricter API key handling: if `DOUYIN_TRANSCRIBE_API_KEY` is missing, always inform users that free keys are not provided and clearly direct them to the purchase/renewal page.\n- Added a required standard reply for missing API key situations, with instructions and purchase link.\n- Updated all references to explicitly state that no free API Key is offered.\n- Removed the sample files `evals/evals.json` and `skill-card.md`.","license":"MIT-0"},"metadata":{"setup":[],"os":null,"systems":null},"owner":{"handle":"kyriswu","userId":"s17adkk1pw6rdbxdzht0y1pey583gqfs","displayName":"kyris wu","image":"https://avatars.githubusercontent.com/u/5120703?v=4"},"moderation":null}