关于 canvas-capture-extension
用于构建、安装和开发 Remotion Canvas Capture Chrome 扩展的技能,并指导准备网页画面及预览,供用户录制。
主要功能
- 01构建并安装扩展包
- 02运行 WXT 开发构建
- 03在 Chrome 中重新加载扩展
- 04准备画面并检查预览
- 05由用户手动控制录制
适用场景
- 01安装持久化的正式版本
- 02开发并重新加载扩展更改
- 03准备网页以供录制
MCP 相关
激活扩展后,当前标签页会提供 `setup_shot`、`get_shot` 和 `save_recording` WebMCP 工具。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ remotion-dev/ remotion --skill canvas-capture-extension安装后在 Claude Code 中输入/canvas-capture-extension确认已加载。
附带文件scripts/rebuild-extension.shagents/openai.yaml
详细介绍
Canvas Capture 扩展
从 packages/canvas-capture-extension 构建扩展,但始终将解压后的副本安装在检出目录之外,以免删除工作树导致扩展无法使用。
重新构建并安装
-
找到包含
packages/canvas-capture-extension/package.json的 Remotion 检出目录。优先使用当前检出目录; 否则使用/Users/jonathanburger/remotion。 -
运行:
.agents/skills/canvas-capture-extension/scripts/rebuild-extension.sh \ --repo <remotion-checkout>该脚本使用 Bun 构建,并将完整的 WXT 构建包安装到
/Users/jonathanburger/Applications/Remotion Canvas Capture Extension。 构建无需安装浏览器。要使用扩展,请选择启用了 Canvas Draw Element 的 Chrome 157.0.8080.0 或更高版本。 -
确认安装目录中包含
manifest.json、background.js、capture.js、drag-image.js、shot-tools.js、logo.svg和生成的扩展图标。
使用 React 和 Vite 开发
- 关闭所有正在运行且使用专用 Canvas Capture 配置文件的 Recorder Chrome 实例。
- 在
packages/canvas-capture-extension中运行bun run dev。 - WXT 会将开发构建包写入持久目录
/Users/jonathanburger/Applications/Remotion Canvas Capture Extension Dev, 启动启用了 Canvas Draw Element 功能的 Chrome for Testing,并自动加载扩展。 - 点击扩展图标以显示页面内控件。源代码和清单的变更会触发 WXT 重新构建,并重新加载受影响的扩展上下文。
仅将单独的开发目录用于 bun run dev。手动加载构建时,仍使用上方的生产安装目录。
Remotion 页面通过 externally_connectable
消息传递接收录制内容;扩展不会注入接收器内容脚本。要测试本地目标地址,请在运行 bun run dev 时设置
CANVAS_CAPTURE_HANDOFF_ORIGIN(例如
http://localhost:3000)。生产构建始终使用
https://www.remotion.dev。
要选择其他 Chrome 157.0.8080.0 或更高版本的浏览器,请在运行
bun run dev 时将 CANVAS_CAPTURE_BROWSER_EXECUTABLE 设置为其可执行文件路径。开发环境使用与版本无关的
~/Library/Application Support/Remotion Canvas Capture 配置文件。
在 Chrome 中重新加载
-
使用专用的 Canvas Capture 配置文件启动 Chrome 157.0.8080.0 或更高版本,然后打开
chrome://extensions。 -
在
chrome://extensions中启用开发者模式。 -
如果 Remotion Canvas Capture 已指向持久目录,请点击 重新加载。
-
如果 Chrome 显示已删除的工作树路径,请移除该损坏的条目,选择加载已解压的扩展程序,然后选择:
/Users/jonathanburger/Applications/Remotion Canvas Capture Extension这次性移动会更改扩展 ID,因为 Chrome 会根据解压扩展的绝对路径生成其身份标识。
-
后续生产构建始终从持久安装目录加载,绝不要从工作树本地的
dist目录加载。由 WXT 管理的开发构建使用上文所述的单独持久开发目录。 -
如果实验性 HTML-in-canvas API 不可用,请启用
chrome://flags/#canvas-draw-element并重启 Chrome。或者使用--enable-features=CanvasDrawElement启动;两种方式任选其一即可。不要添加--enable-blink-features=CanvasDrawElement,这会触发 Chrome 的不支持命令行参数警告。
不要编辑 Chrome 的 Preferences 或 Secure Preferences 文件来移动或重新加载扩展。请使用 Chrome 的扩展程序页面,以保持其完整性元数据有效。允许使用浏览器 UI 自动化来加载、重新加载和启用 Canvas Capture;不应要求用户手动点击这些选项。
准备拍摄
在兼容的录制浏览器中打开所需网页,然后通过工具栏图标或扩展程序菜单启用 Canvas Capture。这样会在该标签页中开放 setup_shot、get_shot 和 save_recording WebMCP 工具。
准备页面和视口,调用 setup_shot,并使用 get_shot 检查静态预览。保持浏览器打开并准备好拍摄,以便用户录制。手动开始和停止录制,让用户控制光标移动。