Agent skill

Faceless Explainer

by chmonitor in chmonitor/chmonitor

turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics…

GPL-3.0Auto-check: notesMedia & Creative

Install Faceless Explainer

skills CLI
$ npx skills add chmonitor/chmonitor --skill faceless-explainer -a claude-code

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

GitHub CLI
$ gh skill install chmonitor/chmonitor faceless-explainer --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/chmonitor/chmonitor.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/faceless-explainer .claude/skills/faceless-explainer && 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
faceless-explainer
GitHub stars
298
Token cost
~4.5k tokens
SKILL.md length
2,046 words
Files
17 (incl. scripts, references)
Skills in repo
53
Repo updated
First seen
Licence
GPL-3.0

At a glance

turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics…

  • Works in 8 steps: Setup and Brief → Brief (no capture) → Design System → …
  • Topic explainers
  • SKILL.md covers Step 0: Setup and Brief, Step 1: Brief (no capture), Step 2: Design System and Step 3: Storyboard and Script, plus 5 more sections
  • Runs JavaScript scripts from its folder; calls npx and node

What it does

Faceless Explainer is an agent skill from chmonitor/chmonitor. turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics, diagrams, data-viz) rather than captured. There is no URL, no website capture, and no real assets. Use this skill for topic explainers, concept breakdowns, how-tos, listicles, and narrative explainers. Do not use it for a product launch/promo (use /product-launch-video), a tour of a real website (use /website-to-video), a…

Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 20 other files, including scripts and reference files (for example `references/composition.md`, `references/motion-language.md` and `references/story-design.md`).

It sits in Media & Creative, covering Motion graphics and Product launch strategy. It works with HeyGen and GitHub. The repository describes itself as: Open-source operational advisor for ClickHouse — real-time monitoring plus AI-driven index/partition/materialized-view recommendations. The licence is GPL-3.0.

When your agent uses it

  • Topic explainers
  • Concept breakdowns
  • Narrative explainers
  • A product launch/promo (use /product-launch-video)

Example prompts

  • “/faceless-explainer”

Requirements

  • Node.js

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Setup and Brief
  2. Brief (no capture)
  3. Design System
  4. Storyboard and Script
  5. 1: Audio
  6. Frame Visual Design
  7. Build Frames
  8. Finalize

What it can do on your machine

