facial-and-lipsync

facial-and-lipsync is a skill for Claude Code from ouzlifaneyassine1-dot/onyx-engine. It costs 104 tokens per session (4,949 once invoked), scanned A, a copy of facial-and-lipsync, MIT.

A system that makes a character’s mouth and face move in time with recorded or generated speech. It converts spoken sounds into mouth shapes and can add expressions such as smiling, frowning, or surprise.

In plain words
What is it for?
Use it to create talking characters, voice-over scenes, and animated heads with speech-synced mouth and facial expressions.
Why use it?
It removes the need to animate every mouth movement by hand, while avoiding a character that speaks without matching facial motion.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: positional $N argument; mentions Claude Code; mentions Codex.

Part of the onyx plugin — 77 skills, 1 command, 2 hooks, 1 MCP server shipped together

Good fit Use it to create talking characters, voice-over scenes, and animated heads with speech-synced mouth and facial expressions.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync
Install

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.

Any agent
npx skills add ouzlifaneyassine1-dot/onyx-engine --skill facial-and-lipsync
Clone the repo
git clone --depth 1 https://github.com/ouzlifaneyassine1-dot/onyx-engine

Made for: Claude Code.

Or install onyx, the plugin that ships this one along with the rest of its 77 skills, 1 command, 2 hooks, 1 MCP server.

Wrote 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.

agentmods badge for facial-and-lipsync

README.md
[![agentmods](https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync/github.svg)](https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync)
Your own site
<a href="https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync"><img src="https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync/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.

agentmods 80×15 button for facial-and-lipsync

Your own site · 80×15
<a href="https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync"><img src="https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/facial-and-lipsync.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 104 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,949 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 88% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00104 $0.04949
Opus 5 $0.00052 $0.02475
Sonnet 5 $0.00021 $0.00990
Haiku 4.5 $0.00010 $0.00495

Measured 10d ago against content hash 5effa698fdee, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

facial-and-lipsync scanned grade A with 0 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 10d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

88% identical to facial-and-lipsync — 71 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/animation/facial-and-lipsync/SKILL.md · 283 lines

How it starts

The opening of the file, as written. The whole thing — 283 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Facial Animation & Lipsync

Half generative, half authored. The generative half: an audio file (TTS via onyx_generate_audio with capability: "text_to_speech") goes through a phoneme-extraction tool (onyx does NOT wrap one — you run it externally), out comes a viseme timeline — a list of { phoneme, start_time, duration } triples. The authored half: the character's face mesh must have BlendShapes named for the standard viseme set, or the timeline has nothing to drive. Without both halves, you get a talking robot.

The 2026 production stack:

  1. Audio in.wav/.mp3 from onyx_generate_audio({capability: "text_to_speech", ...}) or imported VO.
  2. Phoneme extraction — done OUTSIDE onyx. Recommended: Rhubarb Lip Sync (open source, the industry standard for game-dev lipsync; outputs JSON with mouth-shape cues over time). Alternatives: gentle, allosaurus, or a Whisper-phoneme model on Replicate / Hugging Face. There is no onyx_* MCP for this in the current engine.
  3. Viseme mapping — phonemes / Rhubarb cues → Oculus / Apple ARKit viseme set (15 standard shapes covers English).
  4. BlendShape driver — at runtime, lerp the mesh's BlendShape weights along the timeline, synced to audio playback.
  5. Optional emotional layer — separate BlendShape track for smile, brow_raise, eye_squint etc., authored in code or at clip-edit time.

When to use this skill

  • NPC has voice lines and the mouth doesn't move.
  • Cinematic with VO that needs lipsync.
  • "Make him sing the lyrics."
  • Animating expressions on a face that has BlendShapes (Meshy character heads ship with the ARKit-52 set by default).
  • Reactive face: smile when player gives gold, scowl when attacked.

When NOT to use this skill

  • Character has no face / no BlendShapes (helmeted soldier, robot, mascot). Hard-skip to body language via onyx:animation/generate-motion.
  • The dialogue is written but not yet voiced — generate audio first via onyx_generate_audio({capability: "text_to_speech", ...}). Lipsync without audio has nothing to sync to.
  • Pre-rendered cinematic from external DCC. Lipsync is in the rendered video, not the engine.

Read the full file on GitHub · 283 lines

Changes

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.

  1. 10d ago First seen · 283 lines · 104 tokens per session scan A 5effa698fdee

Subscribe to this mod's changes

facial-and-lipsync is a skill published in the GitHub repository ouzlifaneyassine1-dot/onyx-engine (0 stars, last pushed 2mo ago), licensed MIT. It adds 104 tokens to every session and 4,949 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. It is 88% identical to facial-and-lipsync, differing in 71 lines, and is treated as a copy.

Related

Other skills, from other repositories

talking-head-recut

Package an existing talking-head / interview / podcast video with timed, designed GRAPHIC OVERLAY cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, picture-in-picture — synced to the transcript, on a 16:9 / 9:16 / 4:5 canvas of your choice; the clip plays untouched underneath. Trigger on…

heygen-com/hyperframes · 112 tokens

embedded-captions

A workflow for adding captions or subtitles to an existing single-person talking-head video without changing the footage. Captions can appear as ordinary subtitles, behind the speaker, or as stylized visual effects.

heygen-com/hyperframes · 120 tokens

faceless-explainer

Turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video: there is no site or footage to capture, so the visuals are invented per scene (typography, abstract graphics, diagrams, data-viz). Use for topic explainers, concept breakdowns, how-tos, listicles. Not a video built from a…

heygen-com/hyperframes · 98 tokens

pr-to-video

Turn a GitHub pull request (a PR URL, owner/repo#N, or 'this PR' in a checked-out repo) into a code-change explainer video — changelog, feature reveal, fix, or refactor walkthrough built from the diff, commits, and files: the input is a code change, not a website. Not a product promo (/product-launch-video) or a no-PR…

heygen-com/hyperframes · 104 tokens

slideshow

Author a HyperFrames slideshow — a presentation, pitch deck, or interactive deck with discrete slides, fragment reveals, branching, hotspot navigation, and built-in presenter mode with speaker notes; also converts an existing page into a deck. Output is a navigable deck, not a rendered MP4. If the user didn't…

heygen-com/hyperframes · 83 tokens

hyperframes-audio

Use when audio already placed in a HyperFrames composition needs to be mixed: fade-in/fade-out, crossfade, track gain or volume, volume automation, ducking, a music bed that fights a voiceover (voiceover carve), effects on a track (EQ, compressor, limiter, gate, saturation, delay, reverb, chorus, phaser, bitcrush)…

heygen-com/hyperframes · 165 tokens