Agent skill

Live Tutorial Video Maker

by leon-ai in leon-ai/leon

Records a real workflow in the owner's own application and renders an annotated MP4 tutorial from verified screenshots, with captions in the language of the request.

MITAuto-check passedMedia & Creative

Install Live Tutorial Video Maker

skills CLI
$ npx skills add leon-ai/leon --skill live-tutorial -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install leon-ai/leon live-tutorial --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/leon-ai/leon.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/agent/live-tutorial .claude/skills/live-tutorial && rm -rf skills-src

Use ~/.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/

Facts

Skill name
live-tutorial
GitHub stars
18k
Token cost
~1.4k tokens
SKILL.md length
700 words
Files
2 (incl. scripts)
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

Records a real workflow in the owner's own application and renders an annotated MP4 tutorial from verified screenshots, with captions in the language of the request.

  • Works in 6 steps: Select the target application and one… → Start computer_use.cua.start_recording… → Use the shortest supported route: a… → …
  • Producing a how-to video of a workflow in your own app
  • Runs JavaScript scripts from its folder
  • Creating annotated tutorial steps from real screenshots

What it does

A tutorial video, not just a live demonstration, is the target. The agent picks the target application and the shortest route from its current view to the requested result, demonstrates only that workflow, and returns an MP4 built from the real screenshots it captured. Captions and annotations use the language of your request while keeping app control names as displayed.

Recording starts through the computer-use CUA recording tool with video recording off, and the agent prefers keyboard shortcuts, accessibility-backed actions or the menu invocation tool over shell automation. Each supported input action returns a fresh screenshot, which is reused for verification and the next step, and captions must describe what was actually done, including any shortcut. If execution pauses, it resumes from the same recording and manifest rather than switching to text or stills.

Screenshot paths come from each observation's artifacts, the recording directory is only the destination for the video, and the shell is used just for the final renderer command, scripts/render-tutorial.mjs. The skill is built for the Leon runtime with managed Node.js and bundled ffmpeg-static.

When your agent uses it

  • Producing a how-to video of a workflow in your own app
  • Creating annotated tutorial steps from real screenshots
  • Documenting a settings change with captioned frames

Example prompts

  • “Make a tutorial video showing how to export a report from our dashboard app.”
  • “Record how to change the default currency in my accounting app, with captions in Spanish.”
  • “Create an annotated MP4 that teaches how to share a folder in this app.”

Requirements

  • The Leon runtime with managed Node.js and bundled ffmpeg-static
  • An active Leon profile and session
  • A desktop application the agent can control
  • Compatibility (from SKILL.md): Leon runtime with managed Node.js, bundled ffmpeg-static, and an active profile and session.

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Select the target application and one short route from its current view to the requested result. Demonstrate only the requested workflow…
  2. Start computer_use.cua.start_recording with record_video: false; retain output_dir.
  3. Use the shortest supported route: a known keyboard shortcut, an accessibility-backed action, or computer_use.cua.invoke_menu for native…
  4. Always stop recording. Select 2–6 distinct captures from the successful route, normally one per action plus the result; omit setup, failed…
  5. Write the manifest below with the file tool, then run the bundled renderer through the shell tool. Copy the returned artifact paths…
  6. Check the renderer's resolvedTargets against the intended controls and the source observations. Correct any mismatch before returning…

What it can do on your machine

Read from SKILL.md and the folder at commit 2471443. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 1 file in scripts/ (JavaScript), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Leon runtime with managed Node.js, bundled ffmpeg-static, and an active profile and session.

    From compatibility in the SKILL.md frontmatter.

Context cost

Live Tutorial Video Maker loads about 1.4k tokens when it runs. Until then it costs about 46 tokens; SKILL.md has 700 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~46
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

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.

Safety

Auto-check passed

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); the scripts in this folder are not scanned.

SKILL.md

The full file from leon-ai/leon at commit 2471443, republished under its MIT licence (© leon-ai). 700 words, ~1,447 tokens.

Download SKILL.mdSave it as .claude/skills/live-tutorial/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
live-tutorial
description
Create an annotated MP4 tutorial from a workflow demonstrated in the owner's actual application. Use when asked for a tutorial video, not merely to watch an action live.
compatibility
Leon runtime with managed Node.js, bundled ffmpeg-static, and an active profile and session.
metadata.author
Louis Grenard <louis@getleon.ai>
metadata.version
1.2.9

Live Tutorial

Demonstrate the requested workflow, then return a verified MP4 made from its real screenshots.

Write captions and annotation text in the language of the user's tutorial request, keeping app control names as displayed.

The request already authorizes completing and rendering the tutorial. Do not ask whether to continue or offer screenshots/text instead of the requested video merely because execution paused. Resume with the same recording, captures, and manifest; ask only for genuinely missing information or authorization.

Use PNG paths returned in each observation's artifacts array. The recording output_dir is the destination for the video, not the location of those screenshots; do not search it for frames. The renderer is ready to run with the manifest below: no source inspection, image-processing code, or dependency setup is needed.

