- Runs structured security probes across persistence, network, binary integrity, privacy, and permissions.
- Uses native tool calling (
/v1/responses) so the model can only execute registered tools. - Stores full evidence locally in
paranoid_findings/and returns compact summaries to the model. - Supports optional threat-intel enrichment (YARA, VirusTotal hash lookup, abuse.ch, CIRCL).
- Target platform: macOS.
- Intended for defensive investigation on systems you own or are authorized to assess.
- Some probes use
sudowhere macOS data collection requires elevated read access. - API keys are loaded from
.env; do not commit.env.
OpenAI Responses API (/v1/responses)
↕ function_call / function_call_output
Paranoid scanner (bash)
├─ core tools
├─ macOS probe tools
└─ threat-intel tools
The scanner chains requests using previous_response_id and keeps execution auditable via deterministic tool dispatch.
cp .env.example .env
chmod +x setup.sh
./setup.shOr run directly after setting OPENAI_API_KEY:
./paranoid_scanner.shMinimal API connectivity check:
./openai_api_quickstart.sh "Summarize what this scanner does in 2 lines."Primary (preferred):
PARANOID_MODEL(defaultgpt-5-nano-2025-08-07)PARANOID_FINDINGS_DIR(default./paranoid_findings)PARANOID_MAX_SCAN_STEPS(default140)PARANOID_SOFT_TOKEN_LIMIT(default120000, set0to disable)PARANOID_API_CONNECT_TIMEOUT(default10)PARANOID_API_TIMEOUT_SECONDS(default90)
Common scanner vars (legacy-compatible):
OPENAI_API_KEY(required)VIRUSTOTAL_API_KEY(optional)
See .env.example for a fuller template.
- Full Paranoid
- Persistence Only
- Network and Process
- Binary Integrity
- Privacy and Permissions
- Focused Discovery (up to 200 characters, optional directory scope)
paranoid_scanner.sh: main scanner loop and tool dispatcherparanoid_macos_tools.sh: deterministic macOS probe toolsparanoid_threat_intel.sh: optional intel and YARA toolingparanoid_env_loader.sh: safe dotenv parser (no shell code execution)setup.sh: dependency checks, key setup, scanner launchopenai_api_quickstart.sh: direct Responses API smoke test
Legacy compatibility wrappers are still included (cmdbot_* scripts).
npm run lint
npm run test:syntax
npm testCI runs on pull requests and pushes via GitHub Actions (.github/workflows/ci.yml).
Security policy and reporting guidance: SECURITY.md
Contribution workflow and standards: CONTRIBUTING.md
MIT (LICENSE)
