This guide walks you through installing SAW on your local machine, configuring your environment variables, starting the FastAPI server, and triaging your first security log. You’ll need Python 3.10 or later. A Google or Gemini API key is optional but recommended for live LLM-assisted triage.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/samkit511/SAW---Security-Analyst-Workspace/llms.txt
Use this file to discover all available pages before exploring further.
Prepare your project folder
Clone or download the SAW repository and open a terminal in the project root. All following commands run from that directory.
Create a virtual environment
Create an isolated Python environment so SAW’s dependencies don’t conflict with your system packages.
Activate the virtual environment
- Windows (PowerShell)
- Linux / macOS
If PowerShell blocks the activation script, run this first to allow it for the current session only:
Install dependencies
Upgrade pip, then install the pinned requirements:The
requirements.txt installs these packages:Configure environment variables
Copy the sample configuration file to create your local Open
.env:- Windows (PowerShell)
- Linux / macOS
.env in a text editor. The defaults are ready to use, but add your API key to enable live Gemini-powered triage:Without an API key, SAW falls back to deterministic-only mode. The
demo API key works for all protected endpoints during local testing. ASA_MODE=HYBRID runs the full pipeline — deterministic pre-filtering first, then LLM escalation for ambiguous events.Start the server
Start the Uvicorn-based FastAPI server with hot reload enabled:Once the server is running, you can access:
- Dashboard UI:
http://127.0.0.1:8080 - Health check:
http://127.0.0.1:8080/health - Live metrics:
http://127.0.0.1:8080/metrics-json
Triage your first log
Send a SQL injection log to the A successful response includes a
/ingest-log endpoint. The x-api-key header must match ASA_API_KEY in your .env (default: demo).workflow_status, agent_summary, and a full trace object. Look for these fields to confirm the pipeline ran end to end:Common issues
ADK not producing live model responses Verify thatGOOGLE_API_KEY or GEMINI_API_KEY is set in .env and that the key has Gemini quota enabled. Then reinstall dependencies:
workflow_status is DEGRADED instead of COMPLETED
The deterministic pipeline ran but the ADK agent stage was skipped or failed. Check that your API key is valid and that ASA_ENABLE_ADK_ADVISORY=true in .env.
Next steps
Deploy with Docker
Run SAW in a container for a consistent, portable deployment.
Architecture overview
Learn how the four-agent pipeline processes each log event.