Atlas / Skills / rogerchappel / launchclip

launchclipBLOCK

skills/rogerchappel/launchclip

Create reviewable launch videos and OSS promotion packets from repositories, products, briefs, and media.

Verdict
BLOCK
Grade
D
Trust score
69 /100
Version
—
Hosts
4 documented
License
MIT
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

launchclip turns an idea or source media into an editable portrait or landscape video for YouTube and social media. Its premium cinematic lane separates concept selection, retention writing, narration performance, edit planning, visual authoring, sound, and rendered-output verification so the result develops as a film rather than a text slideshow.

LaunchClip does not post, upload, publish, or treat a rendered draft as human approval. The original local-first OSS promotion-packet workflow remains available as a separate legacy lane.

Install

LaunchClip requires Node.js 22 or newer. Local video rendering also needs FFmpeg/ffprobe; launchclip doctor reports the exact local capabilities without printing credential values.

Install the published CLI from npm:

npm install --global launchclip
launchclip --version
launchclip doctor

Or build and link the CLI from source:

git clone https://github.com/rogerchappel/launchclip.git
cd launchclip
npm ci
npm run release:check
npm link
launchclip doctor

Licensing

LaunchClip's own source code is available under the MIT License. Its rendering stack includes separately licensed dependencies. In particular, Remotion uses the Remotion License, whose terms depend on the user or organisation. Review THIRD_PARTY_NOTICES.md and the current dependency terms before organisational or commercial use; LaunchClip does not relicense third-party packages.

Legacy promotion-packet quickstart

launchclip run ./my-oss-tool \
--out .launchclip/my-oss-tool \
--demo-cmd "npm run smoke" \
--demo-media "demo/screenshot.png" \
--angle "turns demo proof into launch content" \
--audience "developers shipping small OSS tools"

That creates the full dry-run packet, validates it for social review, and writes REVIEW.md.

Agent Skills

