Cap Cinematic Demo Generator
CapSoftware/Cap
Turns any URL into a short cinematic product-demo video on macOS, scouting the page, recording it with virtual input, then treating the clip with Cap's 3D camera and music.
Turn a raw podcast or interview recording into captioned vertical shorts staged as Buffer drafts.
$ npx skills add shawnla90/gtm-coding-agent --skill podcast-shorts -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install shawnla90/gtm-coding-agent podcast-shorts --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/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/starters/podcast-shorts .claude/skills/podcast-shorts && 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 "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .claude/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shortsType 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 shawnla90/gtm-coding-agent --skill podcast-shorts -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install shawnla90/gtm-coding-agent podcast-shorts --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/starters/podcast-shorts .agents/skills/podcast-shorts && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .agents/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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 shawnla90/gtm-coding-agent --skill podcast-shorts -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install shawnla90/gtm-coding-agent podcast-shorts --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/starters/podcast-shorts .cursor/skills/podcast-shorts && 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 "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .cursor/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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/shawnla90/gtm-coding-agent.git --path starters/podcast-shorts--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 shawnla90/gtm-coding-agent --skill podcast-shorts -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install shawnla90/gtm-coding-agent podcast-shorts --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/starters/podcast-shorts .gemini/skills/podcast-shorts && 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 "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .gemini/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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 shawnla90/gtm-coding-agent podcast-shortsInstalls 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 shawnla90/gtm-coding-agent --skill podcast-shorts -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/starters/podcast-shorts .github/skills/podcast-shorts && 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 "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .github/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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 shawnla90/gtm-coding-agent --skill podcast-shorts -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install shawnla90/gtm-coding-agent podcast-shorts --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shawnla90/gtm-coding-agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/starters/podcast-shorts .opencode/skills/podcast-shorts && 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 "podcast-shorts" agent skill from https://github.com/shawnla90/gtm-coding-agent/tree/main/starters/podcast-shorts into .opencode/skills/podcast-shorts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "podcast-shorts", 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.
podcast-shortsTurn a raw podcast or interview recording into captioned vertical shorts staged as Buffer drafts.
Podcast Shorts is an agent skill from shawnla90/gtm-coding-agent. Turn a raw podcast or interview recording into captioned vertical shorts staged as Buffer drafts. Invoke on "podcast to shorts", "cut podcast shorts", "clip this episode", "/podcast-shorts", or when the user hands over a long recording and asks for social clips.
Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 18 other files, including assets (for example `README.md`, `assets/README.md` and `buffer_schedule.py`).
It sits in Media & Creative. It works with Python. The repository describes itself as: Build your go-to-market engine with coding agents instead of a $2K/mo tool stack. 21 chapters, nine forkable starters, four installable skills, GTM-OS skeleton, and Python… The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 072c185. 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.
Ships script files (Python and Shell), which the agent can run.
Shell commands in SKILL.md call:
python3From 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 these keys or tokens, usually read from environment variables:
BUFFER_ACCESS_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Podcast Shorts loads about 1.3k tokens when it runs. Until then it costs about 69 tokens; SKILL.md has 587 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 shawnla90/gtm-coding-agent at commit 072c185, republished under its MIT licence (© shawnla90). 587 words, ~1,340 tokens.
.claude/skills/podcast-shorts/SKILL.md (or your agent's skills folder). This skill also uses 16 other files; get the full folder from GitHub.Raw recording → word-timestamped transcript → planned cuts → styled overlay render → one-pass master composite → QA gate → social encodes → Buffer drafts.
Do NOT invoke for single-source talking-head recuts with no cutting plan, or for meme-style captioning.
<pack-dir>/
pack.json # the spec — see pack.example.json
source/ # per-speaker video + lossless WAV exports
transcripts/ # written by transcribe.py + plan_clips.py
projects/clip_NN/ # HyperFrames overlay projects (compose_overlay.py)
out/ # masters + delivery encodes
clips/ # word jsons, captions, buffer_urls.json
review/framing.json # optional: face_x overrides + cameo source rangesSee pack.example.json. Per clip: slug, mode (square | wide | guest | duo), lead
(speaker_a | speaker_b), start/end (source seconds), start_text/end_text (the words
the clip must open and close on — anchors, not guesses), hook (two overlay lines),
cta, optional kicker, speaker_names, cameo_text, tx_windows, drops, blocks.
Top level: sources, framing_defaults, optional series (day-order slugs for Buffer).
python3 transcribe.py <pack> [idx]. Whisper (word timestamps) per
speaker track. Add your product names to ASR_FIXES first; whisper mangles proper nouns.python3 plan_clips.py <pack> <idx>. Anchors the cut on
start_text/end_text word matches, jump-cuts silences, compensates whisper's early
word-end stamps (END_COMP/BLEED), writes transcripts/clip_NN.cut.json including
fade_start anchored to the last word.python3 compose_overlay.py <pack> <idx>. Graphics-only
transparent HyperFrames project (footage never touches the browser). Keep every
text card-host at data-start="0" — card hosts run their own scheduler clock, and a
nonzero data-start fights the gsap timeline and flashes on frame 0.npx hyperframes render <pack>/projects/clip_NN/public --format mov -o <abs>/projects/clip_NN/renders/overlay.mov. ProRes 4444 alpha; delete after step 5
(300-800MB each).python3 final_composite.py <pack> <idx>. One ffmpeg pass:
denoise, speed bake, crops, alpha overlay, loudnorm, end fade. The audio chain ends
asetpts=N/SR/TB — do not remove it (see below)../make_delivery.sh. 8-bit yuv420p re-encode, both streams
fresh, asetpts=N/SR/TB on audio.python3 qa_delivery.py delivery _social. Every clip must PASS before
anything is hosted or drafted.clips/buffer_urls.json ({slug: url}) and clips/captions.json, then
python3 buffer_schedule.py <pack> all go. Needs BUFFER_ACCESS_TOKEN and
BUFFER_ORG_ID env vars. Drafts, not scheduled posts — a human reviews.The master's audio filter graph (atrim → concat → atempo → loudnorm) can emit a
timestamp jump at a cut seam while the audio CONTENT stays continuous. Players and
platform ingests play sample-continuously and never show it — masters sound perfect.
But any re-encode with a timestamp-aware filter materializes the gap:
aresample=async=1 turns it into time-squeezed audio followed by seconds of real
silence at the start of the clip.
Rules:
asetpts=N/SR/TB (timestamps rebuilt from sample
position — continuous by construction).-af "asetpts=N/SR/TB" and NEVER aresample=async=1.| check | bar |
|---|---|
| silencedetect regions | count == the master's (a new region = injected dropout) |
| audio cross-correlation vs master | abs lag <= 25ms at 0.2/1/2/5/10s windows |
| first video packet | keyframe at pts 0 |
| packet timing | uniform CFR |
| duration | within 0.1s of master |
editPost is a full
replace, resend text + assets + metadata with any change.© shawnla90, 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 16 other files (assets) in starters/podcast-shorts of shawnla90/gtm-coding-agent.
Open the folder on GitHubat commit 072c185
Podcast Shorts 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 |
|---|---|---|---|---|---|---|
| Podcast Shorts this skillshawnla90/gtm-coding-agent | 155 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Cap Cinematic Demo GeneratorCapSoftware/Cap | 23k | — | ~2.4k | Automated safety check: Pass | Custom licence | |
| Edu Math Videowy51ai/edulab | 1.4k | — | ~2.5k | Automated safety check: Notes | Apache-2.0 | |
| Book Video Factorybytec-ai/book-video-factory | 321 | — | ~1.4k | Automated safety check: Notes | None | |
| Jianying EditorisYangs/jianying-editor-skill | 214 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Srt Vox Directorgeeklee/srt-vox-director | 105 | — | ~1.8k | Automated safety check: Pass | None |
CapSoftware/Cap
Turns any URL into a short cinematic product-demo video on macOS, scouting the page, recording it with virtual input, then treating the clip with Cap's 3D camera and music.
wy51ai/edulab
A skill your agent uses when asked to make an explainer / walkthrough video (讲解视频、解题视频、例题精讲、微课) for a math problem (数学题, geometry, algebra, functions, motion/行程 problems), from a problem screenshot…
bytec-ai/book-video-factory
通用的多账号图书短视频生产工作流。用于用户希望建立图书号项目目录、配置账号级片头/声音/BGM/视觉规范,或只提供一本书后依次完成资料研究、口播稿、分镜、图片、配音、字幕、预览与成片导出。适用于新建工作区、批量管理多个账号、继续已有单书任务和检查生产状态;不绑定特定研究、图片、TTS、转录或视频渲染供应商。
isYangs/jianying-editor-skill
剪映 (JianYing) AI自动化剪辑的高级封装 API。支持录屏、素材导入、字幕生成、Web 动效合成及项目导出。
geeklee/srt-vox-director
把已经写好的字幕(SRT / 配音稿 / 解说词 / 旁白稿)变成 Vox 风格解释视频的分镜与提示词包——参考图提示词、图生视频提示词、分镜表、关键词台账、视觉圣经、风格选择。只交付文本提示词,不生成任何图片或视频。适用于用户已有成片旁白、想做成分镜或配画面、需要切分镜头与处理时长差值、选定视觉风格,或出图/出片失败后诊断修复(字错了、画面没动、风格跑偏等)。
yuyou-dev/dreamina-cli-skill
A skill your agent uses when an agent needs Dreamina(即梦) generation, task querying, account checks, or login/session operations through the packaged Python wrapper scripts around the dreamina CLI.
shawnla90/gtm-coding-agent
Turn a website domain into a complete Clearbox offer pack — one-liner, selling points in the form's fixed template shapes, keywords, competitor brands, own brands, and suggested tracked subreddits —…
shawnla90/gtm-coding-agent
Build a personalized Reddit onboarding doc for a new Clearbox signup or client, grounded in their real product data, and push it to Notion.
shawnla90/gtm-coding-agent
Batch-draft one suggested Reddit reply template per classified opportunity, hard-gated.
shawnla90/gtm-coding-agent
The agency motion for a Reddit-led visibility offer. An agent skill from shawnla90/gtm-coding-agent.
shawnla90/gtm-coding-agent
Draft and approve Reddit comments from scouted opportunities with a hard human-in-the-loop gate.
shawnla90/gtm-coding-agent
Scaffold a student's own GTM repo and run the weekly build-in-public loop that turns a coding agent into a public go-to-market track record.
Works with
Categories
Turn a raw podcast or interview recording into captioned vertical shorts staged as Buffer drafts. Podcast Shorts is an agent skill from shawnla90/gtm-coding-agent. Turn a raw podcast or interview recording into captioned vertical shorts staged as Buffer drafts.
Podcast Shorts fits situations like: hands over a long recording and asks for social clips.
Run `npx skills add shawnla90/gtm-coding-agent --skill podcast-shorts -a claude-code`. Or copy the skill folder (starters/podcast-shorts in shawnla90/gtm-coding-agent) into .claude/skills/podcast-shorts in your project. Claude Code loads it when a task matches its description.
Run `npx skills add shawnla90/gtm-coding-agent --skill podcast-shorts -a codex`. Or copy the skill folder (starters/podcast-shorts in shawnla90/gtm-coding-agent) into .agents/skills/podcast-shorts 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 shawnla90/gtm-coding-agent --skill podcast-shorts -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/podcast-shorts, .gemini/skills/podcast-shorts, .github/skills/podcast-shorts and .opencode/skills/podcast-shorts in your project.
Going by SKILL.md and its folder, Podcast Shorts needs Python and a shell for the scripts in its folder, the command-line tools its instructions call (python3) and credentials named BUFFER_ACCESS_TOKEN. Our summary lists: Python 3; Node.js; A Bash shell; A credential in BUFFER_ACCESS_TOKEN.
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.
Podcast Shorts is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.3k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Podcast Shorts: Cap Cinematic Demo Generator (CapSoftware/Cap, 23k stars), Edu Math Video (wy51ai/edulab, 1.4k stars), Book Video Factory (bytec-ai/book-video-factory, 321 stars) and Jianying Editor (isYangs/jianying-editor-skill, 214 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
shawnla90 (a GitHub user) maintains it in shawnla90/gtm-coding-agent, which has 155 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 2, 2026.
Source: shawnla90/gtm-coding-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.