AI Security Review
scanned 4h ago · by lpm-firewall-aiNo confirmed malicious attack surface was established. The main residual risk is install-time dependency repair and a user-invoked AI-agent platform that can install its own project hooks and spawn agent sessions.
Decision evidence
public snapshot- postinstall runs scripts/fix-better-sqlite3.cjs automatically and may curl a GitHub tarball, extract it, or run npm rebuild inside better-sqlite3.
- Runtime/CLI contains agent orchestration that can spawn Claude/Codex sessions with permission-bypass flags and write .claude/.instar project files.
- Package ships Claude skills/hooks content under .claude/ and skills/ that instruct users to install hooks/settings.
- postinstall is scoped to repairing the package dependency better-sqlite3; no writes to foreign AI-agent config or project .claude surfaces were found in lifecycle code.
- AI-agent hooks, CLAUDE.md, .instar, and settings writes are in explicit CLI init/setup/runtime paths, not import-time or npm install-time execution.
- Scanner secret hit is documentation/example regex text in skills/credential-leak-detector/SKILL.md, not a real embedded credential.
- Trojan-source hint in dist/core/upgradeAnnouncement.js did not reveal bidi/invisible control characters in inspected source.
- Network endpoints observed are package-aligned or dependency-repair endpoints: github.com/WiseLibs/better-sqlite3, instar.sh, localhost, Telegram/Slack setup URLs.
Source & flagged code
12 flagged · loading sourcePackage defines install-time lifecycle scripts.
package.jsonView on unpkgPackage contains a critical-looking secret pattern.
skills/credential-leak-detector/SKILL.mdView on unpkg · L27AWS access key ID in skills/credential-leak-detector/SKILL.md
skills/credential-leak-detector/SKILL.mdView on unpkg · L27GitHub personal access token in skills/credential-leak-detector/SKILL.md
skills/credential-leak-detector/SKILL.mdView on unpkg · L28RSA private key in skills/credential-leak-detector/SKILL.md
skills/credential-leak-detector/SKILL.mdView on unpkg · L31Package source references child process execution.
dist/threadline/PipeSessionSpawner.jsView on unpkg · L15Package source references shell execution.
dist/threadline/PipeSessionSpawner.jsView on unpkg · L281Package source references dynamic require/import behavior.
dist/memory/SemanticMemory.jsView on unpkg · L428A single source file combines environment access, network access, and code or shell execution; review context before blocking.
skills/spec-converge/scripts/publish-spec-review.mjsView on unpkg · L20Source contains bidi control or invisible Unicode characters associated with Trojan Source attacks.
dist/core/upgradeAnnouncement.jsView on unpkg · L19Package hides binary, compressed, or executable-looking payloads in test/fixture/hidden paths.
.claude/hooks/free-text-guard.shView on unpkgPackage ships non-JavaScript build or shell helper files.
.claude/hooks/free-text-guard.shView on unpkg