* FIX: point Remotion skills sync at upstream's new skills/remotion-best-practices layout
The weekly sync workflow has failed every run since 2026-07-13 because
remotion-dev/skills split its single skills/remotion directory into one
skill per topic. remotion-best-practices is the router skill that embeds
every other skill as a REFERENCE.md sub-directory, so syncing just that
directory yields the complete, self-contained knowledge set with a single
SKILL.md. The workflow now fails loudly (with a directory listing) if the
upstream layout moves again, and carries the upstream skill version in
the PR title. Docs and registry updated to match.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019s6SvNiz9a8XpD8r2cQTiq
* Sync official Remotion skills (upstream v4.0.518, 7a3d0ca) — new per-topic layout
First sync from skills/remotion-best-practices. Adds maps, captions,
render, saas, studio, docs, upgrade and interactivity sub-skills; markup
guidance moves from rules/ to remotion-markup/. Upstream still teaches
@remotion/media — the toolkit deliberately stays on <OffthreadVideo>
(see CLAUDE.md Media section), which is unchanged from the prior sync.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019s6SvNiz9a8XpD8r2cQTiq
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
The detect-changes step used `git diff HEAD~1 HEAD` which only sees one
commit. Multi-commit pushes with a docker change buried more than one
back fell through to the "build all" fallback, which matrixed across all
16 docker/* dirs — including the 9 modal-* dirs that have no Dockerfile
(Modal builds images via its Python API at deploy time, not via GHA),
causing 9 build jobs to fail per fallback.
- Use github.event.before...HEAD as the diff base, with fetch-depth: 0
so the runner has the full push range.
- Filter the fallback list to only include directories with a Dockerfile.
Pass temperature and top_p kwargs through the full stack (handler.py →
qwen3_tts.py → voiceover.py) to control voice expressiveness and sampling.
Fix docker-build.yml multi-line JSON breaking $GITHUB_OUTPUT by using jq -sc.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds Qwen3-TTS as a free, self-hosted alternative to ElevenLabs for
voiceover generation via RunPod serverless. Supports 9 built-in speakers,
natural-language emotion control, and voice cloning from reference audio.
- Docker image (docker/runpod-qwen3-tts/) with RunPod handler
- CLI tool (tools/qwen3_tts.py) with --setup, --list-voices, generation
- voiceover.py: --provider qwen3 support with lazy ElevenLabs imports
- GitHub Actions workflow for automated Docker image builds
- Config, registry, docs, and generate-voiceover command updated
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
GitHub Actions workflow that checks remotion-dev/skills weekly
(Mondays 9am UTC) and opens a PR if upstream files have changed.
Also supports manual dispatch.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Tag-triggered releases (v* tags)
- Manual dispatch option with version input
- Auto-generates changelog from commits since last tag
- Reads version from toolkit-registry.json
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>