Use the live tool results for recording directories, screenshot paths, and current target tokens. After a pause, read a specific saved artifact only if the checkpoint omits a required value; do not scan directories or reread evidence already available. Each new window observation invalidates earlier tokens, so make one observation with any needed query and screenshot, then act immediately from that same result. Use the shell tool only for the final renderer command.

  1. Select the target application and one short route from its current view to the requested result. Demonstrate only the requested workflow, not every related option. Do not reset the application or visit unrelated settings merely to create a starting frame. If already at the result, show only the navigation needed to teach the requested step; do not claim a pre-existing state was caused by an action you did not perform.
  2. Start computer_use.cua.start_recording with record_video: false; retain output_dir.
  3. Use the shortest supported route: a known keyboard shortcut, an accessibility-backed action, or computer_use.cua.invoke_menu for native menus; never shell automation. Capture the starting state before acting. During recording, supported input actions automatically return a fresh screenshot and element queries include screenshots. Reuse the returned observation for verification and the next step instead of taking another identical screenshot. Observe again only if the result lacks needed evidence. Captions must describe what you actually did, including any shortcut; retain the meaningful intermediate states.
  4. Always stop recording. Select 2–6 distinct captures from the successful route, normally one per action plus the result; omit setup, failed attempts, retries, and polling. Keep valid captures across retries rather than re-recording the workflow. The final result must agree with the demonstrated actions. Use a short instruction for each action and a confirmation caption for the result.
  5. Write the manifest below with the file tool, then run the bundled renderer through the shell tool. Copy the returned artifact paths verbatim, including profile and session IDs; do not reconstruct them. Satellite results provide server-local copies for rendering. Do not replace this with a raw screen recording or a custom automation/rendering script. Do not inspect or rewrite the renderer unless it reports an error.
  6. Check the renderer's resolvedTargets against the intended controls and the source observations. Correct any mismatch before returning fileMarker verbatim. The returned previewPaths identify the rendered step frames. If unfinished, explain the obstacle.
Show full SKILL.md (180 more words)Show less

Render

bash
"$NODE" "$LEON_CODEBASE_PATH/skills/agent/live-tutorial/scripts/render-tutorial.mjs" --manifest "/exact/path/to/tutorial.json"

Leon supplies NODE and LEON_CODEBASE_PATH. Do not set a working directory or construct executable paths. No system Node, Python, or FFmpeg installation is needed.

On PowerShell, use & $env:NODE "$env:LEON_CODEBASE_PATH/skills/agent/live-tutorial/scripts/render-tutorial.mjs" --manifest "/exact/path/to/tutorial.json".

Manifest:

json
{
  "outputDir": "<output_dir from start_recording>",
  "steps": [
    {"screenshotPath": "<pre-action PNG path>", "targetToken": "<element_token from this exact capture>", "instruction": "Open the relevant setting."},
    {"screenshotPath": "<result PNG path>", "instruction": "Read the displayed value."}
  ]
}

Use exact current-session paths and captions of at most 240 characters. Prefer targetToken: the renderer reads capture-bound geometry from the PNG's companion JSON and draws the control outline, arrow, and step number automatically.

Use point: {x, y, coordinateWidth, coordinateHeight} when the intended control has no accessible target geometry, even if other controls in the capture do. Copy the exact x/y and coordinate dimensions from the successful action performed on that capture; do not estimate a new annotation point. Never copy a point from another capture or mix window and desktop coordinates. The final result frame must have no point annotation; omit its marker or use a verified targetToken when highlighting a result is genuinely useful.

A tutorial request authorizes demonstrating navigation, not choosing an unspecified setting value or completing a destructive, financial, publishing, or security-sensitive action. Stop before committing such changes unless the owner explicitly authorized them.

© leon-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in skills/agent/live-tutorial of leon-ai/leon.

  • SKILL.md
  • scripts/render-tutorial.mjs

Open the folder on GitHubat commit 2471443

Compare with similar skills

Live Tutorial Video Maker 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.

Live Tutorial Video Maker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Live Tutorial Video Maker this skillleon-ai/leon18k—~1.4kAutomated safety check: PassMIT
Manim Video Productionbrowser-use/video-use28k6 repos~3kAutomated safety check: PassMIT
Manim Explainer VideosPrismer-AI/PrismerCloud1.6k2 repos~3.1kAutomated safety check: PassMIT
Embedded Video Captionsheygen-com/hyperframes58k3 repos~8.6kAutomated safety check: PassApache-2.0
Remotion Best Practiceslyonjs/shortvid.io14732 repos~1kAutomated safety check: PassMIT
Video Understandcalesthio/OpenMontage65k—~841Automated safety check: PassAGPL-3.0

