Skills/npm/zurik

zurik@3.2.0

VERIFIED· install only

Publisher claims: "CLI tool for encrypting and decrypting sensitive project files into a single .zurik bundle." Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry npm (MCP server)Publisher apotox · publishing for 344 daysInstalls 930Last detonated 4d ago
$claude mcp add zurik -- npx -y zurik
WatchReport an issue

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-10 and scored it 80/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. 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 pathsbin/zurik.js:18 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system fileszurik init [options] Find .env files and list them in .zurik (creates it)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 pathslib/init.js:11 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files// .env-style files under `root`, as sorted "/"-separated relative paths.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
npx invocation of non-well-known packageskills/zurik/SKILL.md:10 · npx invocation of non-well-known package — may execute untrusted codeRun it with `npx zurik` (or `zurik` if it's installed). Always pass `--json` and branch on `ok` / `error.code`, never on message text.Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
LOW
Instructs the agent to modify its persistent memory or instruction filesreadme.md:123 · Instructs the agent to modify its persistent memory or instruction files · informational: not an instruction fileFor other agents, add the output to `AGENTS.md`, or add this line:Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
npx invocation of non-well-known packagelib/errors.js:8 · npx invocation of non-well-known package — may execute untrusted codeE_OLD_FORMAT: ".zurik was written by zurik 2.x or earlier; decrypt it with `npx zurik@2 decrypt` and set it up again",Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathsbin/zurik.js:251 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesif (result.files.length === 0) log('No .env files found. Add a "--- <path>" line to .zurik for each secret file.');Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
npx invocation of non-well-known packagelib/bundle.js:52 · npx invocation of non-well-known package — may execute untrusted code`${BUNDLE_FILE} was written by zurik 2.x or earlier. Run 'npx zurik@2 decrypt', delete ${BUNDLE_FILE} ` +Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathslib/init.js:8 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesconst ENV_FILE = /^\.env(\..+)?$|\.env$/; // .env, .env.local, prod.envFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Access to sensitive file pathslib/bundle.js:23 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files// --- api/.env.productionFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Access to sensitive file pathslib/bundle.js:20 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files// --- .envFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Access to sensitive file pathsskills/zurik/SKILL.md:3 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files--- name: zurik description: Encrypt, decrypt and check project secrets (.env files, keys, config) that are stored in a .zurik file. Use whenever a repo cont…Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
npx invocation of non-well-known packageskills/zurik/SKILL.md:17 · npx invocation of non-well-known package — may execute untrusted code| Protect another file (no password) | `npx zurik add <path...> --json`, then `encrypt --json` |Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathsbin/zurik.js:272 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files…s: [{ path, action: 'added'|'already-listed'|'skipped' }] }", note: "Adds every .env file found unless run interactively in a terminal" }, add: { args: "<file…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 pathsskills/zurik/SKILL.md:16 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files| Set up a repo without `.zurik` (lists every `.env` file found; no password) | `npx zurik init --dry-run --json`, confirm the list with the user, then `npx zurik init --json` |Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
npx invocation of non-well-known packagelib/bundle.js:12 · npx invocation of non-well-known package — may execute untrusted codeexport const BANNER = "# Encrypted with zurik (https://github.com/apotox/zurik). Restore: npx zurik decrypt; agent docs: npx zurik skill";Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathsbin/zurik.js:44 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesotherwise (--json, --no-input, $CI or piped stdin) it adds every .env file found.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
npx invocation of non-well-known packageskills/zurik/SKILL.md:18 · npx invocation of non-well-known package — may execute untrusted code| See what's out of sync (safe, read-only) | `npx zurik status --json` |Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Access to sensitive file pathslib/index.js:31 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system files/** Add .env files (or `files`) to .zurik, creating it if missing. No password needed.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
HIGH
Prompting user to enter sensitive credentialsskills/zurik/SKILL.md:44 · Prompting user to enter sensitive credentials — social engineering| `E_NO_PASSWORD` | Ask the user to provide the password via the environment (see above). |Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST03
MEDIUM
npx invocation of non-well-known packageskills/zurik/SKILL.md:16 · npx invocation of non-well-known package — may execute untrusted code| Set up a repo without `.zurik` (lists every `.env` file found; no password) | `npx zurik init --dry-run --json`, confirm the list with the user, then `npx zurik init --json` |Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Prompting user to enter sensitive credentialsskills/zurik/SKILL.md:28 · Prompting user to enter sensitive credentials — social engineering- Do **not** ask the user to paste the password into the chat. Do **not** use `-p <password>` or `--password <value>`: that puts it in the transcript, the shell history and the process list.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST03

Cost to the agent

Instructions loaded
≈1,145 tok
1 file · 13 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 zurik@3.2.0 as of 4d ago. This is the package itself, not its dependencies.

zurik@3.2.0 safety verdict: Verified (install only) — KillerSkills