# VideoEssay

Turns content plus a stance into a video essay narrated by the DA, any post, idea or...

- Repository: https://github.com/danielmiessler/LifeOS (19669 stars)
- Category: Design
- License: MIT
- Last updated: 2026-10-28
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add danielmiessler/LifeOS --skill VideoEssay -g -a claude-code -y`
Codex: `npx skills add danielmiessler/LifeOS --skill VideoEssay -g -a codex -y`
Cursor: `npx skills add danielmiessler/LifeOS --skill VideoEssay -g -a cursor -y`
Gemini CLI: `npx skills add danielmiessler/LifeOS --skill VideoEssay -g -a gemini-cli -y`

## Description

Turns content plus a stance into a video essay narrated by the DA, any post, idea or feature plus a length into a short DA-narrated explainer video, or the author's own audio reading of their blog post (a recording or their voice clone) into a finished video of that post, with scripted visuals rendered on HyperFrames, presence layer, rendered and read back. USE WHEN video essay, explainer video, short video about this post, N-minute video of my blog post, make a video about this, respond to this video, argue against this in a video, debate this, video response, DA video, narrated video, turn this essay into a video, react to this interview, make a video from my audio, I recorded myself reading the post, turn this post into a video, video from my voice clone, audio to video. NOT FOR the user's camera footage or clips (Video), audio-only podcast cuts (Video), one-off animation (HyperFrames).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# VideoEssay

**Contents:** Ideal State · Intent Routing · Tools · Data & Config · Quality loop · Gotchas · Examples

The DA's own video format, in two modes, each a fully automated production that proves itself before the user sees it. Essay mode argues first, then renders. Voice mode (`run.json` `mode: "voice"`) turns the author's post, read by their recording, their voice clone or the DA reading their exact words (`run.json` `narrator` `recorded` | `clone` | `da`), into a video of the real post page scrolling with the spoken sentence highlighted, inserts directed from what the post argues (`LIFEOS/TOOLS/VideoMeaning`: MeaningMap, Direction, a two-vendor plan review), and the reader's portrait in the corner badge (the author's, or the DA's on a DA-read run).

## Ideal State

- An essay run argues before it renders: a linted, steelmanned `Essay.md` with verbatim, correctly attributed quotes reaches the user at the checkpoint (unless the ask skips it), and only then becomes `Script.json` and a render.
- A voice run narrates only the author's own words, its page reads like the live post, and every page highlight and insert is timed to the paragraph being spoken.
- Every render reads itself back before anyone sees it: `Out/verify.json` all green, and the frames and the `Out/review/` studio pass read.
- The mp4 and thumbnail reach `~/Downloads/<slug>/` only through `Deliver.ts`, after a passing ArtDirection critique and Proof receipt on those exact bytes.
- Every run stops in review state; nothing uploads from this skill. Publishing is the user's separate call through `Video`.

## Intent Routing

The rest: https://github.com/danielmiessler/LifeOS/blob/HEAD/LifeOS/install/skills/VideoEssay/SKILL.md
