claude-typer

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Claude Typer

Claude Typer

Workflow

工作流

  1. Extract the text that should be typed in the animation as
    prompt
    .
  2. Run:
    • bash
      skill_dir=""
      for base in "${AGENTS_HOME:-$HOME/.agents}" "${CLAUDE_HOME:-$HOME/.claude}" "${CODEX_HOME:-$HOME/.codex}"; do
        if [ -d "$base/skills/claude-typer" ]; then
          skill_dir="$base/skills/claude-typer"
          break
        fi
      done
      [ -n "$skill_dir" ] || { echo "claude-typer skill not found under ~/.agents, ~/.claude, or ~/.codex"; exit 1; }
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" "<prompt>"
    • Example with explicit size and scale:
      bash
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" \
        "claude-typer skill可以让智能体做出提示词打字机动效视频,快来试试吧" \
        --video-width 1080 \
        --video-height 600 \
        --claude-width 600 \
        --scale 2
    • Example matching custom runner + remotion params passthrough:
      bash
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" \
        "vibe-motion/skills:一个面向智能体的MG动画/视频技能仓库." \
        --runner-prefix "npx -y -p @remotion/cli@4.0.440 -p @remotion/tailwind-v4@4.0.440 remotion" \
        --composition Typer30fps \
        --output-file Typer30fps.mov \
        --codec prores \
        --prores-profile 4444 \
        --pixel-format yuva444p10le \
        --image-format png \
        --audio-codec aac \
        --video-width 1080 \
        --video-height 1080 \
        --claude-width 880
  3. Return the generated video path in the current working directory.
  1. 提取动画中需要输入的文本作为
    prompt
  2. 运行:
    • bash
      skill_dir=""
      for base in "${AGENTS_HOME:-$HOME/.agents}" "${CLAUDE_HOME:-$HOME/.claude}" "${CODEX_HOME:-$HOME/.codex}"; do
        if [ -d "$base/skills/claude-typer" ]; then
          skill_dir="$base/skills/claude-typer"
          break
        fi
      done
      [ -n "$skill_dir" ] || { echo "claude-typer skill not found under ~/.agents, ~/.claude, or ~/.codex"; exit 1; }
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" "<prompt>"
    • 显式指定尺寸和缩放的示例:
      bash
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" \
        "claude-typer skill可以让智能体做出提示词打字机动效视频,快来试试吧" \
        --video-width 1080 \
        --video-height 600 \
        --claude-width 600 \
        --scale 2
    • 自定义运行器+remotion参数透传示例:
      bash
      /usr/local/bin/python3 "$skill_dir/scripts/render_claude_typer.py" \
        "vibe-motion/skills:一个面向智能体的MG动画/视频技能仓库." \
        --runner-prefix "npx -y -p @remotion/cli@4.0.440 -p @remotion/tailwind-v4@4.0.440 remotion" \
        --composition Typer30fps \
        --output-file Typer30fps.mov \
        --codec prores \
        --prores-profile 4444 \
        --pixel-format yuva444p10le \
        --image-format png \
        --audio-codec aac \
        --video-width 1080 \
        --video-height 1080 \
        --claude-width 880
  3. 返回当前工作目录中生成的视频路径。

Rendering Behavior

