launch-film@0.3.0
CAUTION· install onlyPublisher claims: "A launch film from a website or an App Store page: its real logo, colors, fonts and screens, rendered locally with Chrome and ffmpeg." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Nothing executable in the bundle ran; the trace covers the install step only.- Tested
- every file read, file written and host contacted by what ran
- Not tested
- use of the skill by an agent
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-14 and scored it 76/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Access to sensitive file paths; Privileged sudo command; Privileged sudo command. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 1 scenarios · 0 deviationsStatic findings
return `npx musicfit@latest ${words[0].text} --length ${+seconds.toFixed(3)} --hit ${+hit.toFixed(3)} --fps ${FPS} --out ${words[1].text}${said.length ? `, ${said.join(" and ")}` : ""}`;Fix: Pin versions and sources; vendor anything fetched at install time.npx -y [email protected] doctorFix: Pin versions and sources; vendor anything fetched at install time.npx -y [email protected] plan <url> --out film/<name>Fix: Pin versions and sources; vendor anything fetched at install time.const npx = windows ? scriptOfNpx() : ["npx"];Fix: Pin versions and sources; vendor anything fetched at install time.npx -y [email protected] looksFix: Pin versions and sources; vendor anything fetched at install time.// The next command is tried only when npx could not fetch easybrandkit; whenFix: Pin versions and sources; vendor anything fetched at install time.// brand.json read and put in the shape the film uses. Files that areFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.…rs instead of guessing. If launch-film says easybrandkit could not be fetched, npx could not download it (no network, or a registry without it): tell the user they can …Fix: Pin versions and sources; vendor anything fetched at install time.…A scene object has a `type` and its words. List every type and its fields with `npx -y [email protected] types`; icon names come from `npx -y [email protected] icons …Fix: Pin versions and sources; vendor anything fetched at install time.return { ...env, XDG_CONFIG_HOME: config };Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.…w to install ffmpeg, which comes with ffprobe (`brew install ffmpeg` on a Mac, `sudo apt install ffmpeg` on Ubuntu 22.04, Debian 12 or newer), and stop. doctor also …Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// npm's own error lines mean npx could not fetch easybrandkit (no suchFix: Pin versions and sources; vendor anything fetched at install time.const INSTALL = "brew install ffmpeg, sudo apt install ffmpeg or winget install ffmpeg";Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// On Windows npx and an installed easybrandkit are .cmd files. Node startsFix: Pin versions and sources; vendor anything fetched at install time.// Renders film.json to an MP4. Returns { output, seconds, clips, notes }.Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.return { ...env, PATH: env.PATH ? `${dir}${path.delimiter}${env.PATH}` : `${dir}${path.delimiter}/usr/bin${path.delimiter}/bin` };Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.// npm's notices and warnings, as the one npx prints as it ends when aFix: Pin versions and sources; vendor anything fetched at install time.// Chrome takes its helpers with it and npx passes it on to easybrandkit,Fix: Pin versions and sources; vendor anything fetched at install time.const bullet = /^[\u2022\u25cf\u25e6\u25aa\u2023\u2043\u2219*\-\u2013\u2014\u2713\u2714\u2605\u25b8]\s*/;Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.// started, so easybrandkit under npx and Chrome can end on their own; thoseFix: Pin versions and sources; vendor anything fetched at install time.if (!(stat.mode & 0o111)) return { trouble: "is a file without the permission to run it, which chmod +x gives", skip: true };Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.Cost to the agent
Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.
Known vulnerabilities
No advisories in OSV for launch-film@0.3.0 as of 51 min ago. This is the package itself, not its dependencies.
What would make this Verified
4 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim makersmcp: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- Privileged sudo command≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
- File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
- Unicode escape sequence detected≈ +2 on the totalPut hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.