Podcast Generator
huangserva/servasyy_skills
生成自然真实的双人访谈播客,使用共享TTS模块支持3种引擎(Edge TTS / IndexTTS2 / MiniMax)和情感控制
使用千问 Audio 3.0 TTS Plus、MiniMax Speech 2.8 HD 和 Fish Audio S2.1 Pro 生成或克隆电影角色旁白,包括直接复用用户选定的 Fish 公共音色编号并保存原生时间戳;供应商没有原生时间戳时,使用火山引擎语音识别恢复中文字幕或字级时间戳。制作中英文第一人称电影旁白、三模型克隆试音、供应商对比、整篇配音、字幕定时或音文对齐时使用。
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-tts --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/movie-voice-tts .claude/skills/movie-voice-tts && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .claude/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-ttsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-tts --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.codex/skills/movie-voice-tts .agents/skills/movie-voice-tts && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .agents/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-tts --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.codex/skills/movie-voice-tts .cursor/skills/movie-voice-tts && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .cursor/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/straighttttt/movie-commentary-workflow.git --path .codex/skills/movie-voice-tts--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-tts --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.codex/skills/movie-voice-tts .gemini/skills/movie-voice-tts && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .gemini/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-ttsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .github/skills && cp -r skills-src/.codex/skills/movie-voice-tts .github/skills/movie-voice-tts && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .github/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install straighttttt/movie-commentary-workflow movie-voice-tts --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/straighttttt/movie-commentary-workflow.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.codex/skills/movie-voice-tts .opencode/skills/movie-voice-tts && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "movie-voice-tts" agent skill from https://github.com/straighttttt/movie-commentary-workflow/tree/main/.codex/skills/movie-voice-tts into .opencode/skills/movie-voice-tts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "movie-voice-tts", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
movie-voice-tts使用千问 Audio 3.0 TTS Plus、MiniMax Speech 2.8 HD 和 Fish Audio S2.1 Pro 生成或克隆电影角色旁白,包括直接复用用户选定的 Fish 公共音色编号并保存原生时间戳;供应商没有原生时间戳时,使用火山引擎语音识别恢复中文字幕或字级时间戳。制作中英文第一人称电影旁白、三模型克隆试音、供应商对比、整篇配音、字幕定时或音文对齐时使用。
Movie Voice Tts is an agent skill from straighttttt/movie-commentary-workflow. 使用千问 Audio 3.0 TTS Plus、MiniMax Speech 2.8 HD 和 Fish Audio S2.1 Pro 生成或克隆电影角色旁白,包括直接复用用户选定的 Fish 公共音色编号并保存原生时间戳;供应商没有原生时间戳时,使用火山引擎语音识别恢复中文字幕或字级时间戳。制作中英文第一人称电影旁白、三模型克隆试音、供应商对比、整篇配音、字幕定时或音文对齐时使用。
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts and reference files (for example `agents/openai.yaml`, `references/providers.md` and `references/volc-asr.md`).
It sits in Media & Creative, covering Text to speech and voice. It works with MiniMax. The repository describes itself as: Auditable Codex skills and data contracts for first-person movie commentary production. The licence is Apache-2.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3d50c17. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
uvFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
fish.audioFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Movie Voice Tts loads about 1.1k tokens when it runs, and up to ~2.6k if it reads all its reference files. Until then it costs about 52 tokens; SKILL.md has 171 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
先把仓库根目录的 `.env.example` 复制为本地 `.env` 并填写真实值,或者直接设置进程环境变量。然后从仓库根目录运行:- 优先使用进程环境;也可以使用仓库根目录或本技能目录中被 Git 忽略的 `.env`。- 使用项目 `.gitignore` 排除 `.env`。Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from straighttttt/movie-commentary-workflow at commit 3d50c17, republished under its Apache-2.0 licence (© straighttttt). 171 words, ~1,115 tokens.
.claude/skills/movie-voice-tts/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.统一使用本技能附带的程序,保证供应商选择、密钥、元数据、时间戳和输出处理方式一致。
AGENTS.md 和影片的 production/state.json。POV_BRIEF.md 确定后,可以制作短试音。SCRIPT_LOCKED,并核对文稿指纹。VOICE_LOCKED。qwen-audio-3.0-tts-plus。s2.1-pro-free。speech-2.8-hd。voice/auditions/。AUDITION_REPORT.md,记录供应商、模型、音色新建或复用、时长、格式、身份稳定度、中文口音、情绪适配、瑕疵和输出路径。VOICE_LOCKED。先把仓库根目录的 .env.example 复制为本地 .env 并填写真实值,或者直接设置进程环境变量。然后从仓库根目录运行:
uv run --with requests --with fish-audio-sdk==1.3.0 \
.codex/skills/movie-voice-tts/scripts/movie_voice_tts.py check千问中文克隆:
uv run --with requests --with fish-audio-sdk==1.3.0 \
.codex/skills/movie-voice-tts/scripts/movie_voice_tts.py qwen \
--reference "/absolute/path/reference.wav" \
--reference-language en \
--language zh \
--text-file "/absolute/path/narration.txt" \
--output "/absolute/path/qwen.wav"MiniMax 克隆:
uv run --with requests --with fish-audio-sdk==1.3.0 \
.codex/skills/movie-voice-tts/scripts/movie_voice_tts.py minimax \
--reference "/absolute/path/reference.wav" \
--reference-language en \
--language zh \
--text-file "/absolute/path/narration.txt" \
--output "/absolute/path/minimax.mp3"Fish 同语言或跨语言克隆:
uv run --with requests --with fish-audio-sdk==1.3.0 \
.codex/skills/movie-voice-tts/scripts/movie_voice_tts.py fish \
--reference "/absolute/path/reference.wav" \
--reference-text-file "/absolute/path/reference-transcript.txt" \
--language en \
--text-file "/absolute/path/narration.txt" \
--output "/absolute/path/fish.mp3"Fish 公共音色整篇生成并保存原生时间戳:
uv run --with requests --with fish-audio-sdk==1.3.0 \
.codex/skills/movie-voice-tts/scripts/movie_voice_tts.py fish \
--fish-reference-id "https://fish.audio/m/<模型编号>" \
--language zh \
--text-file "/absolute/path/NARRATION_FIRST_PERSON_DRAFT.md" \
--strip-markdown-headings \
--output "/absolute/path/narration.mp3" \
--timestamp-json "/absolute/path/narration.timestamps.json" \
--output-srt "/absolute/path/narration.srt"--fish-reference-id 可以接收 32 位模型编号,也可以直接接收 fish.audio/m/<模型编号> 链接。该路线调用 Fish 带时间戳流式接口,按事件顺序拼接音频,并只保留每个内部块的最后一份累计对齐快照,避免重复时间戳。
使用 --voice-id 复用现有千问或 MiniMax 音色。未提供时,程序会优先复用输出元数据中已有的音色编号,否则新建音色。
设置 VOICE_LOCKED 后,只使用入选供应商和音色生成完整 SCRIPT_LOCKED 文稿。保留每次请求的元数据,使局部句子能够单独重录而不改变已接受的相邻音频。全部片段接受后,先合并成唯一最终旁白,再生成正式时间戳。
千问 Audio 3.0 输出或其他没有原生时间戳的音频,使用以下后备流程:
uv run --with requests \
.codex/skills/movie-voice-tts/scripts/volc_asr.py \
--audio "/absolute/path/narration.wav" \
--language zh-CN \
--output-json "/absolute/path/narration.timestamps.json" \
--output-srt "/absolute/path/narration.srt"JSON 中的 utterances[].words[] 保存字级毫秒时间戳,SRT 使用接口返回的句子边界。修改请求参数、密钥处理或输出逻辑前,读取 references/volc-asr.md。
ffprobe 和 ffmpeg 检查时长、采样率、声道、响度、峰值和削波。SCRIPT_LOCKED 一致。NARRATION_LOCKED。.env。MOVIE_WORKFLOW_ENV_FILE 指向它。VOLCENGINE_ENV_FILE 间接加载;该文件必须只保存在本地。.gitignore 排除 .env。© straighttttt, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in .codex/skills/movie-voice-tts of straighttttt/movie-commentary-workflow.
Open the folder on GitHubat commit 3d50c17
Movie Voice Tts next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Movie Voice Tts this skillstraighttttt/movie-commentary-workflow | 135 | — | ~1.1k | Automated safety check: Notes | Apache-2.0 | |
| Podcast Generatorhuangserva/servasyy_skills | 168 | — | ~941 | Automated safety check: Pass | None | |
| Minimax Voice DirectorbozhouDev/video-skills-toolkit | 150 | — | ~667 | Automated safety check: Notes | MIT | |
| Dark Rescue H3karuvanan/MiniMax-H3-Director-Cut-Studio | 131 | — | ~6.1k | Automated safety check: Pass | Custom licence | |
| CLI Anything MinimaxHKUDS/CLI-Anything | 52k | — | ~920 | Automated safety check: Pass | Apache-2.0 | |
| Minimax Multimodal Toolkitpoco-ai/poco-claw | 1.4k | — | ~7.6k | Automated safety check: Pass | MIT |
huangserva/servasyy_skills
生成自然真实的双人访谈播客,使用共享TTS模块支持3种引擎(Edge TTS / IndexTTS2 / MiniMax)和情感控制
bozhouDev/video-skills-toolkit
用 MiniMax 云端为视频制作可审批的声音导演稿,再生成、挑选和验收人声,最后以定稿音频产生字幕。用于用户明确选择 MiniMax 配音、继续已有 MiniMax 视频配音项目,或明确请求 MiniMax Voice ID/克隆/设计。泛指本地 TTS 或 IndexTTS 不使用本 skill;音乐、BGM、歌曲使用同级 music Skill。
karuvanan/MiniMax-H3-Director-Cut-Studio
Design production-ready MiniMax H3 first-person police or firefighter rescue stories from a short place-based request, using the user's proven dark rain-soaked industrial lighting, physical-damage…
HKUDS/CLI-Anything
Command-line interface for MiniMax AI — chat (MiniMax-M3, MiniMax-M2.7) and speech-2.x TTS via the MiniMax API.
poco-ai/poco-claw
MiniMax multimodal model skill — use MiniMax Multi-Modal models for speech, music, video, and image.
CK42BB/vox-explainer-skill
End-to-end pipeline for producing Vox-style explainer videos from a single topic prompt.
straighttttt/movie-commentary-workflow
以观众体验为中心预审第一人称电影解说稿,并把锁定旁白编排成节奏自然、关键事实准确的画面与声音方案。用于文稿可实现性检查、叙事节拍设计、连续原片选镜、样片制作决策、用户反馈修改,以及锁定 visualedit.json 与 audiomixplan.json。
straighttttt/movie-commentary-workflow
独立完整复看已经渲染的电影解说成片,逐秒检查最终观众实际看到和听到的内容,定位瞬闪、秒切、跳画面、残帧、节奏突变、字幕与声音接缝,并把创意问题以精确时间码和证据交回 movie-direct。用户要求全片复检、二次审片、检查快切或跳帧、对成片提出时间码修改意见,或者在 FINALRENDERED 后决定能否进入 FINALVERIFIED 时使用。
straighttttt/movie-commentary-workflow
让同一个主脑在不同 Codex 窗口中接管并连续完成一部电影解说,从原片索引、全片理解、第一人称文稿、角色配音、分批选镜、渲染到正式复检,同时通过项目状态、导演记忆和认可样片保持创意连续性。开始新电影、接管或续做现有电影、查询当前制作阶段、处理用户反馈、制作样片或成片时使用;默认作为所有电影解说项目的唯一总入口。
straighttttt/movie-commentary-workflow
理解整部电影,并撰写可直接进入制作的第一人称电影解说稿,严格控制主角的主观信息边界、心理推进、反转揭露时机和编导审核版本。选择第一人称叙述者、建立剧情地图或主角简报、起草或整体重写文稿、修正事实与视角问题,或者在配音前锁定文稿时使用。
straighttttt/movie-commentary-workflow
将本地电影原片、字幕、技术切点、关键帧和视觉模型观察结果整理成经过验证的可搜索镜头数据库。开始新的电影解说项目、重建或检查索引、按对白或画面寻找素材、返回原片精确坐标与证据片段,或者为执笔人和编导提供共享证据时使用。
straighttttt/movie-commentary-workflow
忠实执行已锁定的电影解说样片或正式导演方案,完成截取、拼接、字幕、混音、增量渲染和技术验收。用于快速生成可供用户判断的样片,或对用户认可后的正式成片执行完整技术检查;不得替编导改变镜头和节奏。
Works with
Categories
使用千问 Audio 3.0 TTS Plus、MiniMax Speech 2.8 HD 和 Fish Audio S2.1 Pro 生成或克隆电影角色旁白,包括直接复用用户选定的 Fish 公共音色编号并保存原生时间戳;供应商没有原生时间戳时,使用火山引擎语音识别恢复中文字幕或字级时间戳。制作中英文第一人称电影旁白、三模型克隆试音、供应商对比、整篇配音、字幕定时或音文对齐时使用。. Movie Voice Tts is an agent skill from straighttttt/movie-commentary-workflow.
Movie Voice Tts fits situations like: tasks that involve Text to speech and voice.
Run `npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a claude-code`. Or copy the skill folder (.codex/skills/movie-voice-tts in straighttttt/movie-commentary-workflow) into .claude/skills/movie-voice-tts in your project. Claude Code loads it when a task matches its description.
Run `npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a codex`. Or copy the skill folder (.codex/skills/movie-voice-tts in straighttttt/movie-commentary-workflow) into .agents/skills/movie-voice-tts in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add straighttttt/movie-commentary-workflow --skill movie-voice-tts -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/movie-voice-tts, .gemini/skills/movie-voice-tts, .github/skills/movie-voice-tts and .opencode/skills/movie-voice-tts in your project.
Going by SKILL.md and its folder, Movie Voice Tts needs Python for the scripts in its folder and the command-line tools its instructions call (uv). Our summary lists: Python 3.
SKILL.md names 1 domain. In commands or code: fish.audio; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Movie Voice Tts is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Movie Voice Tts: Podcast Generator (huangserva/servasyy_skills, 168 stars), Minimax Voice Director (bozhouDev/video-skills-toolkit, 150 stars), Dark Rescue H3 (karuvanan/MiniMax-H3-Director-Cut-Studio, 131 stars) and CLI Anything Minimax (HKUDS/CLI-Anything, 52k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
straighttttt (a GitHub user) maintains it in straighttttt/movie-commentary-workflow, which has 135 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on August 11, 2026.
Source: straighttttt/movie-commentary-workflow on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.