Launchclip ships two agent-facing skills for different cost and execution models:

  • [launchclip-create-video](skill
Read from source at commit 3c592a60f4ffOBSERVED · 2026-10-11
02

Install

Commands as the repository documents them. They are shown, not run.

npm install --global launchclip
git clone https://github.com/rogerchappel/launchclip.git
npm install --global launchclip
git clone https://github.com/rogerchappel/launchclip.git
03

Host compatibility

What the documentation claims. We have not run a compatibility test.

HostStatusNotes
claude-codementioned
codexmentioned
cursormentioned
openclawmentioned
04

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

# launchclip Skill

Use this skill when Roger wants to promote a local OSS repo with a reviewable packet before anything is posted.

## Workflow

1. Identify the repo path, intended audience, and approved demo command.
2. Ask before running non-trivial or state-changing demo commands.
3. Prefer the one-command dry-run workflow:

   ```bash
   launchclip run <repo> --out .launchclip/<repo-name> --demo-cmd "<command>" --angle "<social angle>" --audience "<target audience>"
   ```

4. For manual staging, run `init`, `demo`, `plan`, `captions`, `render --dry-run`, `submit-review --dry-run`, `validate`, and `review`.
5. Inspect `demo/terminal.txt` and `demo/command-receipt.json`; launchclip redacts common secret patterns, but agents should still verify no sensitive values are present.
6. Present `REVIEW.md` and `review/social-readiness.json` for human review.

## Side-Effect Boundaries

- Do not post to social media.
- Do not submit live product-videogen or Clutch Cut requests unless local config, explicit approval, and a future supported submission path are present.
- Do not publish packages, tag releases, merge PRs, or create GitHub Releases.
- Treat generated captions as drafts.
- Treat redacted receipts as review artifacts, not permission to run commands that print secrets.

## Validation

Run `launchclip validate <workspace>` before using a generated packet. Run `npm test`, `npm run smoke`, or `npm run check` before handing off a launchclip repo change.

## Approval Checkpoints

Human approval is required before final rendering, external uploads, Review Feed submission, social queueing, or posting.
05

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (7 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (16)

HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
skills/launchclip-cli/SKILL.md:202
HeyGen, read HeyGen credentials, or authorize use of a likeness. Confirm that
Why it matters. asks the agent to read credentials
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
src/recording_qa.js:181
async function localInference({ prompt, model, baseUrl = "http://127.0.0.1:11434", signal }) {
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
src/semantic_retakes.js:101
async function localInference({ prompt, schema, model, baseUrl = "http://127.0.0.1:11434", signal }) {
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
remotion/premium.jsx:24
tick: "data:audio/wav;base64,UklGRuQDAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YcADAAAAABMAQABkAF4AGwCp/zL/7/4N/5f/aQA7AbkBoQHnALz/gv6x/aL9cv7q/44ByQIcA1QCpACX/uX8MvzR/KD+CwE8A2gEEQRDAoz/2vwj+xD7vvy
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
remotion/premium.jsx:25
hit: "data:audio/wav;base64,UklGRlQCAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YTACAAAAADsAjABEAFT/kv7+/p4AKwISAgAAev3E/N3+UwI7BKYChv4y+7H7AAC+BNUF+gEV/BL5xvtOAlYHcwYAACP5sfc5/W8Ffgm5Ber8RvaI9wAA3Aij
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
remotion/social.jsx:20
click: "data:audio/wav;base64,UklGRlQCAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YTACAAAAADsAjABEAFT/kv7+/p4AKwISAgAAev3E/N3+UwI7BKYChv4y+7H7AAC+BNUF+gEV/BL5xvtOAlYHcwYAACP5sfc5/W8Ffgm5Ber8RvaI9wAA3A
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
remotion/social.jsx:21
tick: "data:audio/wav;base64,UklGRuQDAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YcADAAAAABMAQABkAF4AGwCp/zL/7/4N/5f/aQA7AbkBoQHnALz/gv6x/aL9cv7q/44ByQIcA1QCpACX/uX8MvzR/KD+CwE8A2gEEQRDAoz/2vwj+xD7vvy
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
remotion/social.jsx:22
whoosh: "data:audio/wav;base64,UklGRgQHAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YeAGAAAAAAMACgAXACgAPQBVAG8AiQCiALkAzQDcAOUA5wDhANIAugCZAG8APQADAMP/fv83//D+qv5p/i/+/v3Z/cL9u/3F/eH9D/5P/qH+A/9x/+v/b
LOWInventory / provenance · inv.binary · CWE-1104
examples/codex-hyperframes-quick-iteration/assets/cinematic_boom.wav
cinematic_boom.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
examples/codex-hyperframes-quick-iteration/assets/fast_whoosh.wav
fast_whoosh.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
examples/codex-hyperframes-quick-iteration/assets/riser_sudden_cut.wav
riser_sudden_cut.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
src/proof_capture.js:197
return createHash("sha1").update(String(value)).digest("hex").slice(0, 8);
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
test/music.test.js:61
generateMusic(temp, { duration: 12, output: "../../outside.mp3" }),
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
test/production_contracts.test.js:104
bundle.shot_id = "../../outside";
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
docs/semantic-retakes.md:10
- Explicitly select `options.model` to use an installed local Ollama model. The default endpoint is `http://127.0.0.1:11434`; the built-in adapter only accepts loopback URLs and refuses redirects. Thi
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@anthropic-ai/sdk
Why it matters. 1 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 3c592a60f4fffull audit observations/trust-audit/skill/rogerchappel__launchclip.json · Report an issue / request a re-scan
06

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-113c592a60f4ffBLOCKD69first audit
07

Questions

What does the launchclip skill do?

Create reviewable launch videos and OSS promotion packets from repositories, products, briefs, and media.

Is launchclip safe to install?

No — not without reading the findings first. The audit graded it D (69/100) and found 1 critical or high issue in the source. Each one is listed on this page with the file and line it is on.

What can launchclip access on my machine?

The audit observed that it reaches the network. Each of those is consistent with what it says it does. Secrets in the source: none found.

Which assistants does launchclip work with?

Its documentation mentions claude-code, codex, cursor and openclaw. That is what the text claims, not a compatibility test we ran.

How current is this page?

The grade is for one exact copy of the source (3c592a60f4ff), read on 2026-10-11. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement