Garden Skills is an open-source collection of reusable instructions for AI coding agents such as Claude Code, Cursor, and Codex, covering tasks including web design, image generation, and turning source material into articles or presentations. Developers use the skills to guide agents through these workflows.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ConardLi/garden-skills --skill web-video-presentationgit clone --depth 1 https://github.com/ConardLi/garden-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/conardli/garden-skills/web-video-presentation)<a href="https://agentmods.dev/skills/conardli/garden-skills/web-video-presentation"><img src="https://agentmods.dev/badge/skills/conardli/garden-skills/web-video-presentation/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/conardli/garden-skills/web-video-presentation"><img src="https://agentmods.dev/badge/skills/conardli/garden-skills/web-video-presentation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Tool Misuse · line 252 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
- medium MCP Rug Pull · line 325 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00314 | $0.07091 |
| Opus 5 | $0.00157 | $0.03546 |
| Sonnet 5 | $0.00063 | $0.01418 |
| Haiku 4.5 | $0.00031 | $0.00709 |
Grade C, and why
web-video-presentation scanned grade C with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf presentation/src/chapters/01-example Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
│ └── openai.sh # 内置 OpenAI TTS(curl + OPENAI_API_KEY) How it starts
The opening of the file, as written. The whole thing — 452 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Web Video Presentation
把一篇文章或口播稿,一步步做成可录屏的"伪装成视频的网页",可选合成 口播音频。产出物 = Vite + React + TS 项目 + 按章节切分的音频。
适用场景
- "我有口播稿 / 一篇文章,帮我做成视频" —— 口播驱动的内容
- 想做 "动态 PPT"
- 16:9 横屏录屏,大字、留白、每屏都要有动效
- 教学 / 产品演示 / keynote 想要电影感
- B 站 / YouTube /抖音视频内容
本 Skill 以方法论 + 协作流程为核心。脚手架模板提供 token 和原语, 但每个美学决策(配色、字型、动效气质)都应该针对你的主题重新设计 —— 不要照搬。
工作流总览
Phase 1 内容编写
1.1 识别用户输入
1.2 一次产出 script.md + outline.md
(口播稿 + 开发计划)
▼
[Checkpoint Plan] ← 必须停。一次对齐 5 件事:
稿子 / outline / 主题 / 素材 / 开发模式
▼
Phase 2 网页开发
2.1 脚手架(按选定主题)
2.2 第 1 章 = 主线程 + 完整版本(强制 anchor)
▼
[硬节点] 用户验收第 1 章 ← 不可跳过
▼
2.3 第 2~N 章(按选定模式:A 逐章 / B 顺序 / C 并行)
▼
[Checkpoint Audio] ← 必须停。是否合成音频
▼
Phase 3 音频合成(可选)
▼
Phase 4 录屏 + 后期
工作目录约定(agent 在用户当前目录下创建 / 编辑):
my-video/
├── article.md # 用户给原文时必有 —— 不删!开发阶段画面信息源
├── script.md # 必有:保持原文语言的平台化口播稿(决定节拍)
├── outline.md # 必有:开发计划(章节切分 + 每步内容 + 信息池)
└── presentation/ # 脚手架产出的 Vite + React + TS 项目
├── src/chapters/<NN>-<id>/
│ ├── <Chapter>.tsx # 视觉实现
│ ├── <Chapter>.css
│ └── narrations.ts # ★ step 数 + 口播文本的唯一真相源
├── scripts/
│ ├── extract-narrations.ts # 扫所有 narrations.ts → audio-segments.json
│ ├── synthesize-audio.sh # provider-agnostic runner(循环 segments)
│ └── tts-providers/ # 每 provider 一个 .sh(内置 2 个)
│ ├── README.md # 三函数契约 + 5 段现成代码片段(11labs / edge-tts / say / azure / gcloud)
│ ├── minimax.sh # 默认 provider,用 mmx-cli
│ └── openai.sh # 内置 OpenAI TTS(curl + OPENAI_API_KEY)
├── audio-segments.json # extract 产出(合成前 review)
└── public/audio/<id>/<N>.mp3 # 可选:合成的音频
关键:
narrations.ts是 step 数和音频合成的唯一真相源。 章节.tsx里的if (step === N)出现的最大 N + 1 必须等于narrations.length。这保证 5 处地方(script / outline / 章节代码 / chapters.ts / 音频文件)永远不会漂。
硬性自检协议(贯穿整个 Skill)
下面三个产出,每一个完成后必须走自检 → 修复 → 再汇报 / 推进:
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- manifest.json 629 B
- README.md 18 KB
- README.zh-CN.md 17 KB
- references/AUDIO.md 11 KB
- references/CHAPTER-CRAFT.md 10 KB
- references/EXAMPLES/case-tech-review/outline-snippet.md 6.4 KB
- references/EXAMPLES/case-tech-review/README.md 2.8 KB
- references/EXAMPLES/hook-chapter/chapter.css 4.8 KB
- references/EXAMPLES/hook-chapter/chapter.tsx 4.4 KB
- references/EXAMPLES/hook-chapter/README.md 3.8 KB
- references/EXAMPLES/list-reveal/chapter.css 3.4 KB
- references/EXAMPLES/list-reveal/chapter.tsx 3.5 KB
- references/EXAMPLES/list-reveal/README.md 3.6 KB
- references/EXAMPLES/README.md 5.0 KB
- references/OUTLINE-FORMAT.md 8.3 KB
- references/RECORDING.md 2.9 KB
- references/SCRIPT-STYLE.md 18 KB
- references/THEMES.md 23 KB
- scripts/scaffold.sh 9.3 KB runs code
- templates/index.html 302 B
- templates/scripts/extract-narrations.ts 4.6 KB runs code
- templates/scripts/synthesize-audio.sh 5.0 KB runs code
- templates/scripts/tts-providers/minimax.sh 1.7 KB runs code
- templates/scripts/tts-providers/openai.sh 2.6 KB runs code
- templates/scripts/tts-providers/README.md 12 KB
- templates/src/App.tsx 2.4 KB
- templates/src/chapters/01-example/Example.css 1.9 KB
- templates/src/chapters/01-example/Example.tsx 3.8 KB
- templates/src/chapters/01-example/narrations.ts 1.3 KB runs code
- templates/src/components/AutoStartGate.css 1.2 KB
- templates/src/components/AutoStartGate.tsx 1014 B
- templates/src/components/AutoToggle.css 1.0 KB
- templates/src/components/AutoToggle.tsx 898 B
- templates/src/components/MaskReveal.tsx 797 B
- templates/src/components/ProgressBar.css 2.4 KB
- templates/src/components/ProgressBar.tsx 3.7 KB
- templates/src/components/Stage.tsx 1.5 KB
- templates/src/hooks/useAudioPlayer.ts 3.7 KB runs code
- templates/src/hooks/useAutoMode.ts 2.4 KB runs code
- templates/src/hooks/useStageScale.ts 843 B runs code
- templates/src/hooks/useStepper.ts 5.1 KB runs code
- templates/src/main.tsx 209 B
- templates/src/registry/chapters.ts 833 B runs code
- templates/src/registry/types.ts 704 B runs code
- templates/src/styles/animations.css 2.3 KB
- templates/src/styles/base.css 15 KB
- templates/src/styles/fonts.css 2.1 KB
- templates/vite.config.ts 196 B runs code
- themes/bauhaus-bold/theme.json 750 B
- themes/bauhaus-bold/tokens.css 2.7 KB
- themes/blueprint/theme.json 744 B
- themes/blueprint/tokens.css 2.9 KB
- themes/bold-signal/theme.json 956 B
- themes/bold-signal/tokens.css 3.1 KB
- themes/chalk-garden/theme.json 705 B
- themes/chalk-garden/tokens.css 2.8 KB
- themes/creative-voltage/theme.json 970 B
- themes/creative-voltage/tokens.css 3.0 KB
- themes/dark-botanical/theme.json 911 B
- themes/dark-botanical/tokens.css 3.1 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 452 lines · 314 tokens per session scan C 0197b0dcbaad
web-video-presentation is a skill published in the GitHub repository ConardLi/garden-skills (12,324 stars, last pushed 2mo ago), licensed MIT. It adds 314 tokens to every session and 7,091 once invoked, about $0.0016 per session on Opus 5. A static security scan graded it C with 2 findings (recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
animated-sketch-diagram
A tool for making animated diagrams and flowcharts in a hand-drawn ink style, with paper-like backgrounds, simple icons, and moving dots along connections. It produces a self-contained HTML file and can also create a looping GIF.
printed-curtain-render
A browser-based p5.js simulation that makes artwork or text move through separate curtain-like strands. p5.js is a JavaScript library for creating graphics and animations in a web browser.
threejs-earth-render
A skill that clones or updates a Three.js Earth project and captures an animated route around a 3D globe. Three.js is a JavaScript library for displaying 3D graphics in a browser.
light-spotlight-render
A reusable HTML animation in which a swinging spotlight reveals text, with settings for the text, swing, lamp size, glow, and colors.
web-ui-motion
Build polished front-end UI together with a signature motion effect in a single self-contained HTML file, combining SVG.js / SVG filters and the Canvas 2D API. Use when the user asks to build a web page, landing page, dashboard, or component that has a special visual effect, animation, particle system, fluid/water…
ai-animation-skill
A workflow for turning science-explainer text into a single-page HTML presentation with PPT-like animated slides. It can also rebuild an existing animation as a flat, diagram-style webpage.