Read from SKILL.md and the folder at commit fc39ef0. 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 11 files in scripts/ (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • npx
    • node

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

  • Network

    No URLs in SKILL.md. Its commands use npx, 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

Faceless Explainer loads about 4.5k tokens when it runs, and up to ~18k if it reads all its reference files. Until then it costs about 185 tokens; SKILL.md has 2,046 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~185
When it runs · the whole SKILL.md, loaded when a task matches
~4.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~18k

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:28
    n, and don't write keys into a per-repo `.env`. (In autonomous mode, note the status and continue offline.) See `../hype

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 chmonitor/chmonitor at commit fc39ef0, republished under its GPL-3.0 licence (© chmonitor). 2,046 words, ~4,453 tokens.

Download SKILL.mdSave it as .claude/skills/faceless-explainer/SKILL.md (or your agent's skills folder). This skill also uses 16 other files; get the full folder from GitHub.
name
faceless-explainer
description
turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics, diagrams, data-viz) rather than captured. There is no URL, no website capture, and no real assets. Use this skill for topic explainers, concept breakdowns, how-tos, listicles, and narrative explainers. Do not use it for a product launch/promo (use /product-launch-video), a tour of a real website (use /website-to-video), a GitHub PR (use /pr-to-video), captions on existing footage (use /embedded-captions), or a short unnarrated motion graphic (use /motion-graphics). If the intent is unclear, route through /hyperframes first.

media-use: Before sourcing audio/images, call /media-use to resolve BGM/SFX/images from the HeyGen catalog. Run --adopt first to register existing assets. See /media-use skill.

Faceless Explainer to HyperFrames

Use this skill to turn a body of text into an explainer video: pick a design system, plan a teaching story, and build it frame by frame in HyperFrames. Faceless means every visual is invented downstream — there is no capture step and no real asset inventory.

Confirm the route before Step 0. You are the orchestrator. Run each step, verify its gate, and only then continue. This skill is for explaining a topic from text, with no product and no website to capture. Route other intents elsewhere: a product launch/promo → /product-launch-video; a tour of a real site → /website-to-video; a GitHub PR → /pr-to-video; captions on existing footage → /embedded-captions; a short unnarrated motion graphic → /motion-graphics. If the user says only "make a video" or the route is uncertain, read /hyperframes first.

You are the orchestrator. Work in videos/<project>/. Run steps in order and pass each gate before continuing. User-gated steps are Step 0, Step 3, and Step 6. Do every step yourself except Step 5, where you dispatch one sub-agent per frame. Do not put design or motion rules here; those live in the frame-worker sub-agent, hyperframes-creative, and hyperframes-animation.

Workflow: Step 0 setup → hyperframes.json; Step 1 brief → capture/extracted/; Step 2 design system → frame.md; Step 3 storyboard/script → STORYBOARD.md and SCRIPT.md; Step 3.1 audio → audio_meta.json; Step 4 visual design → enriched STORYBOARD.md; Step 5 frames → compositions/frames/NN-*.html and index.html; Step 6 final render → renders/video.mp4.


Step 0: Setup and Brief

Goal: Lock the core video brief and create the HyperFrames project if needed.

Initialize only if hyperframes.json is missing. Name <project> from the topic in kebab-case, such as compound-interest-explained; never use workspace name or timestamp.

npx hyperframes init "videos/<project>" --non-interactive --skip-skills --example=blank

Show sign-in status before the brief — run npx hyperframes auth status and relay its output verbatim (don't paraphrase or rewrite it). It reports whether voice/BGM will use HeyGen or local engines and, when not signed in, how to sign in. If not signed in, STOP and wait for the user to choose — sign in, or say "go"/"offline" to continue with local engines — before asking the brief or anything else. Treat it as a real decision point, not a passing note; don't fold the choice into the brief question, and don't write keys into a per-repo .env. (In autonomous mode, note the status and continue offline.) See ../hyperframes-media → Preflight for the canonical guidance.

Gate: hyperframes.json exists, and angle, length, aspect ratio, and language are locked; sign-in status was shown (signed in, or continuing offline).


Step 1: Brief (no capture)

Goal: Fold the user's text into the project as the source of information. There is no website capture and no real assets — this is a faceless explainer.

Save the user's full input verbatim, then create the synthetic capture package by hand:

  • capture/extracted/visible-text.txt — the full article / notes / topic / brief, verbatim. This is the source of information, not a story template (Step 3 reshapes it).
  • capture/extracted/tokens.json — { "title": "", "description": "", "colors": [], "fonts": [] }. Fill title/description from the brief. Leave colors/fonts empty unless the user explicitly gave brand colors or fonts — then add them (the design preset supplies a complete palette regardless).

Do not run npx hyperframes capture (there is no URL). Do not create asset-descriptions.md or populate capture/assets/ — faceless visuals are invented in Steps 4-5, not captured. The one exception: if the user supplied a real image, place it under public/<basename> and note it for Step 3.

Gate: capture/extracted/visible-text.txt and capture/extracted/tokens.json exist; you can state the explainer's topic and audience in one clear sentence.


Step 2: Design System

Goal: Choose one shipped frame preset; a script turns it into this video's frame.md + caption skin.

You make the one judgment call — which preset. Read ../hyperframes-creative/references/design-spec.md and browse ../hyperframes-creative/frame-presets/; pick the preset whose look best fits the topic, tone, and audience. Then run:

bash
node <SKILL_DIR>/scripts/build-frame.mjs --preset <name> --hyperframes .

The script does the rest deterministically: copies the preset's FRAME.md → frame.md and remixes it onto any brand tokens in capture/extracted/tokens.json (brand colors mapped onto the preset's color keys by role; the preset's display + body fonts swapped for the brand's), copies the preset's caption skin to .hyperframes/caption-skin.html, and self-validates (exits 1 on a broken mapping). Proceed as soon as it exits 0 — no hand-editing of the spec.

A faceless explainer usually has no brand colors/fonts (tokens.json colors/fonts empty) → the script keeps the preset's own palette, a complete shippable design. Only when the user named brand colors/fonts add them to tokens.json before running, and only adjust frame.md by hand afterward if a mapping truly needs it.

Gate: build-frame.mjs exited 0 — frame.md exists from a named preset, and (when the preset ships one) .hyperframes/caption-skin.html exists as the caption skin source.


Step 3: Storyboard and Script

Goal: Turn the text into an approved frame-by-frame teaching plan.

Read references/story-design.md, ../hyperframes-core/references/storyboard-format.md, and ../hyperframes-core/references/script-format.md. Use them to write STORYBOARD.md and, when narration is needed, SCRIPT.md.

Use story-design.md for the explainer structure (concept / how-to / listicle / story), hook strategy, clarity techniques, emotional beats, the type-enum mapping, and VO_MODE. The video's sequence comes from narrative design, not the input text's paragraph order — reorder, merge, omit, compress. Faceless visuals are invented downstream, so frames do not carry an asset inventory: leave asset_candidates empty unless the user supplied a real public/<basename> image. Use the exact required fields from the storyboard and script references.

After drafting, show a frame-by-frame summary. In that same message ask the user two things: (a) to approve or request changes, and (b) whether they want a live preview of the storyboard scaffold (npx hyperframes preview) — open it only on a yes. Iterate until approved, and carry the preview choice to Step 6.

Gate: STORYBOARD.md exists, every frame has the required narrative fields, SCRIPT.md exists when narration is needed, and the user approved the frame-by-frame plan.


Step 3.1: Audio

Goal: Generate narration, word timings, music, and audio metadata from the approved script.

Start audio after Step 3 approval. Run it in the background, then continue to Step 4. (Sign-in status was already shown in Step 0; the engine falls back automatically.)

node <SKILL_DIR>/scripts/audio.mjs --script ./SCRIPT.md --storyboard ./STORYBOARD.md --hyperframes . --out ./audio_meta.json &

The audio script handles narration, word timings, BGM lookup from HeyGen's music library, and timing metadata. BGM mood comes from the storyboard's music: field. This uses the HeyGen Audio API for retrieval, not generation, and the same ~/.heygen credential as TTS. For provider details, read ../hyperframes-media/references/tts.md.

If there is no narration and no SCRIPT.md, skip voice generation. BGM may still run if the storyboard has a music mood.

Gate: audio job has started, or the project is marked silent.


Step 4: Frame Visual Design

Goal: Add the visual direction, layout intent, and motion choices to each storyboard frame.

Edit STORYBOARD.md in place. Do not create another storyboard. Use frame.md as the source of truth for color, type, layout feel, and style.

Read references/visual-design.md, references/composition.md, references/motion-language.md, and ../hyperframes-animation/. Use visual-design.md for required frame fields and the required ## Video direction block. Use composition.md for layout, hierarchy, focal points, and the invented-visual treatment. Use motion-language.md and ../hyperframes-animation/ for valid effects and blueprint IDs. Do not invent effect names or blueprint IDs.

For every frame, add required visual and motion fields, including effects and focal and/or roles. Because the explainer is faceless, focal/roles describe invented visual elements (a hero word, a diagram node, a data-viz series), not captured assets. Add one video-wide ## Video direction block for overall visual direction, motion style, pacing, and design rules.

Do not change story, script, transition_in, or the source text. Do not write HTML in this step. There is no asset-staging step — faceless visuals are built by the workers in Step 5. If the user supplied a real public/<basename> image, reference it by path in the relevant frame's focal/roles; otherwise nothing to stage.

Gate: every frame has effects plus focal and/or roles; ## Video direction exists.


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

Step 5: Build Frames

Goal: Build every storyboard frame as an HTML composition and assemble the playable video.

Wait for Step 3.1 audio to finish if audio was started. Then sync durations and fetch SFX; skip both if silent.

node <SKILL_DIR>/scripts/audio.mjs sync-durations --audio-meta ./audio_meta.json --storyboard ./STORYBOARD.md

node <SKILL_DIR>/scripts/audio.mjs fetch-sfx --storyboard ./STORYBOARD.md --hyperframes .

Duration sync is mechanical: real voice duration wins; silent frames keep estimates; never hand-edit synced durations.

Before dispatch, read sub-agents/frame-worker.md and ../hyperframes-core/references/subagent-dispatch.md. Dispatch one sub-agent per frame, in parallel if possible; otherwise run workers in waves. Each worker gets exactly one frame.

Each worker context must include PROJECT_DIR, frame_id, canvas size, caption status and keep-out band if captions are enabled, and ANIM_DIR as the absolute path to ../hyperframes-animation/. Each worker reads frame.md, its own ## Frame N block from STORYBOARD.md, and the recipe body for each cited effect or blueprint ID. Each worker writes only compositions/frames/NN-*.html. Workers must never edit STORYBOARD.md.

As each worker returns, the orchestrator marks that frame as animated in STORYBOARD.md.

After audio timings exist, build captions in the background and assemble the index:

node <SKILL_DIR>/scripts/captions.mjs build --storyboard ./STORYBOARD.md --audio-meta ./audio_meta.json --hyperframes . --out ./caption_groups.json &

node <SKILL_DIR>/scripts/assemble-index.mjs --storyboard ./STORYBOARD.md --hyperframes .

captions.mjs uses the project's .hyperframes/caption-skin.html (copied in Step 2) as the caption look, injecting brand tokens from frame.md; with no skin present it renders the built-in default pill. captions: skipped (<reason>) is valid. Continue without captions when explicitly skipped.

Gate: every frame is marked animated, index.html exists, and captions are built or explicitly skipped.


Step 6: Finalize

Goal: Verify the assembled video, get user approval, and render the final MP4.

Inject transitions, run checks, pause for review, then render.

node <SKILL_DIR>/scripts/transitions.mjs inject --storyboard ./STORYBOARD.md --hyperframes .

node <SKILL_DIR>/scripts/transitions.mjs verify --storyboard ./STORYBOARD.md --index ./index.html

npx hyperframes lint

npx hyperframes validate

npx hyperframes inspect

npx hyperframes snapshot --at <frame-midpoints>

snapshot stitches the captured frames into one contact sheet (snapshots/contact-sheet.jpg). Glance at it; if nothing is obviously broken, move on — don't linger here.

If a command fails, surface stderr and stop — don't pile on recovery commands. Fix it yourself: the cheapest safe edit to compositions/frames/NN-*.html, then rerun the failed check.

Known false-positive — do not chase it. inspect may report a handful of text_box_overflow errors of ~1–4px on the caption highlight words (selector #caption-word-* / .caption-line). The caption pill uses a deliberately snug line-height (set once in scripts/captions.mjs) and has no overflow:hidden, so a heavy display glyph's ink spills a few px into the pill's own padding — nothing is actually clipped. Treat these as expected and proceed. Do not inflate the caption line-height (it balloons the pill, which is worse). Only act on a text_box_overflow when it names a frame element (#el-NN-*), not a caption word.

After checks pass, pause for user review. The video is assembled, viewable, and editable in Studio. Manage preview only once across Step 3 and Step 6: open it if the user asked earlier, offer it if they declined earlier, and do not ask again if they are already reviewing in Studio.

Preview: npx hyperframes preview

Render only after user approval:

npx hyperframes render --skill=faceless-explainer --quality high --output renders/video.mp4

Do not rerun lint, validate, inspect, or snapshot after rendering unless the user asks.

Gate: lint, validate, and inspect passed before render; user approved at the review pause; renders/video.mp4 exists. Final reply states MP4 path and final duration.


Quick Reference

Formats: landscape 1920x1080 by default; portrait 1080x1920; square 1080x1080. Set the format once in the storyboard frontmatter.

Faceless deltas vs a captured-asset workflow: no Step 1 capture (synthetic tokens.json + visible-text.txt); no asset-descriptions.md and no capture/assets/; no asset-staging in Step 4; asset_candidates empty by default; every visual is invented by the Step 5 workers (typography / abstract graphics / diagrams / data-viz). A user-supplied public/<basename> image is the only real asset path.

Background scripts: the workflow ships only these under scripts/: build-frame for adopting + brand-remixing a frame preset into frame.md (+ caption skin); audio for TTS, transcription, BGM, SFX, and duration syncing; captions; transitions for inject and verify; and assemble-index. Everything else is the hyperframes CLI.

ReadWhen
[../hyperframes-creative/frame-presets/](../hyperframes-creative/frame-presets/)Step 2: choose and adopt a frame preset.
[../hyperframes-creative/references/design-spec.md](../hyperframes-creative/references/design-spec.md)Step 2: apply brand tokens correctly.
[references/story-design.md](references/story-design.md)Step 3: plan the explainer story.
[../hyperframes-core/references/storyboard-format.md](../hyperframes-core/references/storyboard-format.md)Step 3: write STORYBOARD.md.
[../hyperframes-core/references/script-format.md](../hyperframes-core/references/script-format.md)Step 3: write SCRIPT.md.
[../hyperframes-media/references/tts.md](../hyperframes-media/references/tts.md)Step 3.1: choose or understand TTS providers.
[references/visual-design.md](references/visual-design.md)Step 4: enrich the storyboard visually.
[references/composition.md](references/composition.md)Step 4: judge composition.
[references/motion-language.md](references/motion-language.md)Step 4: judge motion language.
[../hyperframes-animation/](../hyperframes-animation/)Step 4: cite effect and blueprint IDs.
[sub-agents/frame-worker.md](sub-agents/frame-worker.md)Step 5: dispatch per-frame workers.
[../hyperframes-core/references/subagent-dispatch.md](../hyperframes-core/references/subagent-dispatch.md)Step 5: dispatch sub-agents safely.

© chmonitor, GPL-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

SKILL.md and 16 other files (scripts, references) in .agents/skills/faceless-explainer of chmonitor/chmonitor.

  • SKILL.md
  • references/composition.md
  • references/motion-language.md
  • references/story-design.md
  • references/visual-design.md
  • scripts/assemble-index.mjs
  • scripts/audio.mjs
  • scripts/build-frame.mjs
  • scripts/captions.mjs
  • scripts/lib/assets.mjs
  • scripts/lib/dimensions.mjs
  • scripts/lib/storyboard.mjs
  • scripts/lib/tokens.mjs
  • scripts/lib/transition-registry.mjs
  • scripts/lib/transitions.json
  • scripts/transitions.mjs
  • sub-agents/frame-worker.md

Open the folder on GitHubat commit fc39ef0

Compare with similar skills

Faceless Explainer 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.

Faceless Explainer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Faceless Explainer this skillchmonitor/chmonitor298—~4.5kAutomated safety check: NotesGPL-3.0
HyperFrames Video Entry Pointheygen-com/hyperframes58k3 repos~5.2kAutomated safety check: PassApache-2.0
Promo Creator Skillskangarooking/promo-creator-skills1022 repos~900Automated safety check: PassMIT
PR To Videococo-research/coco473—~7.8kAutomated safety check: NotesCustom licence
Video To Gifcognyai/claude-code-marketing-skills104—~2kAutomated safety check: NotesNone
Product Launch Videoheygen-com/hyperframes58k3 repos~8.3kAutomated safety check: NotesApache-2.0

Similar skills

  • HyperFrames Video Entry Point

    heygen-com/hyperframes

    Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.

    58k GitHub starsUsed in 3 repos~5.2k tokens
    Media & CreativeAuto-check passed
  • Promo Creator Skills

    kangarooking/promo-creator-skills

    产品宣传片制作总控 skill pack。用于从产品说明、官网、应用截图或 GitHub 仓库制作 60-90 秒宣传视频,按阶段完成 brief、storyboard、素材、HyperFrames 剪辑、BGM 设计和交付。当用户要做宣传片、产品视频、项目介绍视频、launch video、开源项目 promo、BGM 卡点或真实软件界面宣传片时使用。

    102 GitHub starsUsed in 2 repos~900 tokens
    Media & CreativeAuto-check passed
  • PR To Video

    coco-research/coco

    A skill your agent uses when the user wants a GitHub PR (URL, owner/repoN, or 'this PR') made into a code-change explainer video from its diff and commits: changelog, feature reveal, fix, or refactor.

    473 GitHub stars~7.8k tokensUpdated today
    Media & CreativeAuto-check: notes
  • Video To Gif

    cognyai/claude-code-marketing-skills

    Convert an MP4 (e.g. An agent skill from cognyai/claude-code-marketing-skills.

    104 GitHub stars~2k tokensUpdated 3 mo ago
    Media & CreativeAuto-check: notes
  • Product Launch Video

    heygen-com/hyperframes

    Turns a product URL, script or brief into a launch or promo video built frame by frame in HyperFrames, from brand capture and story design to rendering.

    58k GitHub starsUsed in 3 repos~8.3k tokens
    Media & CreativeAuto-check: notes
  • Hyperframes Product Launch Video

    Varnan-Tech/opendirectory

    Elite agent skill for creating premium "Product Launch Videos" using Hyperframes.

    672 GitHub stars~1k tokensUpdated 1 mo ago
    Media & CreativeAuto-check passed

More from chmonitor/chmonitor

All 53 skills in this repo
  • Hyperframes Creative

    chmonitor/chmonitor

    Non-animation creative direction for HyperFrames videos. An agent skill from chmonitor/chmonitor.

    298 GitHub starsUsed in 5 repos~1.3k tokens
    Auto-check passed
  • Hyperframes Media

    chmonitor/chmonitor

    Audio and media assets for HyperFrames compositions, produced by one shared audio engine (scripts/audio.mjs) — multi-provider TTS (HeyGen / ElevenLabs / Kokoro local), background music + sound…

    298 GitHub starsUsed in 1 repo~2.8k tokens
    Auto-check: notes
  • Remotion To Hyperframes

    chmonitor/chmonitor

    Port an existing Remotion (React) composition to HyperFrames HTML.

    298 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Music To Video

    chmonitor/chmonitor

    A skill your agent uses when the user has a music track (an audio file, or a video to pull audio from) and wants a beat-synced HyperFrames video, calm to hard-hitting.

    298 GitHub starsUsed in 1 repo~4k tokens
    Auto-check: notes
  • Hyperframes Animation

    chmonitor/chmonitor

    All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus…

    298 GitHub starsUsed in 2 repos~1.8k tokens
    Auto-check passed
  • Product Launch Video

    chmonitor/chmonitor

    turn a product or marketing URL, pasted script, or brief into a product launch video, including SaaS promos, feature reveals, app launches, company promos, and product marketing videos.

    298 GitHub stars~4.4k tokensUpdated yesterday
    Auto-check: notes

Works with

Questions about Faceless Explainer

What does Faceless Explainer do?

turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics…. Faceless Explainer is an agent skill from chmonitor/chmonitor. turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video, up to ~3 min (sweet spot 30-90s), where every visual is invented (typography, abstract graphics, diagrams, data-viz) rather than captured.

When should I use Faceless Explainer?

Faceless Explainer fits situations like: topic explainers; concept breakdowns; narrative explainers; A product launch/promo (use /product-launch-video).

How do I install Faceless Explainer in Claude Code?

Run `npx skills add chmonitor/chmonitor --skill faceless-explainer -a claude-code`. Or copy the skill folder (.agents/skills/faceless-explainer in chmonitor/chmonitor) into .claude/skills/faceless-explainer in your project. Claude Code loads it when a task matches its description.

How do I install Faceless Explainer in Codex?

Run `npx skills add chmonitor/chmonitor --skill faceless-explainer -a codex`. Or copy the skill folder (.agents/skills/faceless-explainer in chmonitor/chmonitor) into .agents/skills/faceless-explainer in your project. Codex loads it when a task matches its description.

Can I use Faceless Explainer 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 chmonitor/chmonitor --skill faceless-explainer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/faceless-explainer, .gemini/skills/faceless-explainer, .github/skills/faceless-explainer and .opencode/skills/faceless-explainer in your project.

What does Faceless Explainer need to run?

Going by SKILL.md and its folder, Faceless Explainer needs JavaScript for the scripts in its folder and the command-line tools its instructions call (npx and node). Our summary lists: Node.js.

Does Faceless Explainer access the network?

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

Is Faceless Explainer safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. 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 Faceless Explainer use?

Faceless Explainer is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Faceless Explainer use?

About 4.5k tokens (SKILL.md is roughly 18k 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 13k tokens, read only when the agent opens those files.

What are the alternatives to Faceless Explainer?

Skills that share tags, products or a category with Faceless Explainer: HyperFrames Video Entry Point (heygen-com/hyperframes, 58k stars), Promo Creator Skills (kangarooking/promo-creator-skills, 102 stars), PR To Video (coco-research/coco, 473 stars) and Video To Gif (cognyai/claude-code-marketing-skills, 104 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Faceless Explainer?

chmonitor (a GitHub organization) maintains it in chmonitor/chmonitor, which has 298 GitHub stars. The repository holds 53 skills in this directory. The repository was last updated on October 5, 2026.

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