cli@0.35.0

CAUTION· install only

Publisher claims: "Smithers command-line interface, MCP server, and local workflow tools" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry npm (MCP server)Publisher smthrs · publishing for 104 daysInstalls 84,797Last detonated 3d 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-11 and scored it 78/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; Access to sensitive file paths; Destructive file system command detected. 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

HIGH
Access to sensitive file pathssrc/share.js:173 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesconst PRIVATE_NESTED_NAMES = new Set([".git", ".jj", "node_modules", ".claude", ".codex", ".env"]);Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Access to sensitive file pathssrc/share.js:32 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files".env",Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Destructive file system command detectedsrc/init-command.js:92 · Destructive file system command detected* - no explicit --format / --json flagFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
HIGH
Access to sensitive file pathssrc/share.js:167 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesreturn name.startsWith("smithers.db") || PRIVATE_ROOT_NAMES.has(name) || name.startsWith(".env.");Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
Process kill commandsrc/tui.js:777 · Process kill command — agent can terminate processes// "exit" hook too) can never double-kill or double-print.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
LOW
Instructs the agent to modify its persistent memory or instruction filessrc/init-command.js:61 · Instructs the agent to modify its persistent memory or instruction files · informational: not an instruction file…"Install the curated `smithers` skill into your detected coding agents and, if a CLAUDE.md or AGENTS.md exists, append guidance on when to use smithers.sh workflows. This writes OUTSIDE the project,…Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
Process kill commandsrc/tui.js:740 · Process kill command — agent can terminate processes* exits 0. An external `kill -INT`/`-TERM` misbehaves differently: clack'sFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commandsrc/tail.js:704 · Process kill command — agent can terminate processes// only q / Enter / a kill signal can close it.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commandsrc/tui.js:1403 · Process kill command — agent can terminate processes* still executing — so the launcher must NOT kill it. (An earlier versionFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commanddist/tui.d.ts:431 · Process kill command — agent can terminate processes* user to reattach to it; commit 871e3d9e9a introduced the kill and theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commanddist/tui.d.ts:106 · Process kill command — agent can terminate processes* exit code that is not one of the interrupt teardown codes, or a hard-kill signalFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commanddist/tui.d.ts:173 · Process kill command — agent can terminate processes* exits 0. An external `kill -INT`/`-TERM` misbehaves differently: clack'sFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commandsrc/tui.js:539 · Process kill command — agent can terminate processes* exit code that is not one of the interrupt teardown codes, or a hard-kill signalFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commanddist/tui.d.ts:429 · Process kill command — agent can terminate processes* still executing — so the launcher must NOT kill it. (An earlier versionFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
File type combined with upload actionsrc/output.js:166 · File type combined with upload action — agent may exfiltrate local data filesif (input.json && !input.pretty) {Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
Process kill commandsrc/tui.js:1405 · Process kill command — agent can terminate processes* user to reattach to it; commit 871e3d9e9a introduced the kill and theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
HIGH
Access to sensitive file pathssrc/share.js:175 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesreturn PRIVATE_NESTED_NAMES.has(name) || name.startsWith(".env.");Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05

Cost to the agent

Instructions loaded
≈41 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 @smthrs/cli@0.35.0 as of 3d ago. This is the package itself, not its dependencies.

What would make this Verified

2 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim smthrs: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. 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.
  3. Destructive file system command detected≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
  4. Process kill command≈ +2 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
  5. 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 smthrsPropose a patch to the maintainer