Skip to content

setup / doctor / reset / uninstall

Launch the Snippbot installation wizard.

Terminal window
snippbot setup # Browser-based wizard (default)
snippbot setup --headless # CLI-only interactive setup
snippbot setup --resume # Resume from last completed step
snippbot setup --step api-key # Jump to a specific step
snippbot setup --force # Re-run even if already complete
OptionDefaultDescription
--modeself-hostedself-hosted or cloud
--headlessoffCLI-only setup (no browser)
--port18781Backend API port
--host127.0.0.1Host to bind
--resumeoffResume from last completed step
--stepJump to step: genesis, identity, api-key, ignition, awakening
--forceoffRe-run setup even if already complete

Browser mode (default): Opens http://127.0.0.1:18781/setup in your browser. The 8-step wizard walks through system checks, OS permissions, identity, authentication, voice, model selection, an optional starter-packages bundle, and final verification.

Headless mode: Prompts for display name, email, and API key directly in the terminal. Useful for server environments without a browser.


Run a full health check on your Snippbot installation.

Terminal window
snippbot doctor # Show all diagnostics
snippbot doctor --fix # Auto-fix detected issues
snippbot doctor --json # JSON output
OptionDescription
--fixAttempt to automatically fix detected issues
--jsonOutput as JSON

Checks performed:

CheckWhat it verifies
Python VersionPython 3.11+ is installed
Disk SpaceSufficient free space in home directory
Port AvailabilityThe backend port (18781 by default, or whatever you passed to setup --port) and the gateway port (8787) are free
Config Directory~/.snippbot/ exists and is writable
Config File~/.snippbot/config.toml is valid TOML
Database~/.snippbot/snippbot.db integrity check passes. The Genesis wizard step additionally runs a DatabaseSchemaCheck over auth.db, profile_settings.db, and snippbot.db — missing files are reported as a warning (created on first use), corruption as a hard failure.
API KeyAt least one AI provider API key is configured (warns if none)
Claude CLIClaude CLI is installed and logged in (informational)
Networkapi.anthropic.com is reachable
PermissionsData-directory files have secure permissions
DependenciesRequired Python packages are installed
AgentsAt least one agent profile is present (informational)

Example output:

✓ Python Version: Python 3.12.2
✓ Disk Space: 45.2 GB free
✓ Port Availability: Ports 18781, 8787 available
✓ Config Directory: ~/.snippbot exists
✓ Config File: config.toml valid
✓ Database: snippbot.db (124 KB, integrity OK)
⚠ API Key: Not configured (will be set during setup)
✓ Network: api.anthropic.com reachable (87ms)

Reset your Snippbot installation. Always creates a backup first.

Terminal window
snippbot reset # Full reset (keeps agent workspaces)
snippbot reset --soft # Reset setup wizard state only
snippbot reset --keep-config # Keep config.toml
snippbot reset --keep-data # Keep databases
snippbot reset --keep-agents # Keep agent workspaces
snippbot reset --force # Skip confirmation prompt
snippbot reset --list-backups # List available backups
snippbot reset --restore # Restore from most recent backup
OptionDescription
--softReset setup state only — fastest way to re-run the wizard
--keep-agentsPreserve agent workspaces
--keep-configPreserve config.toml
--keep-dataPreserve all databases
--forceSkip confirmation prompt
--restoreRestore from most recent backup
--list-backupsList all available backups

Reset levels (least to most destructive):

LevelCommandWhat’s wiped
Softreset --softSetup state only
Partialreset --keep-agentsConfig + databases
FullresetConfig + databases + workspaces

All destructive resets — including --soft — create a timestamped backup in ~/.snippbot/backups/ before proceeding.

Terminal window
# List available backups
snippbot reset --list-backups
# • 2026-03-01T12-00-00 (snippbot.db, auth.db, config.toml, agents/)
# Restore from the most recent backup
snippbot reset --restore
# Or restore from a specific backup by name
snippbot reset --restore 2026-03-01T12-00-00

Remove Snippbot. Stops the daemon (its agent gateway child stops with it), removes the systemd service if one was installed, and prints the final package-removal command. Your data is kept unless you pass --purge.

Terminal window
snippbot uninstall # stop daemon + remove service; keep data
snippbot uninstall --purge # also delete ALL data (prompts first)
snippbot uninstall --purge --yes # ...without the confirmation prompt
FlagEffect
--purgeAlso delete ~/.snippbot (agents, chat history, memory, config) and any legacy ~/.snippai. Irreversible.
--yes / -ySkip the --purge confirmation prompt.

Why a final manual step? A running process can’t reliably delete the virtual environment it’s executing from (and on Windows the live interpreter’s files are locked), so the command prints the exact pipx uninstall snippbot (or pip uninstall) line to finish removal.

If a systemd service was installed by install-vps.sh --service, removing the unit needs root — when not run as root, uninstall prints the sudo commands to run.