Video Assemble
zenstory-ai/video-recap-skills
合成视频解说最终成片:把旁白音频铺到源视频上,按旁白窗口压低原声,生成 SRT / ASS 字幕并可烧录, 最后做响度标准化。作为最终合成阶段使用。输入源视频、ttsmeta.json 与旁白位置; 输出 recap 成片和字幕。触发词:视频合成、混音、字幕、压字幕、assemble video、mux、ducking、subtitles、成片。
Convert master assets into platform-variant exports with safe-zone enforcement.
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-export --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .claude/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .claude/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-exportType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-export --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .agents/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .agents/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .agents/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-export --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .cursor/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .cursor/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/pawbytes/skill-suites.git --path src/creative/paw-cra-multi-platform-export--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-export --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .gemini/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .gemini/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-exportInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .github/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .github/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .github/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install pawbytes/skill-suites paw-cra-multi-platform-export --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pawbytes/skill-suites.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/src/creative/paw-cra-multi-platform-export .opencode/skills/paw-cra-multi-platform-export && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "paw-cra-multi-platform-export" agent skill from https://github.com/pawbytes/skill-suites/tree/main/src/creative/paw-cra-multi-platform-export into .opencode/skills/paw-cra-multi-platform-export/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paw-cra-multi-platform-export", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
paw-cra-multi-platform-exportConvert master assets into platform-variant exports with safe-zone enforcement.
Paw Cra Multi Platform Export is an agent skill from pawbytes/skill-suites. Convert master assets into platform-variant exports with safe-zone enforcement. Use when the user requests to 'export for all platforms', 'resize assets for platforms', or 'multi-platform export'.
Its SKILL.md is about 2.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/platform-export-specs.md`).
It sits in Media & Creative. It works with FFmpeg. The repository describes itself as: 50+ AI agent skills for Claude, Codex, OpenClaw etc — agentic marketing automation, AI creative agency, and developer productivity tools. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 547a6df. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ffmpegwingetbrewFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Paw Cra Multi Platform Export loads about 2.8k tokens when it runs, and up to ~4.6k if it reads all its reference files. Until then it costs about 57 tokens; SKILL.md has 1,078 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from pawbytes/skill-suites at commit 547a6df, republished under its MIT licence (© pawbytes). 1,078 words, ~2,842 tokens.
.claude/skills/paw-cra-multi-platform-export/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.This workflow converts approved master visual and video assets into all target platform variants — resized, re-encoded, and organized into a delivery-ready folder structure with a machine-readable manifest. It handles both images and videos in a single unified pipeline, enforcing safe zones so critical content (text, logos, faces) is never cropped or obscured by platform UI.
Args: Accepts --headless / -H for non-interactive execution. In headless mode, requires master asset path(s) and target platform list as arguments or reads them from the active campaign brief.
Output: Platform-variant files organized by platform in folders, plus export-manifest.json describing every variant with its specs.
Act as a technical export specialist who understands platform constraints, codec requirements, and safe-zone geometry. Prioritize visual integrity — a variant that preserves the master's intent at slightly lower resolution is always better than one that crops critical content to hit exact pixel dimensions.
Load available config from {project-root}/.pawbytes/config/config.yaml and {project-root}/.pawbytes/config/config.user.yaml (root level and cra section). If config is missing, let the user know paw-cra-setup can configure the module at any time. Resolve and apply throughout the session (defaults in parens):
{output_directory} (.pawbytes/creative-suites) — base output path{default_brand} (null) — active brand for naming conventionLoad shared agency memory from {project-root}/.pawbytes/creative-suites/index.md if available. If an active campaign exists, read the campaign brief for brand name and campaign name (used in file naming).
Tool Verification: Check for ffmpeg availability — it is required for both image and video processing. If missing, abort with install instructions (winget install ffmpeg / brew install ffmpeg). ImageMagick is optional and enhances image-specific operations.
If --headless, proceed directly with provided inputs. Otherwise, greet the user and ask for master asset(s) and target platforms.
Collect inputs:
Supported platforms: Instagram, TikTok, YouTube, Facebook, LinkedIn, Twitter/X, Pinterest, Google Business.
Classify each source file:
.png, .jpg, .jpeg, .webp, .tiff, .bmp, .svg.mp4, .mov, .avi, .mkv, .webmLoad ./references/platform-export-specs.md for complete platform specifications including dimensions, aspect ratios, safe zones, file size limits, codec requirements, and duration limits.
For each source asset + target platform combination, determine:
For each image + platform pair:
ffmpeg examples for image resize:
# Scale to fit within dimensions, maintaining aspect ratio
ffmpeg -i master.png -vf "scale=1080:1350:force_original_aspect_ratio=decrease,pad=1080:1350:(ow-iw)/2:(oh-ih)/2:color=#000000" output.jpg
# Crop to exact dimensions centered on focal point
ffmpeg -i master.png -vf "scale=1080:-1,crop=1080:1080" output.jpgFor each video + platform pair:
duration_exceeded)ffmpeg examples for video:
# Horizontal to vertical (smart center crop)
ffmpeg -i master.mp4 -vf "scale=1920:-1,crop=1080:1920" -c:v libx264 -crf 20 -c:a aac -b:a 128k output.mp4
# Scale to platform resolution
ffmpeg -i master.mp4 -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" -c:v libx264 -crf 20 -c:a aac output.mp4Apply consistent naming to all exported files:
{brand}_{campaign}_{platform}_{asset-type}_{variant}.{ext}| Component | Source | Example |
|---|---|---|
brand | Active brand (lowercase, hyphens) | acme-corp |
campaign | Campaign name (lowercase, hyphens) | spring-launch |
platform | Target platform (lowercase) | instagram, tiktok, youtube |
asset-type | image or video | image |
variant | Platform-specific format descriptor | feed-portrait, story, thumbnail |
ext | Platform-optimal format | jpg, png, mp4 |
Example: acme-corp_spring-launch_instagram_image_feed-portrait.jpg
If brand or campaign is unknown, omit those segments: instagram_image_feed-portrait.jpg
Organize all variants into platform-specific folders under the export directory:
{output_directory}/brands/{brand}/exports/{campaign}/
instagram/
acme-corp_spring-launch_instagram_image_feed-portrait.jpg
acme-corp_spring-launch_instagram_image_story.jpg
acme-corp_spring-launch_instagram_video_reel.mp4
tiktok/
acme-corp_spring-launch_tiktok_video_feed.mp4
youtube/
acme-corp_spring-launch_youtube_video_main.mp4
acme-corp_spring-launch_youtube_image_thumbnail.jpg
...
export-manifest.jsonGenerate export-manifest.json at the root of the export directory:
{
"brand": "acme-corp",
"campaign": "spring-launch",
"exported_at": "2026-04-01T14:30:00Z",
"source_assets": [
{
"path": "path/to/master.png",
"type": "image",
"dimensions": "2400x3000",
"file_size_bytes": 4500000
}
],
"variants": [
{
"platform": "instagram",
"variant": "feed-portrait",
"type": "image",
"filename": "acme-corp_spring-launch_instagram_image_feed-portrait.jpg",
"path": "instagram/acme-corp_spring-launch_instagram_image_feed-portrait.jpg",
"dimensions": "1080x1350",
"aspect_ratio": "4:5",
"file_size_bytes": 245000,
"format": "jpeg",
"status": "ok"
},
{
"platform": "tiktok",
"variant": "feed",
"type": "video",
"filename": "acme-corp_spring-launch_tiktok_video_feed.mp4",
"path": "tiktok/acme-corp_spring-launch_tiktok_video_feed.mp4",
"dimensions": "1080x1920",
"aspect_ratio": "9:16",
"duration_seconds": 45,
"codec": "h264",
"file_size_bytes": 12000000,
"status": "ok"
}
],
"warnings": [],
"total_variants": 8,
"total_size_bytes": 45000000
}Status values: ok, duration_exceeded, size_exceeded, quality_reduced, skipped.
Include any warnings (e.g., "TikTok variant exceeds 60s duration limit — manual trim needed").
Append to the daily log at {project-root}/.pawbytes/creative-suites/daily/YYYY-MM-DD.md:
[Export] Multi-platform export complete for {campaign}
- Source: {N} master asset(s)
- Exported: {M} variants across {P} platforms
- Warnings: {W} (or "none")
- Manifest: {path-to-export-manifest.json}Safe zones protect content from being hidden by platform UI (buttons, captions, navigation bars). These are the minimum pixel insets from each edge where no critical content should appear.
| Platform | Top | Bottom | Left | Right | Notes |
|---|---|---|---|---|---|
| Instagram Feed | 0 | 0 | 0 | 0 | Clean viewport |
| Instagram Story | 120 | 200 | 60 | 60 | Top status bar, bottom CTA |
| TikTok | 50 | 150 | 20 | 20 | Bottom: username, caption, music |
| YouTube | 0 | 40 | 0 | 0 | Bottom: progress bar and controls overlay |
| Facebook Feed | 0 | 60 | 0 | 0 | Bottom: reaction bar and captions overlay |
| Facebook Story | 120 | 200 | 60 | 60 | Same as Instagram Story |
| LinkedIn Feed | 0 | 50 | 0 | 0 | Bottom: engagement bar overlay on video |
| Twitter/X | 0 | 0 | 0 | 0 | Clean viewport |
| 0 | 50 | 0 | 0 | Bottom: pin info overlay | |
| Google Business | 0 | 0 | 0 | 0 | Clean viewport |
For video platforms with vertical content (TikTok, Reels, Stories), safe zones are critical — the bottom 10-15% of the frame is typically covered by UI elements.
quality_reduced in manifest.size_exceeded in manifest. Suggest manual optimization.duration_exceeded in manifest. Do not auto-trim.© pawbytes, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in src/creative/paw-cra-multi-platform-export of pawbytes/skill-suites.
Open the folder on GitHubat commit 547a6df
Paw Cra Multi Platform Export next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Paw Cra Multi Platform Export this skillpawbytes/skill-suites | 110 | — | ~2.8k | Automated safety check: Pass | MIT | |
| Video Assemblezenstory-ai/video-recap-skills | 555 | 1 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Podcastzarazhangrui/personalized-podcast | 437 | — | ~2.3k | Automated safety check: Notes | None | |
| Book Sales VideoKianzzz/book-sales-video | 215 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Frames CLIviticci/frames-cli | 404 | — | ~6.1k | Automated safety check: Pass | MIT | |
| Extract Video Framesqdhenry/Claude-Command-Suite | 1.3k | — | ~1.6k | Automated safety check: Pass | None |
zenstory-ai/video-recap-skills
合成视频解说最终成片:把旁白音频铺到源视频上,按旁白窗口压低原声,生成 SRT / ASS 字幕并可烧录, 最后做响度标准化。作为最终合成阶段使用。输入源视频、ttsmeta.json 与旁白位置; 输出 recap 成片和字幕。触发词:视频合成、混音、字幕、压字幕、assemble video、mux、ducking、subtitles、成片。
zarazhangrui/personalized-podcast
Generate a podcast episode from content you provide. An agent skill from zarazhangrui/personalized-podcast.
Kianzzz/book-sales-video
从书名或飞书多维表格中的成稿文案出发,结合微信读书资料与公开点评创作图书带货/书评短视频,并用豆包 TTS、Pexels、Codex 生图和本机 OpenChatCut 完成配音、配图、双语字幕、音效、动效、BGM、可编辑初稿与按需导出。用户提出“根据一本书做带货视频”“读取飞书文案制作图书视频”“写书评口播并自动剪成抖音视频”“仿参考样式做图书推荐短视频”时使用;仅查书、仅写普通书评或无关剪辑…
viticci/frames-cli
Frame screenshots and screen recordings with the frames CLI.
qdhenry/Claude-Command-Suite
Extracts frames and timestamped audio segments from video files (GIF, MP4, MOV) at configurable intervals and stores them in a directory with a manifest file.
micky-li-hd/VideoCoCo
Convert physical-state-planner outputs into standalone Blender Python preview videos.
pawbytes/skill-suites
Installs the Prodig Suites product-creation module into a project, scaffolding its workspace folders and writing the shared and personal config files.
pawbytes/skill-suites
Cuts long-form video into short platform-ready clips: finds strong moments, reframes for vertical, adds subtitles and brand overlays, and writes a clip manifest.
pawbytes/skill-suites
Assembles branded, export-ready proposals from brief, research, and pricing artifacts — type-adaptive for pitch, RFP, or scoping.
pawbytes/skill-suites
Turns pasted text, audio, video or URLs from a client into a structured, completeness-checked brief.md for the first stage of a proposal pipeline.
pawbytes/skill-suites
Turns case studies, past proposals and boilerplate dropped into a library inbox into structured, source-linked indexes for later proposal work.
pawbytes/skill-suites
Turns a structured sales brief into an evidence-backed HTML research dossier, matching indexed case studies locally and gathering client, tech-stack and pricing evidence from the web.
Works with
Categories
Convert master assets into platform-variant exports with safe-zone enforcement. Paw Cra Multi Platform Export is an agent skill from pawbytes/skill-suites. Convert master assets into platform-variant exports with safe-zone enforcement.
Paw Cra Multi Platform Export fits situations like: the user requests to export for all platforms; resize assets for platforms; multi-platform export.
Run `npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a claude-code`. Or copy the skill folder (src/creative/paw-cra-multi-platform-export in pawbytes/skill-suites) into .claude/skills/paw-cra-multi-platform-export in your project. Claude Code loads it when a task matches its description.
Run `npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a codex`. Or copy the skill folder (src/creative/paw-cra-multi-platform-export in pawbytes/skill-suites) into .agents/skills/paw-cra-multi-platform-export in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pawbytes/skill-suites --skill paw-cra-multi-platform-export -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/paw-cra-multi-platform-export, .gemini/skills/paw-cra-multi-platform-export, .github/skills/paw-cra-multi-platform-export and .opencode/skills/paw-cra-multi-platform-export in your project.
Going by SKILL.md and its folder, Paw Cra Multi Platform Export needs the command-line tools its instructions call (ffmpeg, winget and brew).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Paw Cra Multi Platform Export is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.8k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Paw Cra Multi Platform Export: Video Assemble (zenstory-ai/video-recap-skills, 555 stars), Podcast (zarazhangrui/personalized-podcast, 437 stars), Book Sales Video (Kianzzz/book-sales-video, 215 stars) and Frames CLI (viticci/frames-cli, 404 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
pawbytes (a GitHub organization) maintains it in pawbytes/skill-suites, which has 110 GitHub stars. The repository holds 71 skills in this directory. The repository was last updated on October 3, 2026.
Source: pawbytes/skill-suites on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.