video-shotcraft
AI video skill for Claude Code & Codex — cinematic, editable product promos with Remotion: 124 shot recipe cards, 150 motion previews, beat sync, sound design, Motion Workbench & JianYing (CapCut CN) export.
- 评测生成时间(北京时间)
- 本报告引擎
- v3.17.3
- 当前引擎
- v3.17.3
规则版本一致,但报告只反映生成时的证据,不代表项目代码和安全状态始终不变。
进入后确认来源与额度,提交才会创建任务。
核对代码版本与送评文本摘要
仅记录实际送评的受限文本,不是完整仓库审计、安装结果或运行时安全保证。Stars、下载量和仓库元数据为采集时的独立信号,不属于此 commit 快照。
Vincentwei1021/video-shotcraft @ 43bd349a136651865ecfa6ea1cf012f6e957d304目录树:2a21e4e4595d023855f547d2ca4adbeb9699a8c2
README 来源:README.md
- README.md · 18672 字符
SHA-256: fa2bdc818346354b617fd3749d89e1ec36da8c9c8e807c94167b4b70b93d5c31 - SKILL.md · 10878 字符
SHA-256: a94f87f093d07c96ddf3245d442acece7ceb6c544035855c63e26a216a068820 - package.json · 250 字符
SHA-256: 10d5f1239f420ded5bd544034d97dd22d8172ec01afab3f3e39481d74cf4e36d - template/package.json · 476 字符
SHA-256: 4291a904d7575ec0b1fc536fd3f5e6d1841b36d49a0b39f5a4546a43a8d28a26 - workbench/package.json · 1328 字符
SHA-256: 3bdd1332e294992496795b40ccf0afbc715a5ecb59b2cfd90284559ec5d7d20c - videos/readme-workflow/package.json · 304 字符
SHA-256: 8c227c78cd7d90fc47220d47cd00eebfc1b5702abe96d6b17f8c6710491bf1ec - workbench/scripts/open.mjs · 6946 字符
SHA-256: f1baca7e4df375ee339536bba59ab7dda5013aa37a64ec8207974dd7f4492732 - template/src/workbench.ts · 9014 字符
SHA-256: 4b9ff82d61ac195acc02176594a8725e3fdccf0408a155516c70fe2e941cd90e - publish/upload_post.py · 24901 字符
SHA-256: afab12bf65c79c016aa833b1b7c5defdd9e04f521f1135df7f81507cd98afa3c - assets/scripts/capture-template.mjs · 7367 字符
SHA-256: 4842ead50dab13cb34ed0f9891fddbf38b4a7e0c127eaae50fabe59771f90910 - assets/scripts/smoke-render-demos.py · 5236 字符
SHA-256: 6ac814238b8253546bde02b2676251e73bc59191496c871e2ec5487610fc3919 - publish/test_upload_post.py · 13776 字符
SHA-256: 1031f39bae2de6fc9395ad9ebda180577a161f9dee6b8594e32b76e32b457415 - gallery/fetch-media.sh · 1155 字符
SHA-256: f80ae08be7b1bf73a4e6f9c24e614e10ce960980d7c6f30dfe25b5b44ff10df8
摘要对应送评 UTF-8 文本,可能为限额节选,不等于 Git blob SHA。来源由采集方提供,摘要本身不证明来源真实性。
综合采用结论
存在需要人工复核的风险或证据不足
- 基础评测完成+25/25确定性评分与静态安全扫描已完成
- README 有效证据+25/2511,940 个去重后的有效字符
- 独立证据来源+20/205 类非重复证据,重复文件不叠加
- 仓库元数据+10/10已取得仓库状态与采用数据
- 活跃记录+5/5已取得最近提交时间
- AI 复核+15/15已完成结构化 AI 证据复核
本报告评了什么
综合分用于静态采用筛选,不是任务成功率,也不代表使用 Skill 后的能力提升。
- 静态检查范围
- 记录 13 个文件 · 100,303 字符
- 只检查采集到的受限文本与已知风险模式;未读取的脚本、依赖和运行环境不在结论内。
- AI 内容复核
- 已使用
- 复核送评文本的说明和设计,不是安装测试或实际任务执行。记录缺失时不推断已使用或未使用。
- 真实任务效果
- 本报告未提供实测证据
- 没有使用/不使用 Skill 的任务对照、重复运行或耗时与 token 成本结果。采用前仍需在隔离环境验证自己的任务。
脚本引用覆盖
已纳入文本静态扫描 7 项/未纳入 8 项
被选 Skill:SKILL.md
仅检查被选 Skill 的直接脚本引用,一跳读取,不跟进 imports 或依赖;不执行脚本,脚本文本不送入 AI 质量复核。已纳入只表示文本已扫描,不代表安全。
仅统计本记录中的可识别引用;未纳入或未记录的部分保持未知,不按安全通过处理。
查看 15 项引用明细
1. 已纳入
引用位置:
SKILL.md:175目标路径:
workbench/scripts/open.mjs文本已纳入静态扫描,不代表脚本安全。
2. 未找到文件
引用位置:
SKILL.md:180目标路径:
src/workbench.ts固定版本中未找到对应文件。
3. 已纳入
引用位置:
SKILL.md:225目标路径:
template/src/workbench.ts文本已纳入静态扫描,不代表脚本安全。
4. 已纳入
引用位置:
SKILL.md:228目标路径:
publish/upload_post.py文本已纳入静态扫描,不代表脚本安全。
5. 已纳入
引用位置:
SKILL.md:239目标路径:
assets/scripts/capture-template.mjs文本已纳入静态扫描,不代表脚本安全。
6. 未找到文件
引用位置:
SKILL.md:248目标路径:
Look.tsx固定版本中未找到对应文件。
7. 未找到文件
引用位置:
SKILL.md:249目标路径:
Polish.tsx固定版本中未找到对应文件。
8. 未找到文件
引用位置:
SKILL.md:249目标路径:
Brand.tsx固定版本中未找到对应文件。
9. 未找到文件
引用位置:
SKILL.md:254目标路径:
src/index.ts固定版本中未找到对应文件。
10. 已纳入
引用位置:
SKILL.md:259目标路径:
assets/scripts/smoke-render-demos.py文本已纳入静态扫描,不代表脚本安全。
11. 未找到文件
引用位置:
SKILL.md:263目标路径:
mac_draft.py固定版本中未找到对应文件。
12. 未找到文件
引用位置:
SKILL.md:264目标路径:
windows_draft.py固定版本中未找到对应文件。
13. 未找到文件
引用位置:
SKILL.md:265目标路径:
smoke_test.py固定版本中未找到对应文件。
14. 已纳入
引用位置:
SKILL.md:271目标路径:
publish/test_upload_post.py文本已纳入静态扫描,不代表脚本安全。
15. 已纳入
引用位置:
SKILL.md:274目标路径:
gallery/fetch-media.sh文本已纳入静态扫描,不代表脚本安全。
宣传片制作主流程
SKILL.md 与 README 描述从产品检查到成片交付的连续阶段,属单一任务顺序处理
左右滑动查看完整图示
- • SKILL.md:用户提供项目但未选模式时先做最小只读产品检查
- • SKILL.md:阶段5起用 npx remotion still 出静帧自检,交付前派独立 subagent 终检
- • README「How it works」:capture real pages → storyboard → animate in Remotion → render and frame QA
- 通过: Agent Skills 格式校验 1/1 个通过
- 通过: 1 个有效 Skill 含可核实的指令步骤或示例
- SKILL.md「调用时先判断模式」列出模板、自主自由创作、共同创作三种模式及例外一/二
- SKILL.md「核心理念」第9条禁 Date.now()/Math.random(),要求固定种子逐帧可复现
- README「Install」给出 npx skills add 与 ~/.claude/skills 软链命令
- README「Requirements」列出 Node/npm、ffmpeg/ffprobe、uv、puppeteer 及 Headless Linux 三处限制
- SKILL.md 资产节说明 jianying-export 的 windows_draft.py 未真机验证
- 问题与用途描述
- 有效 README
- 安装或接入步骤
- 可执行示例
- 通过: Agent Skills 格式校验 1/1 个通过
- 发现系统进程或命令执行能力
- 缺少错误处理或排障
- 确定性检查显示错误处理或排障缺失,README 仅零散提及 Linux 三处坑
- 剪映 Windows 导出声明未真机验证,能力边界依赖用户自行承担
- 发布功能依赖 Upload-Post 外部 API 与密钥,失败路径仅说明不重跑
需要把网页/前端项目做成可编辑产品宣传片的团队、希望按镜头卡挑选并复刻具体动效的创作者、需要 Remotion 源码与剪映工程二次编辑的用户
需要纯 AI 文生视频、无真实页面素材的场景、无法安装 Node/ffmpeg 或需完全离线渲染的环境
也有自己的公开项目?先看完证据,再用当前规则生成独立报告。
评测我的项目 →process-executionworkbench/scripts/open.mjs:15high confidenceimport { spawn, spawnSync } from "no***ss";修复:限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
process-executionworkbench/scripts/open.mjs:82high confidenceconst r = spawnSync("npm", ["install", "--***ts"], { cwd: wb, stdio: "inherit" });修复:限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
process-executionworkbench/scripts/open.mjs:86high confidenceconst r = spawnSync(process.execPath, [join(wb, "scripts", "ge***js")], { cwd: wb, stdio: "inherit" });修复:限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
process-executionworkbench/scripts/open.mjs:100high confidenceconst r = spawnSync("ps", ["-o", "co***d=", "-p", ***: "utf8" });修复:限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
process-executionassets/scripts/smoke-render-demos.py:101high confidencer = subprocess.run(修复:限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
- 01限制可执行命令与参数,禁止拼接用户输入,并采用最小权限沙箱。
- 02补充错误处理或排障
方法、证据与局限展开收起
GitHub Repository API
13 个文件 · 100,303 字符
v3.17.3 · AI 内容复核:已使用(deepseek-flash)
- 静态评测不会安装或执行项目代码
- 安全扫描基于高信号文件与已知模式,不能替代人工审计
- 流行度只反映采用程度,不代表安全或工程质量
- 脚本覆盖仅针对被选 Skill 中可识别的直接引用;不递归分析依赖,不执行脚本,脚本未送入 AI 质量复核
30 天热度趋势
README
What it does
Tell Claude Code or Codex "make a promo for my product". The agent captures your real pages, picks shots from a library of tuned motion recipes, storyboards the film, animates it with Remotion, cuts it to the beat, adds sound design, checks every frame and hands you a finished MP4 you can keep editing.
It is not a video generator. Every frame is drawn by code from your own screenshots and copy, so the result is sharp, on-brand and fully editable.
How it works

What's new
[!IMPORTANT]
🎬 2026-10 · Shot library refresh
All 216 demos were polished and reviewed. The best versions now make up 124 cards / 150 shots, with fresh Gallery previews and video-shotcraft branding.
- 2026-09 · Motion Workbench. Keep editing the delivered film in a CapCut-style browser editor.
- 2026-08 · video-talkcraft, the narration-video sibling: script + voiceover in, every motion beat locked to the voice (78 narration previews).
- 2026-08 · JianYing (CapCut CN) export. The final film becomes an editable JianYing draft: per-shot clips, native caption tracks, separate SFX/BGM tracks. Verified on JianYing Pro 11.2 for macOS (guide).
❤️ Sponsors
![]() APIMart |
Thanks to APIMart for sponsoring this project! APIMart is a low-cost API platform for AI image & video generation — GPT-Image-2 from $0.006/image, 160+ images per dollar. One async API covers both image and video: submit a task, get an ID, fetch results via polling or callback. Batch tens of thousands of images without timeouts, switch models without changing code. Pay-as-you-go with no monthly fee — sign up here to get started. |
![]() PackyCode |
Access leading AI models through PackyCode with one API endpoint and one API key. Enjoy fast, reliable access with automatic failover and dedicated high-speed routes for Codex and Claude Code. Get started with $1 in free credits, a discount on your first top-up, and savings of up to 80% on eligible routes. Pay in RMB with no currency conversion markups or extra top-up fees. |
|
AWS |
Amazon Web Services (AWS) offers reliable, scalable cloud computing services, including compute, storage and AI. |
Install
Built and tuned for Claude Code and Codex. The simplest way is to hand your agent the link:
Install this skill for me: https://github.com/Vincentwei1021/video-shotcraft
Or with the skills CLI:
npx skills add Vincentwei1021/video-shotcraft
Or by hand:
git clone https://github.com/Vincentwei1021/video-shotcraft.git
cd video-shotcraft
ln -s "$(pwd)" ~/.claude/skills/video-shotcraft # Claude Code
ln -s "$(pwd)" ~/.codex/skills/video-shotcraft # Codex
In mainland China, clone from the AtomGit mirror if GitHub is slow:
git clone https://atomgit.com/VincentWei/video-shotcraft.git.
Use
Just describe the film. No command needed.
| Say | What happens |
|---|---|
Use video-shotcraft to make a promo for my product. | The agent introduces the Ink Press template and asks whether to use it, then captures your pages and builds the film |
Make a launch film for this repo with the Ink Press template. | The fastest path: your screenshots, copy and logo dropped into a validated template |
Use the deck-deal-flyin and row-embed shot cards to present this feature. | You pick the shots by name (copy names straight from the Gallery) |
Design a product close-up inspired by spotlight-hero-card. | One shot, adapted to your product |
Shot library
124 recipe cards in 10 categories, 150 shots in total. Search, filter and copy card names in the Gallery.
Opening & Brand · 11 shots![]() text-as-mask: the product shows through the title | Camera · 13 shots![]() exploded-view: the page tilts and comes apart |
Transitions · 19 shots![]() card-flock-tumble: a flock of cards becomes the headline | Typography · 25 shots![]() flying-words: a word tunnel resolves into the motto |
UI Entrance · 22 shots![]() card-stack: a fan of cards deals into place | Interaction · 13 shots![]() palette-theme-ripple: a new theme ripples across the UI |
Data · 9 shots![]() axis-rescale-shock: the spike breaks the axis | Light & Emphasis · 23 shots![]() spotlight-sweep: a stage light finds the title |
Rhythm · 8 shots![]() paparazzi-flash: three flashes, three crops, one number | Outro · 7 shots![]() input-morph-assemble: the chat box builds the logo |
Each card lives in references/shots/<category>/<card>.md, with its Remotion implementation in
demos/<category>/<card>/ (see demos/README.md for how to wire one into your project).
Motion Workbench
After delivery the skill opens a CapCut-style editor in your browser
(node workbench/scripts/open.mjs <project>). The film is split into shot, transition, caption and SFX tracks
exactly as authored. Select any shot to edit its copy, font sizes and colours, move, trim or speed-ramp clips,
drag in any of the 150 library shots, then export with Remotion. Preview and render are frame-identical.

Workbench guide, every panel with screenshots (Chinese) · Integration contract
What you get
| Output | Details |
|---|---|
| Final film | MP4, 1920×1080, 30 fps, h264, with music and sound design |
| Remotion project | The full source of your film: every shot is a React component you or the agent can change |
| Motion Workbench | Opens after delivery: tracks, inspector, retime, swap shots, export (details) |
| JianYing draft | Optional: an editable JianYing (CapCut CN) project with per-shot clips, captions and audio tracks |
| Social publishing | Optional, when you ask: publish the finished film via Upload-Post to TikTok, Instagram, YouTube, LinkedIn, X and more. Confirm caption and platforms, then dry-run before posting (guide) |
Also in the box: reusable Remotion components (2.5D page camera, captions, flash cuts, digit rolls), 149 SFX and 5 BGM tracks, page-capture scripts, and the production method itself (capture, visual direction, storyboarding, sound design, beat sync, final QA) in references/.
Showcase
Share your film. Made something with video-shotcraft? Submit it with the Showcase issue form. After review it appears on the Showcase page.
Requirements
| Needs | For |
|---|---|
| Node.js and npm | Remotion rendering, the template and the workbench |
| ffmpeg / ffprobe | Frame checks and final QA |
| uv | Only for BGM beat analysis (runs a one-off Python script) |
| puppeteer | Only for page capture; the capture script installs it on demand |
Remotion downloads its own headless Chrome on first render. Tested on macOS; Linux works with the notes below.
Headless Linux / CI notes
Rendering on a headless Linux box (tested: 2 cores, Node 22) hits three walls:
- Concurrency cap.
remotion still/renderfails with "Maximum for --concurrency is 2" on low-core machines. Pass--concurrency=1. - Old headless removal. Recent Chrome/Chromium dropped the old headless mode, so pointing Remotion at system Chromium fails to launch. Use a chrome-headless-shell binary instead of full Chrome.
- Blocked CDN. If remotion.media is unreachable (common in mainland China), the automatic headless-shell
download fails. Pass
--browser-executable=<path-to-local chrome-headless-shell>.
With these three flags, frame renders from the bundled template work.
Repository structure
video-shotcraft/
├── SKILL.md # Agent entry point and core production rules
├── references/
│ ├── pipeline.md # End-to-end production workflow
│ ├── shots/ # 124 shot recipe cards in 10 functional categories
│ ├── sequences/ # Reusable full-video structures and sequence patterns
│ ├── aesthetic-rules.md # Visual QA criteria
│ ├── music-beat-sync.md # BGM analysis and beat-sync methodology
│ ├── sound-design.md # Sound-design guidance and examples
│ ├── jianying-export.md # JianYing (CapCut CN) project-export guide
│ ├── publish-upload-post.md # Optional social publishing (Upload-Post API)
│ └── workbench.md # Motion workbench: manifest contract + editability rules
├── demos/ # Remotion reference implementations (same categories)
├── gallery/ # Static motion-preview Gallery
├── template/ # Runnable complete video template
├── jianying-export/ # JianYing draft installers (mac tested / win untested)
├── publish/ # Optional social publisher (stdlib-only Python) + offline tests
├── workbench/ # Post-delivery motion workbench (Vite + Remotion Player)
└── assets/
├── lib/ # Reusable Remotion components
├── scripts/ # Page-asset capture scripts
└── audio/ # Audio assets
├── bgm/ # 5 BGM options
└── sfx/<category>/ # 149 SFX across 16 scene categories
For the full workflow see SKILL.md, the production pipeline and the visual QA criteria.
Audio and assets
SFX are organized into 16 scene and material categories (transition impact riser camera ui text
paper film light data scifi mech glass fluid crowd counter): pick the category first, then
the timbre. See sound-design.md for the index and per-file usage, and
ATTRIBUTION.md for sources and licenses.
Product screenshots bundled with the template are demonstration assets. Replace them with screenshots of your product before publishing, and check whether any product, customer or personal data needs to be anonymized.
License
- Code and docs: Apache-2.0.
- Audio under
assets/audio/: each file under its own license, see ATTRIBUTION.md. - Remotion has its own license: free for individuals and small teams, companies may need a paid license.
Acknowledgements
Many recipes were distilled by studying the motion language of outstanding official product films, including promos from ClickUp, Perplexity, Slack, Notion, Figma, Framer, Bear, Raycast, Pitch, Miro, Superhuman and Loom. The cards document techniques (timing, easing, choreography) re-implemented from scratch; no footage, artwork or brand assets from these films are included. All trademarks belong to their owners, and none of these companies are affiliated with or endorse this project.
Thanks also to Remotion, which powers every demo and template here; Mixkit, the source of the bundled SFX and music under its free license; the game-feel and animation communities whose published principles inform several cards; and Claude Code, with which this library was built, iterated and QA'd using the same workflow the skill teaches.











