Site Audit Agent - CLI tool for automated website audits
Project description
Site Audit Agent (SAA)
CLI tool for automated website audits using stealthy headless Chromium and LLM-powered analysis.
Quick Start
saa init # Setup config and API keys
saa audit https://example.com # Run an audit
Installation
Single User (macOS/Linux) - Recommended
# Install pipx if needed
brew install pipx # macOS
# or: sudo apt install pipx # Ubuntu/Debian
# Install SAA from PyPI
pipx install site-audit-agent
# Setup (installs Chromium, creates config)
saa init
# Add your API keys
vi ~/.saa/.keys
Multi-User Server (Ubuntu/Debian)
System-wide install with shared settings - each user provides their own API keys.
# 1. Install pipx and SAA (as root)
sudo apt install pipx
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install site-audit-agent
# 2. Initialize system config (auto-installs Playwright Chromium to /opt/playwright)
sudo saa init --system
# 3. Verify
saa --version
saa audit https://example.com --no-llm -o test.md
Server Install - Quick Copy/Paste
# As root
sudo apt install pipx
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install site-audit-agent
sudo saa init --system
Install from GitHub (Latest/Dev)
# Single user
pipx install git+https://github.com/iXanadu/saa.git
# Multi-user server
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install git+https://github.com/iXanadu/saa.git
Server Update
# PyPI version
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx upgrade site-audit-agent
# GitHub version
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx reinstall site-audit-agent
Development Install
cd /path/to/saa
pip install -e .
playwright install chromium
Configuration
Config loads in order (later overrides earlier):
| Location | Purpose | Precedence |
|---|---|---|
/etc/saa/ |
System-wide (admin) | 1 (lowest) |
~/.saa/ |
User config | 2 |
./.env, ./.keys |
Project override | 3 |
| Environment vars | Runtime override | 4 (highest) |
Config Files
~/.saa/ # or /etc/saa/ for system
├── .env # Settings
├── .keys # API keys (keep secret!)
├── audit-plan.md # Default audit plan
└── plans/ # Archived plan versions
Environment Variables
| Variable | Description |
|---|---|
XAI_API_KEY |
xAI API key (for Grok) |
ANTHROPIC_API_KEY |
Anthropic API key (for Claude) |
SAA_DEFAULT_LLM |
Default LLM (e.g., xai:grok, anthropic:sonnet) |
SAA_DEFAULT_PLAN |
Path to default audit plan |
SAA_OUTPUT_DIR |
Directory for auto-saved reports |
SAA_MAX_PAGES |
Max pages to crawl |
SAA_DEFAULT_DEPTH |
Max crawl depth |
Usage
Basic Examples
saa audit https://example.com # Basic audit
saa audit https://mysite.com -o report.md # Save to file
saa audit https://mysite.com -q # Quiet mode (status line only)
saa audit https://mysite.com -v # Verbose output
Audit Modes
saa audit https://mysite.com -m own # Deep audit (default)
saa audit https://competitor.com -m competitor # Light scan
| Mode | Depth | Max Pages | Purpose |
|---|---|---|---|
own |
10 | 200 | Deep audit of your sites |
competitor |
1 | 20 | Light scan for insights |
LLM Options
saa audit URL -l xai:grok # Use xAI Grok
saa audit URL -l anthropic:sonnet # Use Claude Sonnet
saa audit URL --no-llm # Skip LLM (basic report)
Custom Audit Plans
saa audit URL -p ./my-plan.md # Use custom plan
saa audit URL --no-plan # Skip default plan
Crawl Pacing
saa audit URL --pacing off # No delays (fast, detectable)
saa audit URL --pacing low # 0.5-1.5s delays
saa audit URL --pacing medium # 1-3s delays (default)
saa audit URL --pacing high # 2-5s delays (stealthy)
Management Commands
Check for Updates
saa check # Compare installed vs latest
saa update # Update via pipx reinstall
Plan Management
saa plan # Show current plan location
saa plan --view # Output current plan to stdout
saa plan --edit # Open plan in editor ($EDITOR or vi)
saa plan --update # Update to latest bundled plan
saa plan --bundled # Show the bundled default plan
saa plan --list # List archived versions
saa plan --rollback # Restore previous version
View Config
saa config --list # Show current settings
All Options
saa audit [OPTIONS] URL
Options:
-p, --plan PATH Custom audit plan (overrides config)
--no-plan Skip audit plan
-m, --mode [own|competitor] Audit mode
-d, --depth INTEGER Max crawl depth
--max-pages INTEGER Max pages to crawl
-l, --llm TEXT LLM provider:model
--no-llm Skip LLM analysis
-o, --output PATH Output file path
-q, --quiet Quiet mode (status line only)
-v, --verbose Verbose output
--pacing [off|low|medium|high] Crawl pacing
Updating
# Check if update available
saa check
# Update (if installed via pipx)
saa update
# Or manually
pipx reinstall saa
Troubleshooting
"playwright: command not found"
Use Python module directly:
python3 -m playwright install chromium
# Or for pipx install:
~/.local/pipx/venvs/saa/bin/playwright install chromium
"No module named playwright" with sudo
Install to system pipx location:
sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install ...
License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Acknowledgments
- Built with assistance from Claude (Anthropic)
- Uses Playwright for browser automation
- Stealth capabilities via playwright-stealth
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file site_audit_agent-0.5.1.tar.gz.
File metadata
- Download URL: site_audit_agent-0.5.1.tar.gz
- Upload date:
- Size: 39.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08b2e85b6588f2161e8547e69a9036dbe4d17425bef2944b2a3f46346ca1c833
|
|
| MD5 |
48564fa19c0eaed9316b2b31589e590d
|
|
| BLAKE2b-256 |
337c6b12ff46c778eac386d75d7c76c436cb3318e1c1db7ee047130459d948bf
|
File details
Details for the file site_audit_agent-0.5.1-py3-none-any.whl.
File metadata
- Download URL: site_audit_agent-0.5.1-py3-none-any.whl
- Upload date:
- Size: 43.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
412e906f05986d24f005a340400e84ebad92f31e1f1412aa4320ad3413fee6e3
|
|
| MD5 |
f55f3e5b1b3f288a131c826d0e792ceb
|
|
| BLAKE2b-256 |
93ba9dae8df4fac09c6d5a1ea303544a11e489a5f36a76fab57502b01f6b7fdd
|