Doctor

The suv doctor command runs a series of health checks on your Suvadu installation and reports pass, warning, or fail for each component. Use it to diagnose setup issues or verify that everything is working correctly after installation.

Usage

suv doctor

Example Output

Suvadu Doctor

  Shell ................. ✓ zsh 5.9 (minimum: 5.1)
  Shell hooks ........... ✓ found in ~/.zshrc
  Config ................ ✓ valid (~/Library/.../config.toml)
  Database .............. ✓ healthy — schema v5, 1,234 entries
  Recording ............. ✓ active
  MCP (Claude Code) ..... ✓ registered in ~/.claude.json
  MCP (Cursor) .......... ⚠ not registered (run: suv init cursor)
  Agent hooks ........... ✓ 3 hook script(s) installed

  7 passed, 1 warnings, 0 failed

What Gets Checked

Check What It Verifies Fix When Failed
Shell Detects your shell from $SHELL and checks the version (zsh 5.1+, bash 4.0+) Upgrade your shell
Shell hooks Checks if eval "$(suv init zsh)" (or bash equivalent) is in your rc file echo 'eval "$(suv init zsh)"' >> ~/.zshrc
Config Loads and validates config.toml, or confirms defaults are in use Check suv settings or fix TOML syntax
Database Checks database exists, opens correctly, schema version is current, and PRAGMA integrity_check passes Run suv gc --vacuum or re-initialize
Recording Checks that recording is enabled and not paused suv enable
MCP (Claude Code) Checks ~/.claude.json for mcpServers.suvadu entry suv init claude-code
MCP (Cursor) Checks ~/.cursor/mcp.json for mcpServers.suvadu entry suv init cursor
Agent hooks Checks for hook scripts in ~/.config/suvadu/hooks/ suv init claude-code

Status Icons

  • — Check passed
  • — Warning (optional component not configured)
  • — Failed (something is broken and needs fixing)