Similar skills

  • Manim Video Production

    browser-use/video-use

    Produces math and technical explainer videos with Manim Community Edition: concept animations, equation derivations, algorithm walkthroughs and data stories.

    28k GitHub starsUsed in 6 repos~3k tokens
    Media & CreativeAuto-check passed
  • Manim Explainer Videos

    Prismer-AI/PrismerCloud

    Produces 3Blue1Brown-style explainer animations with Manim Community Edition for math, algorithms, equations and architecture diagrams, with planning and rendering references.

    1.6k GitHub starsUsed in 2 repos~3.1k tokens
    Media & CreativeAuto-check passed
  • Embedded Video Captions

    heygen-com/hyperframes

    Adds captions to a single-subject talking-head video without editing the footage, from plain subtitles to cinematic text placed behind the speaker.

    58k GitHub starsUsed in 3 repos~8.6k tokens
    Media & CreativeAuto-check passed
  • Remotion Best Practices

    lyonjs/shortvid.io

    Best practices for Remotion - Video creation in React. An agent skill from lyonjs/shortvid.io.

    147 GitHub starsUsed in 32 repos~1k tokens
    Media & CreativeAuto-check passed
  • Video Understand

    calesthio/OpenMontage

    Understand video content locally using ffmpeg frame extraction and Whisper transcription.

    65k GitHub stars~841 tokensUpdated 4 days ago
    Media & CreativeAuto-check passed
  • VideoCaptioner Subtitles

    WEIFENG2333/VideoCaptioner

    Adds subtitles to video with the videocaptioner CLI: transcribes speech, tidies and translates the text, and burns styled subtitles into the video or exports SRT and ASS files.

    16k GitHub stars~1.7k tokensUpdated 25 days ago
    Media & CreativeAuto-check passed

More from leon-ai/leon

  • Leon Coding Agent

    leon-ai/leon

    Has Leon's agent investigate, change and verify code in a repository with its file, search and shell tools, staying inside the scope the owner authorized.

    18k GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Document Authoring

    leon-ai/leon

    Create, inspect, revise and deliver PDFs, Word documents, spreadsheets and presentations as conversation artifacts.

    18k GitHub stars~412 tokensUpdated yesterday
    Auto-check passed
  • Media Production

    leon-ai/leon

    Generates images, audio and video through Leon's media tools, joins them with FFmpeg, checks the output and attaches playable files for the owner.

    18k GitHub stars~432 tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Live Tutorial Video Maker

What does Live Tutorial Video Maker do?

Records a real workflow in the owner's own application and renders an annotated MP4 tutorial from verified screenshots, with captions in the language of the request. A tutorial video, not just a live demonstration, is the target. The agent picks the target application and the shortest route from its current view to the requested result, demonstrates only that workflow, and returns an MP4 built from the real screenshots it captured.

When should I use Live Tutorial Video Maker?

Live Tutorial Video Maker fits situations like: producing a how-to video of a workflow in your own app; creating annotated tutorial steps from real screenshots; documenting a settings change with captioned frames.

How do I install Live Tutorial Video Maker in Claude Code?

Run `npx skills add leon-ai/leon --skill live-tutorial -a claude-code`. Or copy the skill folder (skills/agent/live-tutorial in leon-ai/leon) into .claude/skills/live-tutorial in your project. Claude Code loads it when a task matches its description.

How do I install Live Tutorial Video Maker in Codex?

Run `npx skills add leon-ai/leon --skill live-tutorial -a codex`. Or copy the skill folder (skills/agent/live-tutorial in leon-ai/leon) into .agents/skills/live-tutorial in your project. Codex loads it when a task matches its description.

Can I use Live Tutorial Video Maker in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add leon-ai/leon --skill live-tutorial -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/live-tutorial, .gemini/skills/live-tutorial, .github/skills/live-tutorial and .opencode/skills/live-tutorial in your project.

What does Live Tutorial Video Maker need to run?

Going by SKILL.md and its folder, Live Tutorial Video Maker needs JavaScript for the scripts in its folder. Our summary lists: The Leon runtime with managed Node.js and bundled ffmpeg-static; An active Leon profile and session; A desktop application the agent can control. Compatibility (from SKILL.md): Leon runtime with managed Node.js, bundled ffmpeg-static, and an active profile and session..

Does Live Tutorial Video Maker access the network?

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.

Is Live Tutorial Video Maker safe to install?

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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Live Tutorial Video Maker use?

Live Tutorial Video Maker is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Live Tutorial Video Maker use?

About 1.4k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Live Tutorial Video Maker?

Skills that share tags, products or a category with Live Tutorial Video Maker: Manim Video Production (browser-use/video-use, 28k stars), Manim Explainer Videos (Prismer-AI/PrismerCloud, 1.6k stars), Embedded Video Captions (heygen-com/hyperframes, 58k stars) and Remotion Best Practices (lyonjs/shortvid.io, 147 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Live Tutorial Video Maker?

leon-ai (a GitHub organization) maintains it in leon-ai/leon, which has 17,557 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 6, 2026.

Source: leon-ai/leon on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.