nanoclip-cutting-room
Turn long footage (podcast, interview, stream, recording) into ready-to-post vertical shorts. Use when the user points at a long video and wants short clips — "cut this into shorts", "make clips from this recording", "turn this podcast into verticals". Needs the NanoClip CLI (analysis) and HyperFrames (rendering). NOT for editing an existing short, generating footage, or plain transcription.
含まれるファイル(85)
- SKILL.md4.0 KB
- .claude-plugin/marketplace.json723 B
- .claude-plugin/plugin.json641 B
- .gitignore194 B
- agents/composer.md2.8 KB
- agents/finisher.md2.8 KB
- docs/hero-slider.gif4.6 MB
- fixtures/cast/crops/cl-juno-0.jpg6.0 KB
- fixtures/cast/crops/cl-juno-1.jpg5.8 KB
- fixtures/cast/crops/cl-juno-2.jpg6.4 KB
- fixtures/cast/crops/cl-mars-0.jpg5.0 KB
- fixtures/cast/crops/cl-mars-1.jpg4.6 KB
- fixtures/cast/crops/cl-mars-2.jpg4.7 KB
- fixtures/cast/crops/cl-rio-0.jpg4.8 KB
- fixtures/cast/crops/cl-rio-1.jpg4.2 KB
- fixtures/cast/crops/cl-rio-2.jpg4.9 KB
- fixtures/cast/frames/duo.jpg46.1 KB
- fixtures/cast/frames/solo-juno.jpg99.7 KB
- fixtures/cast/frames/solo-mars.jpg69.3 KB
- fixtures/cast/frames/solo-rio.jpg65.7 KB
- fixtures/cast/frames/wide.jpg40.8 KB
- fixtures/cast/juno.jpg23.9 KB
- fixtures/cast/mars.jpg17.6 KB
- fixtures/cast/rio.jpg15.5 KB
- fixtures/catalog_sample.json9.2 KB
- fixtures/digest_golden.json15.8 KB
- fixtures/README.md2.8 KB
- fixtures/transcript_v2.json158.3 KB
- fixtures/vision_v2.json719.9 KB
- LICENSE1.1 KB
- README.md6.3 KB
- references/compose-short.md8.6 KB
- references/compose.md13.9 KB
- references/digest.md7.1 KB
- references/editorial.md10.1 KB
- references/intake.md10.4 KB
- references/iterate.md4.6 KB
- references/reframe.md17.9 KB
- references/screen.md8.1 KB
- screen/app.js36.7 KB
- screen/assets/logo-mark.svg2.3 KB
- screen/DESIGN.md22.9 KB
- screen/index.html12.7 KB
- screen/lib.mjs2.5 KB
- screen/style.css50.7 KB
- scripts/announce.mjs3.5 KB
- scripts/captions.mjs5.0 KB
- scripts/catalog.mjs6.3 KB
- scripts/demo.mjs2.4 KB
- scripts/digest.mjs26.7 KB
- scripts/embed-spike.mjs2.2 KB
- scripts/grid.mjs657 B
- scripts/make-demo-fixtures.mjs12.6 KB
- scripts/mezzanine.mjs9.9 KB
- scripts/player-probe.mjs12.1 KB
- scripts/preflight.mjs3.4 KB
- scripts/prefs.mjs4.3 KB
- scripts/README.md4.2 KB
- scripts/reframe-spike.mjs3.8 KB
- scripts/reframe.mjs9.5 KB
- scripts/render.mjs5.2 KB
- scripts/replay.mjs8.9 KB
- scripts/scaffold.mjs23.4 KB
- scripts/server.mjs8.1 KB
- scripts/split-spike.mjs3.6 KB
- scripts/switch-lab.mjs5.7 KB
- scripts/switch-scan.mjs3.1 KB
- scripts/test/announce.test.mjs5.6 KB
- scripts/test/captions.test.mjs8.1 KB
- scripts/test/catalog.test.mjs4.7 KB
- scripts/test/cli.test.mjs3.5 KB
- scripts/test/demo.test.mjs971 B
- scripts/test/digest.test.mjs33.9 KB
- scripts/test/grid.test.mjs583 B
- scripts/test/mezzanine.test.mjs8.3 KB
- scripts/test/preflight.test.mjs2.2 KB
- scripts/test/prefs.test.mjs3.2 KB
- scripts/test/reframe.test.mjs8.4 KB
- scripts/test/render.test.mjs7.0 KB
- scripts/test/replay.test.mjs3.4 KB
- scripts/test/scaffold.test.mjs28.1 KB
- scripts/test/screenlib.test.mjs4.6 KB
- scripts/test/server.test.mjs5.7 KB
- scripts/test/watcher.test.mjs9.3 KB
- scripts/watcher.mjs14.3 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
nanoclip-cutting-room — router
What this is
NanoClip is the intelligence (transcript, diarization, face clustering, active-speaker detection, scene cuts). HyperFrames is the rendering engine (HTML compositions → render). This skill is the editor between them. The promise: point it at a recording, approve a quote measured in cents, get three shorts you'd actually post, ask for more in plain language.
Where things live
- Skill folder — the directory holding this
SKILL.md(typically~/.claude/skills/nanoclip-cutting-room). Everynode scripts/<x>.mjsin this file and inreferences/is relative to it: runnode <skill folder>/scripts/<x>.mjsfrom wherever you are. Never copy the scripts next to the footage. - Working folder — the folder holding the user's footage (usually the cwd). All run
output goes to
<working folder>/cutting-room/(plan.json, data, drafts, renders).
The flow
0 PREFLIGHT node scripts/preflight.mjs — node/ffmpeg, installs the NanoClip CLI
from npm when missing, warms the pinned HyperFrames version
1 CARDS pick video · language · key check (conditional)
2 INTAKE mezzanine rule → upload → server quote
3 SPEND GATE card with exact USD → start --approve (CLI refuses overruns)
4 THE SCREEN opens in browser; watcher waits — zero agent tokens
5 DATA LANDS digest.mjs unifies payloads; cast narrated in chat
6 CUT editorial pass (references/editorial.md) → plan.json → scaffold
7 PREVIEW the clips embed in the Screen (hyperframes play behind them)
8 ITERATE all steering happens in chat
9 SHIP Finisher gate → local render → vertical .mp4s · prefs updated
Run the preflight before anything else in a fresh session: it verifies node and
ffmpeg/ffprobe, installs nanoclip from npm when the CLI is missing, reports its auth
state (auth itself is the user's step — see Non-negotiables), and warms the pinned
hyperframes version so the first render never stalls on a download.
Stage playbooks (load lazily, one at a time)
| Stage | Reference |
|---|---|
| Cards + upload + spend gate | references/intake.md |
| The Screen (server, SSE, catalog) | references/screen.md |
| Digest (fusion join, cast naming, thumbs, gap frames) | references/digest.md |
| Editorial pass (what makes a clip) | references/editorial.md |
| Compose (extract, reframe, scaffold, captions, players) | references/compose.md |
| Iterate & ship (chat loop, Finisher, render) | references/iterate.md |
Every stage above is built and has run end-to-end on real footage — intake through delivery renders. Do not improvise around a playbook; when something is out of scope, say so.
Non-negotiables (locked product decisions)
- Money moves only through the spend gate: exact USD per line item, dispatch with
--approve <exact>, the CLI refuses live overruns. Every auto-decision gets one chat line. - Zero agent tokens while analyses cook: the watcher uses
get --waitper analysis (statusreturns a very large payload — rare fallback only). plan.json(schemacutting-room/plan@2) is the contract: pointers, never payloads; caption block singular, palette plural; Claude edits plan and compositions, the screen never does.- The agent never handles the NanoClip key; the user runs
nanoclip auth loginthemselves. - Chat is the editor — no in-browser editing tools.
fixtures/README.md documents the synthetic demo payloads the tests and the replay
demo run on.
レビュー
まだレビューはありません。使ってみた感想をお寄せください。