Skip to main content

Installation

Install the squirrel CLI to start auditing websites for SEO, performance, security, and technical issues.
squirrel is available for Linux, macOS, and Windows with automatic PATH configuration.

Installing squirrel CLI

Install using the automated installer script:
curl -fsSL https://squirrelscan.com/install | bash

What this does

The installer will:
1

Download the latest binary

Fetches the appropriate release for your system architecture
2

Install to local directory

Installs to ~/.local/share/squirrel/releases/{version}/
3

Create symbolic link

Creates a symlink at ~/.local/bin/squirrel
4

Initialize settings

Creates default settings at ~/.squirrel/settings.json

Add to PATH

If ~/.local/bin is not in your PATH, add it to your shell configuration:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Verifying installation

Confirm that squirrel is installed and accessible:
1

Check version

squirrel --version
You should see output like:
squirrel 1.18.0
2

View help

squirrel --help
This displays all available commands and options.
If both commands work, squirrel is installed correctly!

Troubleshooting

If you see squirrel: command not found or similar:Check installation location:
ls ~/.local/bin/squirrel  # Linux/Mac
dir %LOCALAPPDATA%\squirrel  # Windows
Verify PATH:
echo $PATH  # Linux/Mac
echo %PATH%  # Windows
The squirrel installation directory should appear in the output.Solution: Add ~/.local/bin (or the Windows equivalent) to your PATH as shown in the installation steps above.
If squirrel is not executable:
chmod +x ~/.local/bin/squirrel
If the installer fails with SSL errors:
  • Linux/Mac: Ensure curl is up to date
  • Windows: Ensure PowerShell can make HTTPS requests
Try downloading the binary manually from squirrelscan.com and following manual installation steps.

Setting up a project

Before running audits, initialize a squirrel project in your working directory.

Why initialize?

Running squirrel init creates a squirrel.toml configuration file that:
  • Sets the project name for database organization
  • Stores audit results in ~/.squirrel/projects/<project-name>
  • Allows you to manage multiple audit projects separately

Initialize with default settings

1

Navigate to your project directory

cd /path/to/your/project
2

Run init command

squirrel init
This creates a squirrel.toml file with default settings. The project name will be inferred from the first website you audit.

Initialize with custom project name

For better organization, specify a project name:
squirrel init --project-name my-website-audit
Use meaningful project names like company-marketing-site or ecommerce-platform to keep audits organized.

Project name importance

The project name determines where audit data is stored:
~/.squirrel/projects/
├── my-website-audit/
│   ├── audits.db
│   └── cache/
├── another-project/
│   ├── audits.db
│   └── cache/
All audits for the same project share a database, allowing you to track changes over time and compare historical results.

Configuration with squirrel.toml

The squirrel.toml file stores project-specific settings.

Example configuration

squirrel.toml
[project]
name = "my-website-audit"

[crawl]
max_pages = 100
coverage = "surface"
user_agent = "squirrel/1.18 (Website Audit)"

[audit]
ignore_rules = []
min_score = 85

Configuration management

Use the config subcommands to manage settings:
squirrel config show
Displays the current configuration.

Common configuration options

project.name
string
required
Project identifier for database storage
crawl.max_pages
number
default:"100"
Maximum pages to crawl per audit (up to 5000)
crawl.coverage
string
default:"surface"
Coverage mode: quick, surface, or full
crawl.user_agent
string
Custom user agent string for crawling
audit.ignore_rules
array
default:"[]"
List of rule IDs to skip during audits
audit.min_score
number
default:"0"
Minimum acceptable health score

Self-management commands

squirrel includes built-in commands for managing the CLI itself:

Update

squirrel self update
Check for and apply updates

Doctor

squirrel self doctor
Run health checks on installation

Version

squirrel self version
Show detailed version information

Settings

squirrel self settings
Manage global CLI settings

Completion

squirrel self completion
Generate shell completions

Uninstall

squirrel self uninstall
Remove squirrel from the system

Shell completions

Enable tab completion for your shell:
squirrel self completion bash > ~/.local/share/bash-completion/completions/squirrel
source ~/.bashrc

Next steps

You’re ready to run your first audit!

Run your first audit

Learn how to audit websites with different coverage modes

Audit categories

Explore the 21 audit categories and 230+ rules

Build docs developers (and LLMs) love