Skills/npm/motion-skills

motion-skills@0.1.6

CAUTION· install only

Publisher claims: "The engine behind Motion Skills: your coding agent writes the film, scores it, and you point at the frame to change it." Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry npm (MCP server)Publisher hideewsj · publishing for 20 daysInstalls 1,461Last detonated 2d ago

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-12 and scored it 73/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: Pipe-to-shell pattern; Access to sensitive file paths. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 0 s · 1 scenarios · 0 deviations
t+CategoryObserved action
0.0sprocessno install scripts in bundle
0.0sprocessscript backend runs setup only
0.0sprocessscript backend runs setup only
0.0sprocessno install scripts to re-run

Static findings

MEDIUM
Remote installer piped to shellcli/lib/audit.js:24 · Remote installer piped to shell// A pipe inside a Markdown table cell is written \| (a command like `curl … | bash`); match it as the plain pipe.Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST07
MEDIUM
npx invocation of non-well-known packagecli/lib/export.js:288 · npx invocation of non-well-known package — may execute untrusted code<div class="code cmd"><pre id="demo">npx motion-skills demo</pre><button class="copy" data-copy="demo"></button></div>Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagecli/mo.js:554 · npx invocation of non-well-known package — may execute untrusted codereturn out(`${r.dir}\n index.html open it, or put the folder on any static host (GitHub Pages, Vercel, npx serve)\n source.zip ${r.files.length} files — unzip and run mo studio ${r.name}`);Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
File type combined with upload actioncli/lib/cut.js:224 · File type combined with upload action — agent may exfiltrate local data fileslines.push('', 'Check the plan, then `mo cut <file> --render`. Edit `plan.json` (`keep` is in source seconds) to put a cut back; a deliberate pause goes in `keep` as it is.');Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
npx invocation of non-well-known packagecli/lib/export.js:301 · npx invocation of non-well-known package — may execute untrusted code…n-skills: "' + t + '".\\nSource: ' + url + ' (download and unzip it, then run \`npx motion-skills studio ' + D.name + '\` so I can watch and point at the frame while you work).\…Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
LOW
HTML that renders invisible but is read by the agentstudio/index.html:49 · HTML that renders invisible but is read by the agent · informational: not an instruction file<div data-zh="还没有 Agent 在接单。在你的 Agent 里说「处理 motion-skills 的评论」,或在终端运行:">No agent is picking up comments yet. Tell your agent "handle the motion-skills comments"Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
File type combined with upload actioncli/lib/export.js:123 · File type combined with upload action — agent may exfiltrate local data filesfor (const f of ['Inter-var.woff', 'NotoSansSC-500.woff', 'OFL.txt']) put(`fonts/${f}`, readFileSync(join(PKG, 'fonts', f)));Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
CRITICAL
Pipe-to-shell patterncli/lib/audit.js:24 · Pipe-to-shell pattern — downloads and immediately executes remote code// A pipe inside a Markdown table cell is written \| (a command like `curl … | bash`); match it as the plain pipe.Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST06
MEDIUM
npx invocation of non-well-known packagecli/lib/export.js:302 · npx invocation of non-well-known package — may execute untrusted codezh: { copy: '复制', copied: '已复制', prompt: (t, url) => '用 motion-skills 复刻这部片:《' + t + '》。\\n源码:' + url + '(下载解压后运行 \`npx motion-skills studio ' + D.name + '\`,我边看边指着画面改)。\\n保留好的部分,把它改成:' },Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagecli/lib/export.js:263 · npx invocation of non-well-known package — may execute untrusted code<code>npx serve .</code>Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathscli/lib/export.js:16 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files// Dot-files and dot-folders never ship (.env, .claude/, .git/…): the share page and its source.zip are public.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
Process kill commandcli/lib/cdp.js:32 · Process kill command — agent can terminate processes// Ctrl-C or a kill does not run 'exit' handlers: what must not be left behind (browsers, temp profiles, a render'sFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
npx invocation of non-well-known packagecli/lib/export.js:287 · npx invocation of non-well-known package — may execute untrusted code<div class="code cmd"><pre id="skill">npx skills add ${esc(SKILL)}</pre><button class="copy" data-copy="skill"></button></div>Fix: Pin versions and sources; vendor anything fetched at install time.
AST06

Cost to the agent

Instructions loaded
≈56 tok
1 file · 81 in bundle

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 motion-skills@0.1.6 as of 2d ago. This is the package itself, not its dependencies.

What would make this Verified

7 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Pipe-to-shell pattern≈ +9 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
  2. Unclaimed publisher≈ +8 on the totalClaim hideewsj: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  3. 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.
  4. Remote installer piped to shell≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
  5. npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
  6. 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.
Publish a new version to npm, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim hideewsjPropose a patch to the maintainer