AI Security Review
scanned 4h ago · by lpm-firewall-aiLPM treats this as warn-only first-party agent extension lifecycle risk. An explicit `login` configures global Claude Code hooks and optionally a shell wrapper. Installed hooks can self-update from the SolonGate API and upload audit records.
Decision evidence
public snapshot- `dist/global-install.js` invoked by explicit `login` writes `~/.claude/settings.json` hooks and shell shims.
- `hooks/guard.mjs` fetches newer hook bundles from `https://api.solongate.com` and replaces installed hook files.
- `hooks/audit.mjs` posts tool names and argument summaries to `/api/v1/audit-logs` when local-only logging is not enabled.
- `hooks/shield.mjs` proxies Claude traffic and spawns the real `claude` command with a local upstream override.
- `package.json` has no preinstall, install, postinstall, or uninstall lifecycle hook.
- Global hook installation is reached through the user-invoked `login` flow, not package import or installation.
- Network destinations and credential use are package-aligned SolonGate policy/audit services.
- Metadata URL references in `hooks/guard.mjs` are SSRF-blocking policy patterns, not metadata requests.
Source & flagged code
10 flagged · loading sourceA single source file combines environment access, network access, and code or shell execution; review context before blocking.
dist/shield.jsView on unpkg · L269Source combines credential-like environment material and outbound requests; review data flow before blocking.
dist/lib.jsView on unpkg · L42Source writes installer persistence such as shell profile or service configuration.
dist/lib.jsView on unpkg · L42Package source references a known benign dynamic code generation pattern.
dist/audit/index.jsView on unpkg · L1395Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.
dist/index.jsView on unpkg · L41Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
dist/index.jsView on unpkg · L41Package source invokes a package manager install command at runtime.
dist/index.jsView on unpkg · L7628Source reaches cloud instance metadata or link-local credential endpoints.
hooks/guard.mjsView on unpkg · L13