Skip to content

feat: add MCP timeline MP4 rendering - #13

Merged
erickkkyt merged 3 commits into
mainfrom
codex/mcp-timeline-render-export
Sep 4, 2026
Merged

feat: add MCP timeline MP4 rendering#13
erickkkyt merged 3 commits into
mainfrom
codex/mcp-timeline-render-export

Conversation

@erickkkyt

@erickkkyt erickkkyt commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add bdesign_editor_render as the 27th BeatDesign MCP tool for authoritative Timeline-to-MP4 rendering
  • render visible clips, image overlays, burned-in captions, and mixed audio into a project-owned Asset
  • invalidate stale current-render pointers after render-affecting UI or MCP edits
  • synchronize existing Canvas Timeline cards with the authoritative Editor render state
  • route legacy UI Timeline replacement through the shared Command Kernel
  • update English, Chinese, and Japanese docs plus Codex, Claude Code, and WorkBuddy Agent Skills

Test coverage

  • regression coverage for stale render invalidation after incremental MCP edits
  • regression coverage for UI full-document replacement invalidation
  • regression coverage for preserving a newly recorded render
  • regression coverage for coupled Canvas render ID/URL clearing
  • contract coverage ensuring the legacy Timeline route uses the Command Kernel
  • MCP catalog coverage updated to exactly 27 registered tools

Real MCP verification

Using the existing BeatDesign promotion-video project:

  1. changed a caption through bdesign_editor_edit
  2. confirmed both Editor and Canvas cleared the previous current render
  3. restored the caption through MCP
  4. exported through bdesign_editor_render
  5. confirmed Editor and Canvas both pointed to the same new 15-second project MP4 Asset

The generated file was verified as 1080x1920 H.264 with AAC stereo audio.

Pre-landing review

Two issues were found and fixed before commit:

  • separated missing ffmpeg/ffprobe startup errors from unrelated Asset persistence failures
  • synchronized stale documentation and Agent instructions with the new MCP capability

No remaining blocking findings.

Security

  • repository pre-commit security scanner: clean
  • no shell interpolation is used for media-process arguments
  • render inputs resolve only through validated project-owned local Asset paths
  • pnpm audit --prod --audit-level high: no known vulnerabilities

Verification

  • pnpm typecheck
  • pnpm test
  • pnpm i18n:check
  • pnpm build
  • git diff --check
  • staged security scan for both commits
  • real stdio MCP edit/invalidate/render synchronization flow

GitHub CI status is intentionally left to the PR checks after creation.

Current boundary

Browser-native MP4 export still requires no system FFmpeg. MCP/Node rendering requires ffmpeg and ffprobe on PATH, or explicit BEATDESIGN_FFMPEG and BEATDESIGN_FFPROBE paths.

Plan completion

No separate plan file was used; the implementation follows the repository product, architecture, provider, design, and release-scope documents.

TODOs

No repository TODO items were modified.

Documentation

  • README.md, README.zh-CN.md, and README.ja.md: updated the public MCP catalog to 27 tools and added authoritative Timeline MP4 rendering.
  • docs/MCP.md: documented the render workflow, revision behavior, output Asset, and local ffmpeg/ffprobe requirements.
  • docs/PRODUCT_PLAN_AND_STATUS.md: aligned shipped capability and remaining headless-worker boundaries.
  • AGENTS.md and third_party/README.md: clarified that browser export remains FFmpeg-free while optional MCP rendering uses user-provided binaries.
  • Codex, Claude Code, and WorkBuddy integration Skills: added the MCP export workflow and its authorization/error-handling rules.
  • CHANGELOG.md: recorded MCP rendering and stale-render synchronization under Unreleased.

Render authoritative Editor timelines through MCP, invalidate stale render pointers after edits, and keep existing Canvas timeline cards synchronized through the shared Command Kernel.
Align the English, Chinese, and Japanese product documentation plus Agent integration skills with the 27-tool MCP catalog and the new authoritative MP4 export workflow.
Keep project guidance and third-party notices explicit that browser export stays FFmpeg-free while optional MCP rendering uses user-provided ffmpeg and ffprobe.
@erickkkyt
erickkkyt merged commit a4fec8a into main Sep 4, 2026
1 check passed
@erickkkyt
erickkkyt deleted the codex/mcp-timeline-render-export branch September 4, 2026 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant