AI Security Review
scanned 2h ago · by lpm-firewall-aiLPM treats this as warn-only first-party agent extension lifecycle risk. No confirmed malicious attack surface was found. The unresolved risk is explicit user-command installation of first-party Claude Code skills/agents into a project .claude directory, plus package-aligned runtime setup under ~/.notecraft.
Decision evidence
public snapshot- bin/notecraftapp.mjs defines explicit init-skill command that copies packaged skill-template/.claude into targetRoot/.claude.
- bin/notecraftapp.mjs init-skill supports --force and can overwrite conflicting .claude skill/agent files after user command.
- Packaged skill-template includes Claude Code skills and agents that can write generated components/MDX when later invoked.
- bin/notecraftapp.mjs first runtime copies package to ~/.notecraft/app-0.2.4 and runs npm install there.
- package.json has no preinstall/install/postinstall hook; only prepublishOnly runs sync-skill for publisher workflow.
- AI-agent .claude mutation is behind explicit notecraftapp init-skill, not unconsented install-time execution.
- bin/notecraftapp.mjs runtime npm install is package-aligned dependency setup in ~/.notecraft/app-<version>.
- src/dev-api/handlers.mjs restricts API/assets to localhost and uses path containment checks for note file operations.
- skill-template scanner search found no curl/wget/fetch/process.env/child_process/eval patterns.
- skill-template/.claude/skills/trendlink-design/.thumbnail is a WebP image, not executable code.
Source & flagged code
7 flagged · loading sourceThis package version adds a dangerous source file absent from the previous stored version; route for source-aware review.
bin/notecraftapp.mjsView on unpkgPackage source references child process execution.
bin/notecraftapp.mjsView on unpkg · L9Package source invokes a package manager install command at runtime.
bin/notecraftapp.mjsView on unpkg · L67Package source references weak cryptographic algorithms.
bin/notecraftapp.mjsView on unpkg · L9Package source references dynamic require/import behavior.
src/components/islands/PagefindSearch.tsxView on unpkg · L29Package ships high-entropy non-source blobs.
skill-template/.claude/skills/trendlink-design/.thumbnailView on unpkgPackage hides binary, compressed, or executable-looking payloads in test/fixture/hidden paths.
skill-template/.claude/skills/trendlink-design/.thumbnailView on unpkg