渲染行为

  • Render remote composition
    Typer30fps
    from
    https://www.laosunwendao.com
    .
  • Use
    @remotion/cli
    (not
    remotion
    package name).
  • Prefer
    bunx @remotion/cli
    first.
  • Fall back to
    npx -y -p @remotion/cli@4.0.440 -p @remotion/tailwind-v4@4.0.440 remotion
    if
    bunx
    is unavailable.
  • Keep transparent MOV defaults:
    • --fps=30
    • --codec=prores
    • --prores-profile=4444
    • --pixel-format=yuva444p10le
    • --image-format=png
    • --scale=2
  • Keep defaults for stability:
    • --timeout=300000
    • --concurrency=1
    • Auto-detect local Chrome/Chromium and pass
      --browser-executable
      when found.
  • Keep default props from the project; replace
    prompt
    , and allow overriding
    videoWidth
    /
    videoHeight
    /
    claudeWidth
    through script args.
  • Unknown CLI args are passed through to
    remotion render
    directly (for advanced flags).
  • --runner-prefix
    lets you fully control the runner command (for pinned versions, global resolution behavior, etc.).
  • Exposed Remotion props for this skill are scalar fields only:
    prompt
    ,
    typingSpeedMs
    ,
    model
    ,
    videoWidth
    ,
    videoHeight
    ,
    claudeWidth
    ,
    tiltStartX
    ,
    tiltStartY
    ,
    tiltEndX
    ,
    tiltEndY
    ,
    tiltDurationRatio
    .
  • 渲染
    https://www.laosunwendao.com
    的远程合成素材
    Typer30fps
  • 使用
    @remotion/cli
    (而非
    remotion
    包名)。
  • 优先使用
    bunx @remotion/cli
  • 如果
    bunx
    不可用,回退到
    npx -y -p @remotion/cli@4.0.440 -p @remotion/tailwind-v4@4.0.440 remotion
  • 保留透明MOV默认配置:
    • --fps=30
    • --codec=prores
    • --prores-profile=4444
    • --pixel-format=yuva444p10le
    • --image-format=png
    • --scale=2
  • 保留稳定性默认配置:
    • --timeout=300000
    • --concurrency=1
    • 自动检测本地Chrome/Chromium,检测到后传入
      --browser-executable
      参数。
  • 保留项目的默认属性,替换
    prompt
    ,支持通过脚本参数覆盖
    videoWidth
    /
    videoHeight
    /
    claudeWidth
  • 未知的CLI参数会直接透传给
    remotion render
    (供高级标志使用)。
  • --runner-prefix
    参数允许你完全控制运行器命令(用于固定版本、全局解析行为等场景)。
  • 本技能暴露的Remotion属性仅为标量字段:
    prompt
    typingSpeedMs
    model
    videoWidth
    videoHeight
    claudeWidth
    tiltStartX
    tiltStartY
    tiltEndX
    tiltEndY
    tiltDurationRatio

Output File Naming

输出文件命名

  • Save into the current directory as
    xxx.mov
    .
  • Build
    xxx
    by condensing the prompt:
    • Remove common request wrappers like
      帮我
      ,
      ,
      做一个
      ,
      生成一个
      ,
      制作
      ,
      创建
      at the start.
    • Remove illegal filename characters.
    • Keep Chinese/English letters and digits.
    • If result is empty, use
      claude-typer
      .
  • Example:
    • Prompt:
      帮我做一个web画板
    • Output:
      web画板.mov
  • xxx.mov
    格式保存到当前目录。
  • xxx
    通过压缩提示词生成:
    • 移除开头的通用请求前缀,比如
      帮我
      做一个
      生成一个
      制作
      创建
    • 移除非法文件名字符。
    • 保留中英文字母和数字。
    • 如果处理后结果为空,使用
      claude-typer
  • 示例:
    • 提示词:
      帮我做一个web画板
    • 输出:
      web画板.mov

Notes

注意事项

  • On a clean machine,
    Node.js + npx
    is enough for this fallback path, as long as network access to npm and
    https://www.laosunwendao.com
    is available.
  • If both
    bunx
    and
    npx
    are unavailable, install one of them and retry.
  • If the output name already exists, Remotion overwrite behavior applies.
  • If you hit
    delayRender()
    timeout, keep
    --concurrency=1
    and raise
    --timeout-ms
    as needed.
  • 在全新机器上,只要可以访问npm和
    https://www.laosunwendao.com
    ,仅需
    Node.js + npx
    即可使用回退路径。
  • 如果
    bunx
    npx
    都不可用,请安装其中一个后重试。
  • 如果输出文件名已存在,将应用Remotion的覆盖逻辑。
  • 如果遇到
    delayRender()
    超时问题,请保持
    --concurrency=1
    并按需调高
    --timeout-ms
    参数。