一键导入
translate-spec
Translate all narration text in a demo-machine spec to another language, producing a localized copy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Translate all narration text in a demo-machine spec to another language, producing a localized copy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Generate a polished product demo video from a YAML spec using demo-machine. Use when the user wants to create, run, or update a demo video for their app.
Generate a complete demo-machine YAML spec by crawling a live web app. Give it a URL and description, get a ready-to-run spec.
Automatically fix a broken demo-machine spec by analyzing failure artifacts (screenshots, DOM, error logs). Use when a demo fails after a UI change.
Generate compelling AI narration for every step in a demo-machine spec. Use when a spec has no narration or needs better narration text.
AI quality review of a completed demo run. Analyzes event log, timing, and narration to flag issues and suggest improvements.
Convert an existing Playwright or Cypress E2E test file into a demo-machine YAML spec. Reuses test coverage as demo scripts.
| name | translate-spec |
| description | Translate all narration text in a demo-machine spec to another language, producing a localized copy. |
| argument-hint | <spec-file> <language> |
| allowed-tools | Read, Write, Edit, Glob, Grep, Bash(node *) |
Translate all narration and user-facing text in a demo spec to another language, creating localized versions for international audiences.
$ARGUMENTS should include:
.demo.yaml spec file (required)French, ja (Japanese), pt-BR (Brazilian Portuguese)/translate-spec examples/my-demo.yaml French/translate-spec specs/dashboard.demo.yaml es/translate-spec ./app-demo.yaml "Traditional Chinese"meta.title — The demo titlemeta.branding.tagline (if present) — Brand taglinechapters[].title — Chapter headingschapters[].narration — Chapter introductionschapters[].steps[].narration — Step narration (the voice-over text)runner.command, runner.url — Technical configchapters[].steps[].action — Action types (click, type, navigate, etc.)chapters[].steps[].selector, target — CSS selectors, ARIA role nameschapters[].steps[].text (typed input) — Text that appears in the app (e.g. form values)chapters[].steps[].url — URLs and endpointspacing, narration.provider, narration.voice — Technical configPreserve meaning over literal translation
Maintain TTS compatibility
Keep text length similar
Preserve product names
Use language conventions
«guillemets», not "quotes"Maintain narrative flow
Save the translated spec as:
examples/my-demo.{language}.demo.yamlexamples/my-demo.fr.demo.yaml, examples/my-demo.ja.demo.yamlBefore (English):
meta:
title: "Task Management Demo"
chapters:
- title: "Getting Started"
narration: "Welcome to our task app."
steps:
- action: navigate
url: "http://localhost:3000"
narration: "Let's start by opening the app."
- action: click
target:
by: role
role: button
name: "New Task"
narration: "Click the New Task button."
- action: type
target:
by: label
label: "Task name"
text: "Buy groceries"
narration: "Type the task name."
- action: click
target:
by: role
role: button
name: "Save"
narration: "Click Save to create the task."
After (Spanish):
meta:
title: "Demostración de Gestión de Tareas"
chapters:
- title: "Comenzando"
narration: "Bienvenido a nuestra aplicación de tareas."
steps:
- action: navigate
url: "http://localhost:3000"
narration: "Empecemos abriendo la aplicación."
- action: click
target:
by: role
role: button
name: "New Task"
narration: "Haga clic en el botón Nueva Tarea."
- action: type
target:
by: label
label: "Task name"
text: "Buy groceries"
narration: "Escriba el nombre de la tarea."
- action: click
target:
by: role
role: button
name: "Save"
narration: "Haga clic en Guardar para crear la tarea."
After translation:
# Validate the translated spec
node dist/cli.js validate examples/my-demo.{language}.demo.yaml
# Test narration (if TTS provider supports the language)
node dist/cli.js run examples/my-demo.{language}.demo.yaml \
--output ./output \
--narration-provider kokoro \
--narration-language {language}
en — Englishes or es-ES — Spanishfr — Frenchde — Germanit — Italianpt or pt-BR — Portugueseja — Japanesezh-CN — Simplified Chinesezh-TW — Traditional Chineseko — Koreanru — Russian: vs. English :)Arguments: $ARGUMENTS