Autonomous, developer-first AI SAST & supply-chain auditor with skeptical LLM triage and zero false positives.
Python
2
6 commits
updated Oct 16, 2026
Developer-first static analysis security auditor (SAST) with dual-pass skeptical AI false-alarm elimination.
Traditional static security tools can flood engineering teams with false alarms, while running an entire repository through an LLM is costly, slow, and context-constrained.
PuedoBot Core combines deterministic static analysis with intelligent AI verification:
flowchart TD
A[Target Codebase / Repository] --> B[Deterministic Engine]
subgraph Sinks ["Multi-Engine Static Detection"]
B --> B1[Python AST Traversal]
B --> B2[Bandit Rules]
B --> B3[Semgrep Configs]
B --> B4[OSV Dependency CVEs]
B --> B5[Git Secret Scanner]
end
Sinks --> C{Findings Detected?}
C -->|No| D[Clean Audit Report]
C -->|Yes| E[Quarantined Code Context]
subgraph AI ["Dual-Pass AI Verification (Any LLM)"]
E --> F[Pass 1: Triage Scout<br/>Analyzes Flow & Exploitability]
F --> G[Pass 2: Skeptical Verifier<br/>Challenges & Refutes False Positives]
end
AI --> H[Verified Security Findings Dossier]
H --> I[Interactive Terminal Review CLI]
PuedoBot Core stores repository audit findings, triage status, and code context in PostgreSQL.
Start a local database in seconds using Docker:
docker run -d --name puedobot-db -p 5432:5432 -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=puedobot postgres:16-alpine
git clone https://github.com/eagle9111/Puedobot-Open-Source.git
cd Puedobot-Open-Source
python3 -m venv .venv
source .venv/bin/activate
# Editable install with core dependencies:
pip install -e .
# (Optional) Install with Semgrep support for multi-language rule auditing:
pip install -e ".[semgrep]"
[!NOTE] Without
[semgrep], non-Python files (JS, Go, Java, PHP) receive git secret scanning and OSV dependency tracking, while Python files receive full AST, Bandit, secret, and OSV scanning.
Copy the sample environment file:
cp .env.example .env
Generate a secure 32+ character API key for server authentication:
openssl rand -hex 32
# Or via Python:
python3 -c "import secrets; print(secrets.token_hex(32))"
Configure your database and AI preference in .env:
# Server API Authentication (Required: at least 32 characters)
PUEDOBOT_API_KEY=paste_your_generated_32_byte_secret_here
# Use any OpenAI-compatible API:
AI_API_URL=https://api.deepseek.com/v1 # Or OpenAI, Groq, OpenRouter, etc.
AI_API_KEY=your_api_key_here
MODEL_NAME=deepseek-chat
# Or use Google Gemini directly:
# AI_API_URL=
# AI_API_KEY=your_gemini_api_key_here
# MODEL_NAME=gemini-2.5-flash
PUEDOBOT_API_KEY=paste_your_generated_32_byte_secret_here
LOCAL_AI_URL=http://localhost:11434/v1
LOCAL_AI_MODEL=qwen2.5-coder:7b
AI_PRIORITY=local
# Ensure your virtual environment is active:
source .venv/bin/activate
# 1. Initialize DB tables
python3 -m scripts.init_db
# 2. Start the background scan service
uvicorn app.server.main:app --host 127.0.0.1 --port 8000 &
# 3. Audit any project or repository
puedobot scan /path/to/target/project
[!TIP] Run
puedobot --help(or simplypuedobot) at any time to reveal all commands, subcommands, arguments, and flag options.
| Command | Description |
|---|---|
puedobot scan <path> | Run a comprehensive multi-engine audit against target code |
puedobot show-errors | Display interactive table of all verified security findings |
puedobot show <id> | Inspect detailed vulnerability dossier and syntax-highlighted code proof |
puedobot review <id> <approve|reject> | Mark a finding as verified or dismissed |
puedobot repos | List audited repositories and status |
puedobot activity | Stream active audit jobs and status |
PuedoBot Core is created for authorized, defensive security auditing, pre-commit CI/CD quality gates, and code hardening.
Apache 2.0. See LICENSE for details.
Autonomous, developer-first AI SAST & supply-chain auditor with skeptical LLM triage and zero false positives.
Python
2
6 commits
updated Oct 16, 2026
Developer-first static analysis security auditor (SAST) with dual-pass skeptical AI false-alarm elimination.
Traditional static security tools can flood engineering teams with false alarms, while running an entire repository through an LLM is costly, slow, and context-constrained.
PuedoBot Core combines deterministic static analysis with intelligent AI verification:
flowchart TD
A[Target Codebase / Repository] --> B[Deterministic Engine]
subgraph Sinks ["Multi-Engine Static Detection"]
B --> B1[Python AST Traversal]
B --> B2[Bandit Rules]
B --> B3[Semgrep Configs]
B --> B4[OSV Dependency CVEs]
B --> B5[Git Secret Scanner]
end
Sinks --> C{Findings Detected?}
C -->|No| D[Clean Audit Report]
C -->|Yes| E[Quarantined Code Context]
subgraph AI ["Dual-Pass AI Verification (Any LLM)"]
E --> F[Pass 1: Triage Scout<br/>Analyzes Flow & Exploitability]
F --> G[Pass 2: Skeptical Verifier<br/>Challenges & Refutes False Positives]
end
AI --> H[Verified Security Findings Dossier]
H --> I[Interactive Terminal Review CLI]
PuedoBot Core stores repository audit findings, triage status, and code context in PostgreSQL.
Start a local database in seconds using Docker:
docker run -d --name puedobot-db -p 5432:5432 -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=puedobot postgres:16-alpine
git clone https://github.com/eagle9111/Puedobot-Open-Source.git
cd Puedobot-Open-Source
python3 -m venv .venv
source .venv/bin/activate
# Editable install with core dependencies:
pip install -e .
# (Optional) Install with Semgrep support for multi-language rule auditing:
pip install -e ".[semgrep]"
[!NOTE] Without
[semgrep], non-Python files (JS, Go, Java, PHP) receive git secret scanning and OSV dependency tracking, while Python files receive full AST, Bandit, secret, and OSV scanning.
Copy the sample environment file:
cp .env.example .env
Generate a secure 32+ character API key for server authentication:
openssl rand -hex 32
# Or via Python:
python3 -c "import secrets; print(secrets.token_hex(32))"
Configure your database and AI preference in .env:
# Server API Authentication (Required: at least 32 characters)
PUEDOBOT_API_KEY=paste_your_generated_32_byte_secret_here
# Use any OpenAI-compatible API:
AI_API_URL=https://api.deepseek.com/v1 # Or OpenAI, Groq, OpenRouter, etc.
AI_API_KEY=your_api_key_here
MODEL_NAME=deepseek-chat
# Or use Google Gemini directly:
# AI_API_URL=
# AI_API_KEY=your_gemini_api_key_here
# MODEL_NAME=gemini-2.5-flash
PUEDOBOT_API_KEY=paste_your_generated_32_byte_secret_here
LOCAL_AI_URL=http://localhost:11434/v1
LOCAL_AI_MODEL=qwen2.5-coder:7b
AI_PRIORITY=local
# Ensure your virtual environment is active:
source .venv/bin/activate
# 1. Initialize DB tables
python3 -m scripts.init_db
# 2. Start the background scan service
uvicorn app.server.main:app --host 127.0.0.1 --port 8000 &
# 3. Audit any project or repository
puedobot scan /path/to/target/project
[!TIP] Run
puedobot --help(or simplypuedobot) at any time to reveal all commands, subcommands, arguments, and flag options.
| Command | Description |
|---|---|
puedobot scan <path> | Run a comprehensive multi-engine audit against target code |
puedobot show-errors | Display interactive table of all verified security findings |
puedobot show <id> | Inspect detailed vulnerability dossier and syntax-highlighted code proof |
puedobot review <id> <approve|reject> | Mark a finding as verified or dismissed |
puedobot repos | List audited repositories and status |
puedobot activity | Stream active audit jobs and status |
PuedoBot Core is created for authorized, defensive security auditing, pre-commit CI/CD quality gates, and code hardening.
Apache 2.0. See LICENSE for details.