Agent skill

Nodetool Video Post

by nodetool-ai in nodetool-ai/nodetool

Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync.

AGPL-3.0Auto-check passedMedia & Creative

Install Nodetool Video Post

skills CLI
$ npx skills add nodetool-ai/nodetool --skill nodetool-video-post -a claude-code

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

GitHub CLI
$ gh skill install nodetool-ai/nodetool nodetool-video-post --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/nodetool-ai/nodetool.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/system-skills/nodetool-video-post .claude/skills/nodetool-video-post && 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
nodetool-video-post
GitHub stars
560
Token cost
~1.8k tokens
SKILL.md length
914 words
Files
1
Skills in repo
127
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync.

  • Works in 2 steps: inspect_video_production_candidates… → `accept_video_production_candidates…
  • Media & Creative work in your project
  • SKILL.md covers Pick the operation, Nothing is applied until it is…, Generating a new take for a slot and Per-tool notes, plus 3 more sections
  • Calls npm

What it does

Nodetool Video Post is an agent skill from nodetool-ai/nodetool. Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync. Covers the candidate review protocol these return.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Media & Creative. The repository describes itself as: Agent-first Creative Workspace. The licence is AGPL-3.0.

When your agent uses it

  • Media & Creative work in your project

Example prompts

  • “/nodetool-video-post”

Workflow steps

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

  1. inspect_video_production_candidates {candidates, preview?} refreshes their
  2. `accept_video_production_candidates {action, batch_id, document_id,

What it can do on your machine

Read from SKILL.md and the folder at commit 339f069. 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

    Shell commands in SKILL.md call:

    • npm

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

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    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.

Context cost

Nodetool Video Post loads about 1.8k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 914 words of instructions outside code blocks.

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

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from nodetool-ai/nodetool at commit 339f069, republished under its AGPL-3.0 licence (© nodetool-ai). 914 words, ~1,806 tokens.

Download SKILL.mdSave it as .claude/skills/nodetool-video-post/SKILL.md (or your agent's skills folder).
name
nodetool-video-post
description
Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync. Covers the candidate review protocol these return.
featured
true

Post on a saved timeline

Footage already exists and something about it has to change. These tools act on one clip of a saved timeline sequence, not on a storyboard shot and not on a loose asset.

Directing a new piece belongs to storyboard-core and its job skills. Cutting, animating, transitions and titles belong to the motion-graphics system skill: load it with load_skill {name: "motion-graphics"} before the first edit_timeline call, as it carries the full op list, the presets and the preview contract.

Pick the operation

The problemToolWhat it writes
Replace what is behind the subjectisolate_subjectA generatedMatte on that clip
Make another clip follow a moving subjecttrack_objectA document-level track others bind_to_track
The frame is the wrong aspect ratioexpand_frameAn inactive video candidate
The footage is too soft or too smallupscale_videoAn inactive video candidate
The shot has no soundvideo_to_audioAn aligned inactive audio candidate
The recorded voice is wrongrecorded_voice_replacementAn inactive audio candidate
The mouth does not match the new audiolip_syncAn inactive video candidate
A title or shape should move with the musicbake_audio_animationA custom animation on the target clip

Every tool above except bake_audio_animation takes provider and model from find_model. There is no default: an unset model fails the call rather than spending on a model nobody chose.

Nothing is applied until it is accepted

expand_frame, upscale_video, video_to_audio, recorded_voice_replacement and lip_sync all return an inactive candidate with its provenance. None of them changes the accepted take, the sequence dimensions, or the existing framing. Applying the result is a separate, explicit step:

  1. inspect_video_production_candidates {candidates, preview?} refreshes their state and optionally builds a Preview take or draft from an explicit destination-to-candidate selection. Inspection writes nothing.
  2. accept_video_production_candidates {action, batch_id, document_id, project_id, candidates, selection, targets} applies one atomic manifest. action is use_take or use_draft. Each entry in targets carries expected_target_revision, which the server rechecks before the apply, so a document that moved underneath is refused rather than overwritten.

Report the candidate ids and what each one is, then let the user choose. Never describe a candidate as applied before an accept returned.

Generating a new take for a slot

A slot that needs fresh footage rather than a repair goes through the reviewed production path, which covers all three document kinds: timeline_clip, storyboard_shot and script_line.

prepare_video_production → submit_video_production → inspect → accept.

prepare is non-mutating. It resolves linked script speech, verifies owner, project, target, references, capability route and timing, then freezes one to three stable candidate identities before any provider spend. It requires review: {status: "reviewed", plan_fingerprint} — the fingerprint of every authoring input the reviewed plan read. The route is reference_to_video, text_to_video, or audio_driven_performance, and on-camera speech (speech_mode: "on_camera") requires audio_driven_performance. submit re-runs preflight and authorization and recovers an existing request id instead of resubmitting it, so a retry after a dropped connection does not pay twice.

Show full SKILL.md (438 more words)Show less

Per-tool notes

isolate_subject sends the clip's whole source asset and reads the mask back at the clip's own source time, which is what lets a later trim, split or speed change keep the cutout aligned. A clip with a current cutout is handed it back for free unless regenerate: true, and a failed regenerate leaves the working matte in place. Tune the result with the free set_generated_matte op (invert, strength, feather, or an earlier version). Use set_matte instead for a keyhole authored from another clip.

track_object needs initial_region normalized 0..1 over the source frame plus start_ms and end_ms in absolute source milliseconds. The initial box sits at start_ms for forward and both, at end_ms for backward. Box tracks only in this build. A new run is refused before saving or spending when the provider does not implement track_object.

lip_sync consumes an accepted recorded_voice_replacement candidate: replacement_audio {asset_id, status, provenance}. Run the voice replacement, accept it, then sync.

bake_audio_animation measures a clip's audio, with an envelope follower or one pulse per onset in mode: "beats", and writes a source-anchored custom animation on another clip's property, commonly scale. The write is additive: a hand-authored pop or slide on the same channel composes with it rather than being replaced. A re-bake replaces only the curve it produced before.

source_asset_id on the native media tools is an optional pin captured before the call. A mismatch is stale and the call is refused. Pass it when anything else may be editing the document.

Check the result

  • validate_timeline {timeline_id} after every edit pass.
  • preview_timeline_frame {timeline_id, ...} composites one or more timecodes and returns a per-layer report. It is the cheap way to see a matte, a bake or an accepted take without rendering. A model3d layer needs headless Chromium: with none on the host the layer is left out and reported as a model3d_unavailable degradation, never as an empty clip.
  • compare_timeline_frames puts before and after side by side.
  • render_timeline is the paid, final pass. Do not render to check an edit.
  • Snapshot before a destructive pass with create_timeline_version. restore_timeline_version snapshots the pre-restore state first and re-validates against today's schema, so an old document may fail what it used to pass.

Verify from a shell

These are the nodetool CLI. From a NodeTool checkout the same commands run as npm run dev:nodetool -- <command>.

bash
nodetool timeline validate <timeline_id|sequence.json> --json
nodetool timeline debug <id> --interact '[{"tool":"add_track","input":{"type":"audio","name":"Music"}}]'
nodetool timeline versions list <timeline_id> --save-type manual

Rendering, playback, decode and generation are not simulated by the harness. The report says so under notSimulated.

Reference

  • The storyboard-core system skill, § Timeline of its tool contract — load_skill it for the board-to-timeline calls.

In a NodeTool checkout, these repository sources go further:

  • docs/harnesses.md § nodetool timeline validate / debug
  • docs/harnesses.md § Generated mattes
  • docs/harnesses.md § Audio-driven timeline motion

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

Files

Just SKILL.md in packages/system-skills/nodetool-video-post of nodetool-ai/nodetool.

Open the folder on GitHubat commit 339f069

Compare with similar skills

Nodetool Video Post 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.

Nodetool Video Post compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Nodetool Video Post this skillnodetool-ai/nodetool560—~1.8kAutomated safety check: PassAGPL-3.0
Guizang Social Cardsop7418/guizang-social-card-skill7.4k1 repos~7.8kAutomated safety check: PassAGPL-3.0
Weekly Changelog Videoheygen-com/hyperframes60k—~3.3kAutomated safety check: PassApache-2.0
Anthropic Brand Stylinganthropics/skills180k30 repos~559Automated safety check: PassApache-2.0
MoneyPrinterTurbo Video Generatorharry0703/MoneyPrinterTurbo129k—~2.1kAutomated safety check: WarnMIT
HyperFrames Media Useheygen-com/hyperframes60k—~2.4kAutomated safety check: PassApache-2.0

Similar skills

  • Guizang Social Cards

    op7418/guizang-social-card-skill

    Produces social card sets for Xiaohongshu and WeChat: carousels, Live Photo motion cards and puzzle layouts, and WeChat cover pairs, rendered from single-file HTML.

    7.4k GitHub starsUsed in 1 repo~7.8k tokens
    Media & CreativeAuto-check passed
  • Weekly Changelog Video

    heygen-com/hyperframes

    Turns a weekly changelog markdown file into a branded HyperFrames video with voiceover, animated mock-UI scenes and captions, using fonts, background and scripts bundled in the skill.

    60k GitHub stars~3.3k tokensUpdated today
    Media & CreativeAuto-check passed
  • Anthropic Brand Styling

    anthropics/skills

    Official

    Applies Anthropic's brand colors and fonts to artifacts such as PowerPoint slides, using fixed hex values for text and accents, Poppins headings and Lora body text.

    180k GitHub starsUsed in 30 repos~559 tokens
    Media & CreativeAuto-check passed
  • MoneyPrinterTurbo Video Generator

    harry0703/MoneyPrinterTurbo

    Installs and runs MoneyPrinterTurbo to turn a topic or script into a finished short video with voice-over, subtitles, stock footage and music.

    129k GitHub stars~2.1k tokensUpdated today
    Media & CreativeAuto-check: warnings
  • HyperFrames Media Use

    heygen-com/hyperframes

    Finds, generates and edits media for HyperFrames video projects: music, sound effects, images, icons, logos, voiceovers, captions and color grades.

    60k GitHub stars~2.4k tokensUpdated today
    Media & CreativeAuto-check passed
  • Holo Card Studio

    EverettFish/holo-card-studio

    Create collectible holographic foil cards and two-image lenticular flip cards with AI-generated full-color ukiyo-e and colored sumi-e anime artwork, layered Blender scenes, renders, GLB export, and…

    1.9k GitHub stars~1.4k tokensUpdated 18 days ago
    Media & CreativeAuto-check passed

More from nodetool-ai/nodetool

All 127 skills in this repo
  • Beat Sync Editing

    nodetool-ai/nodetool

    Cut a NodeTool timeline to music and shape its pacing — detect the beat grid, place cuts on phrases, pick a cut type, build speed ramps with time remap, and give the piece an arc.

    560 GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • Caption Titles

    nodetool-ai/nodetool

    Add and animate a consistent text layer on an existing NodeTool timeline.

    560 GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Color Motion

    nodetool-ai/nodetool

    Choose and animate colour on a NodeTool timeline, including shape and text gradients, colour grades, 3D LUTs, and dither.

    560 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Commercial Beat Sheet

    nodetool-ai/nodetool

    Write a shootable, precisely timed commercial beat sheet and store it as a NodeTool storyboard, with a consistent entity roster behind every shot.

    560 GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • Elevenlabs Audio Prompting

    nodetool-ai/nodetool

    Direct ElevenLabs speech, dialogue, sound effects and music — the bracketed audio tags v3 acts on and why the voice decides whether a tag lands, stability as the delivery dial, punctuation instead…

    560 GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Frame Composition

    nodetool-ai/nodetool

    Stage the frame on a NodeTool timeline — grids, focal placement, safe areas per aspect ratio, depth layers and parallax, camera moves, and where elements enter and leave.

    560 GitHub stars~3.5k tokensUpdated today
    Auto-check passed

Questions about Nodetool Video Post

What does Nodetool Video Post do?

Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync. Nodetool Video Post is an agent skill from nodetool-ai/nodetool. Repair or re-generate footage already on a NodeTool timeline: cutouts, tracking, outpainting, upscaling, generated sound, voice replacement, lip sync.

When should I use Nodetool Video Post?

Nodetool Video Post fits situations like: media & Creative work in your project.

How do I install Nodetool Video Post in Claude Code?

Run `npx skills add nodetool-ai/nodetool --skill nodetool-video-post -a claude-code`. Or copy the skill folder (packages/system-skills/nodetool-video-post in nodetool-ai/nodetool) into .claude/skills/nodetool-video-post in your project. Claude Code loads it when a task matches its description.

How do I install Nodetool Video Post in Codex?

Run `npx skills add nodetool-ai/nodetool --skill nodetool-video-post -a codex`. Or copy the skill folder (packages/system-skills/nodetool-video-post in nodetool-ai/nodetool) into .agents/skills/nodetool-video-post in your project. Codex loads it when a task matches its description.

Can I use Nodetool Video Post 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 nodetool-ai/nodetool --skill nodetool-video-post -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nodetool-video-post, .gemini/skills/nodetool-video-post, .github/skills/nodetool-video-post and .opencode/skills/nodetool-video-post in your project.

What does Nodetool Video Post need to run?

Going by SKILL.md and its folder, Nodetool Video Post needs the command-line tools its instructions call (npm).

Does Nodetool Video Post access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Nodetool Video Post 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. Review the folder before installing.

What licence does Nodetool Video Post use?

Nodetool Video Post is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Nodetool Video Post use?

About 1.8k tokens (SKILL.md is roughly 7.2k 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 Nodetool Video Post?

Skills that share tags, products or a category with Nodetool Video Post: Guizang Social Cards (op7418/guizang-social-card-skill, 7.4k stars), Weekly Changelog Video (heygen-com/hyperframes, 60k stars), Anthropic Brand Styling (anthropics/skills, 180k stars) and MoneyPrinterTurbo Video Generator (harry0703/MoneyPrinterTurbo, 129k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Nodetool Video Post?

nodetool-ai (a GitHub organization) maintains it in nodetool-ai/nodetool, which has 560 GitHub stars. The repository holds 127 skills in this directory. The repository was last updated on October 10, 2026.

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