versioncam@0.8.1
CAUTION· install onlyPublisher claims: "Record demo clips of a real web app: scripted, deterministic, re-recorded on every push." 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-12 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; 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 deviationsStatic findings
* the config, `.env.recording` and `.env`, `.versioncam/`, and any relativeFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose./process\.env\[\s*["'`]([A-Za-z_][A-Za-z0-9_]*)["'`]\s*\]/g,Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.// loaded from `.env.recording` for its own sign-in stays with the recorder.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* preview's bypass secret would be written into a file that is committed.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* The file that set `name`, `.env.recording` or `.env`, or null when theFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* Load `.env.recording`, then `.env`, before anything reads the environment.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose./process\.env\.([A-Za-z_][A-Za-z0-9_]*)/g,Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.// cloned `.env` cannot point even this one public request elsewhere.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* the config, `.env.recording` and `.env`, `.versioncam/`, and any relativeFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* the app's own `.env` carries, and keeping them apart means the recordingFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* The names this process took from `.env.recording` or `.env`, as opposed toFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* run is a prefix: the reviewer is allowed `npx versioncam frame *` andFix: Pin versions and sources; vendor anything fetched at install time.* Load `.env.recording`, then `.env`, before anything reads the environment.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* run is a prefix: the reviewer is allowed `npx versioncam frame *` andFix: Pin versions and sources; vendor anything fetched at install time."npx looks for versioncam in the directory it runs in and in the ones above it, never below.\n" +Fix: Pin versions and sources; vendor anything fetched at install time.* are the reason `.env.recording` is a separate file at all, and Vite gives aFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.lines.push("If the repository is private, its clips need the Pro plan; `npx versioncam cloud plan` says more once you are signed in.");Fix: Pin versions and sources; vendor anything fetched at install time.throw new Error(`There is no recording of "${id}". If "${id}" is a clip id, run \`npx versioncam record ${id}\` first.`);Fix: Pin versions and sources; vendor anything fetched at install time."In this order: run `npx versioncam cloud login` to create your account; " +Fix: Pin versions and sources; vendor anything fetched at install time."Run `npx versioncam --help` to see the options.\n");Fix: Pin versions and sources; vendor anything fetched at install time."`npx versioncam ci --print` shows what this command would write, and `--force` replaces the file.\n");Fix: Pin versions and sources; vendor anything fetched at install time.export const NO_CONFIG = "Run `npx versioncam init`, then `/versioncam` in your agent. The skill's first run writes the config from what it finds in the repository.\n" +Fix: Pin versions and sources; vendor anything fetched at install time.options.log?.(` uploading ${begun.needStates.length} new state(s) of ` +Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.* variable already in its environment priority over the app's own `.env` —Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."In this order: run `npx versioncam cloud login` to create your account; " +Fix: Pin versions and sources; vendor anything fetched at install time.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 versioncam@0.8.1 as of 2d 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%- Unclaimed publisher≈ +8 on the totalClaim versioncam: 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.
- Credential pass-through configuration≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- 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.