AI Security Review
scanned 3h ago · by lpm-firewall-aiLPM treats this as warn-only first-party agent extension lifecycle risk. No confirmed malicious attack surface; the package is a first-party agent setup CLI that explicitly writes AI-agent configuration when invoked. This creates lifecycle/control-surface risk but not unconsented install-time hijack.
Decision evidence
public snapshot- dist/cli/index.js registers user-invoked init/sync/update/mcp commands that generate agent configuration into repos.
- dist/cli/index.js emits Claude Code and Cursor control-surface files including .claude/settings.json, .claude/hooks/pretooluse-allowlist.mjs, .cursor/hooks/subagent-guard.mjs, .mcp.json, .cursor/mcp.json, and .vscode/mcp.json.
- dist/cli/index.js writes Claude hooks that can echo hatch3r agent activation directives and, when worktree support is enabled, run npx hatch3r worktree-setup.
- dist/cli/index.js includes update-notifier runtime update checks unless HATCH3R_NO_UPDATE_CHECK or --no-update-check is set.
- package.json has no preinstall/install/postinstall lifecycle hook; prepublishOnly is publish-time build cleanup only.
- README.md documents the package purpose as an explicit agent setup CLI and documents generated .claude/.cursor/.github/MCP outputs.
- MCP setup is opt-in per README.md and DEFAULT_FEATURES.mcp is false in dist/cli/index.js.
- Filesystem writes are behind explicit CLI commands and use managed-block/safeWrite logic rather than install-time mutation.
- No credential harvesting or exfiltration flow found; env vars are documented MCP placeholders and .env.mcp is preserved on clean.
Source & flagged code
3 flagged · loading sourceSource contains bidi control or invisible Unicode characters associated with Trojan Source attacks.
dist/cli/index.jsView on unpkg · L893A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
dist/cli/index.jsView on unpkgSource writes installer persistence such as shell profile or service configuration.
dist/cli/index.jsView on unpkg · L28