@factory/cli@0.189.0
Factory Droid CLI - AI-powered software engineering agent
AI Security Review
scanned 3mo ago · by lpm-firewall-aiThe flagged primitives implement a conventional platform-specific CLI binary installer. Source inspection found no concrete malicious chain, foreign control-surface mutation, credential exfiltration, or destructive behavior.
Decision evidence
public snapshot- package.json runs postinstall via install.js.
- install.js can fetch a version-pinned platform package from registry.npmjs.org if optional dependencies are absent.
- install.js writes the extracted platform binary and replaces only its own bin/droid shim.
- Network access is limited to npm registry metadata/tarball retrieval for the package's own platform binary.
- NPM_TOKEN is sent only when the destination hostname includes npmjs.org; no other secret collection or exfiltration is present.
- Lifecycle mutations are confined to package-local bin/droid and a temporary backup.
- platform.js uses system commands only for CPU AVX2 detection.
- bin/droid executes the resolved package-owned platform binary from an explicit platform-package mapping.
- No AI-agent configuration, shell profile, credential-store, or foreign-project writes occur; PATH guidance is printed only.
Source & flagged code
8 flaggedPackage defines install-time lifecycle scripts.
package.jsonView on unpkgInstall-time source downloads a native archive from a fixed external host without transport verification, extracts it, and installs an executable payload.
package.jsonView on unpkg · L9Install-time lifecycle script is not statically allowlisted and needs review.
Findings
Affected versions and remediation
This report applies to @factory/cli@0.189.0.
See all versions of @factory/cli for other recorded verdicts.
- Review the evidence and your use of @factory/cli@0.189.0 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.