Documentation

Everything you need to install, configure, and run SquidClaw.

Installation

SquidClaw runs on Linux, macOS, and Windows. Choose your platform:

Linux 🐧 Ubuntu / Debian / Fedora / Arch

One-line install — handles Node.js, dependencies, everything:

curl -fsSL https://squidclaw.dev/hatch | bashbash

This will:

  • Install Node.js 22+ if not present
  • Install SquidClaw globally via npm
  • Run the onboarding wizard
💡 Tested on Ubuntu 22.04+, Debian 12+, Fedora 38+, Arch Linux. Works on Raspberry Pi too.

Manual install

# Install Node.js 22+
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash -
sudo apt-get install -y nodejs

# Install SquidClaw
npm install -g squidclaw

# Run
squidclawbash

macOS 🍎 Intel & Apple Silicon

One-line install:

curl -fsSL https://squidclaw.dev/hatch | bashterminal

Or with Homebrew:

# Install Node.js
brew install node@22

# Install SquidClaw
npm install -g squidclaw

# Run
squidclawterminal
💡 Works on both Intel and Apple Silicon Macs. Requires macOS 13+.

Windows 🪟 PowerShell

Run in PowerShell (as Administrator):

iwr -useb https://squidclaw.dev/hatch.ps1 | iexPowerShell

Or manually:

# Install Node.js 22+ from https://nodejs.org
# Then in PowerShell:

npm install -g squidclaw

# Run
squidclawPowerShell
⚠️ Use PowerShell, not CMD. WSL (Windows Subsystem for Linux) also works — use the Linux instructions.

npm 📦 Any platform

If you already have Node.js 22+:

# Install globally
npm install -g squidclaw

# Or run without installing
npx squidclawany platform
🦑 npx squidclaw is the fastest way. No global install needed.

Quick Start

1

Install

npx squidclaw

First run auto-detects missing config and launches the setup wizard.

2

Add your AI key

The wizard will ask for an API key. Supported providers:

# Set via environment variable
export ANTHROPIC_API_KEY=sk-ant-...
# or
export OPENAI_API_KEY=sk-...
# or
export GOOGLE_API_KEY=AI...
3

Connect a channel

# Telegram
squidclaw channels add telegram

# WhatsApp (scan QR code)
squidclaw channels login whatsapp

# Discord
squidclaw channels add discord
4

Start the agent

squidclaw

That's it. Your AI agent is live. Send it a message. 🦑

Environment Variables

VariableDescription
ANTHROPIC_API_KEYAnthropic (Claude) API key
OPENAI_API_KEYOpenAI (GPT) API key
GOOGLE_API_KEYGoogle (Gemini) API key
SQUIDCLAW_STATE_DIROverride state directory (default: ~/.squidclaw)
SQUIDCLAW_CONFIG_PATHOverride config file path
SQUIDCLAW_GATEWAY_TOKENGateway authentication token
SQUIDCLAW_HOMEOverride home directory for path resolution
SQUIDCLAW_LOG_LEVELLog level (silent|error|warn|info|debug|trace)

CLI Commands

All commands follow the pattern: squidclaw <command> [subcommand] [options]

🌐 Gateway

CommandDescription
squidclawSmart start — no config → setup, config exists → start gateway
squidclaw gateway runRun gateway in foreground
squidclaw gateway startStart as background service
squidclaw gateway stopStop the gateway service
squidclaw gateway restartRestart the gateway
squidclaw gateway statusShow service status + health
squidclaw gateway installInstall as system service (systemd/launchd)
squidclaw gateway healthFetch gateway health
squidclaw gateway probeFull reachability + discovery check

🔧 Setup & Config

CommandDescription
squidclaw setupInitialize config and workspace
squidclaw onboardInteractive onboarding wizard
squidclaw configureInteractive setup for credentials, channels, agent
squidclaw config get <key>Get a config value
squidclaw config set <key> <val>Set a config value
squidclaw config unset <key>Remove a config key
squidclaw doctorHealth checks + auto-fix
squidclaw doctor --fixApply all suggested fixes
squidclaw resetReset local config/state
squidclaw uninstallRemove gateway service + data

💬 Channels

CommandDescription
squidclaw channels listList configured channels
squidclaw channels statusShow connection status per channel
squidclaw channels add <type>Add a new channel (telegram, discord, etc.)
squidclaw channels loginLink WhatsApp (QR scan)
squidclaw channels remove <id>Remove a channel
squidclaw message sendSend a message via channel
squidclaw directoryLookup contacts and groups

🤖 Agents & Sessions

CommandDescription
squidclaw agents listList configured agents
squidclaw agents addCreate a new agent
squidclaw agents delete <id>Remove an agent
squidclaw agentRun one agent turn via gateway
squidclaw sessionsList conversation sessions
squidclaw statusShow channel health + recent sessions

🧠 Models

CommandDescription
squidclaw models listList available models
squidclaw models scanAuto-discover models from API keys
squidclaw models set <model>Set default model
squidclaw models statusShow current model config
squidclaw models auth addAdd API key for a provider

⏰ Automation

CommandDescription
squidclaw cron listList scheduled jobs
squidclaw cron addCreate a cron job
squidclaw cron rm <id>Remove a cron job
squidclaw skills listList available skills
squidclaw skills info <name>Show skill details
squidclaw memory search <q>Search memory files
squidclaw hooks listList internal hooks

🔒 Security & System

CommandDescription
squidclaw security auditRun security audit
squidclaw secrets reloadHot-reload secrets
squidclaw system eventSend system event to gateway
squidclaw system heartbeatManage heartbeat
squidclaw logsTail gateway logs
squidclaw updateUpdate SquidClaw
squidclaw dashboardOpen Control UI in browser
squidclaw tuiTerminal chat UI

🌐 Advanced

CommandDescription
squidclaw browser startStart headless browser
squidclaw sandbox listList sandbox containers
squidclaw nodes listList paired devices
squidclaw plugins listList installed plugins
squidclaw plugins install <pkg>Install a plugin
squidclaw webhooksWebhook management
squidclaw dnsDNS discovery helpers
squidclaw completionGenerate shell completion script

Global Flags

FlagDescription
--devIsolate state under ~/.squidclaw-dev, use port 19001
--profile <name>Named profile (isolates state + config)
--no-colorDisable ANSI colors
--log-level <level>Override log level
--version, -VPrint version
--help, -hShow help

Config File

Config lives at ~/.squidclaw/squidclaw.json. Example:

{
  "agents": {
    "defaults": {
      "workspace": "~/.squidclaw/workspace",
      "model": {
        "primary": "anthropic/claude-sonnet-4-20250514"
      }
    }
  },
  "channels": {
    "telegram": {
      "botToken": "123456:ABC...",
      "allowFrom": ["your-telegram-id"]
    },
    "whatsapp": {
      "enabled": true
    }
  },
  "gateway": {
    "mode": "local",
    "port": 18789
  }
}squidclaw.json