This guide covers the most frequently encountered issues when using Gonzo and their solutions. For AI-specific or format-specific issues, see the dedicated troubleshooting pages.
Installation Problems
Command Not Found After Installation
Symptom: Running gonzo returns "command not found" error.
Causes & Solutions:
Go installation - PATH not configured
# Check if GOPATH/bin is in PATHecho$PATH|grep-q"$(go env GOPATH)/bin"&&echo"Found"||echo"Missing"# Fix: Add to your shell profileecho'export PATH=$PATH:$(go env GOPATH)/bin'>>~/.bashrcsource~/.bashrc# Or for zshecho'export PATH=$PATH:$(go env GOPATH)/bin'>>~/.zshrcsource~/.zshrc
Binary installation - not in PATH
# Move to standard locationsudomvgonzo/usr/local/bin/# Or add current directory to PATHexportPATH=$PATH:$(pwd)
Verify installation
whichgonzogonzo--version
Permission Denied When Running Binary
Symptom: permission denied when trying to execute gonzo.
Solution:
Build Failures
Symptom: go install or make build fails.
Common causes:
Go version too old
Missing dependencies
Network issues
Display Issues
Garbled or Broken Interface
Symptom: Strange characters, broken borders, or corrupted display.
Solutions:
Check terminal compatibility
✅ Works well: iTerm2, Alacritty, Windows Terminal, GNOME Terminal, Kitty
⚠️ May have issues: Very old terminals, basic xterm
# Make executable
chmod +x gonzo
# If in system directory
sudo chmod +x /usr/local/bin/gonzo
# Verify permissions
ls -l $(which gonzo)
# Should show: -rwxr-xr-x
# Check version (need 1.21+)
go version
# Update via Homebrew
brew upgrade go
# Or download from https://golang.org/dl/
# Clean and retry
go clean -modcache
go mod download
go install github.com/control-theory/gonzo/cmd/gonzo@latest
# Use proxy if behind firewall
export GOPROXY=https://proxy.golang.org,direct
go install github.com/control-theory/gonzo/cmd/gonzo@latest
# Some terminals work better with specific skins
gonzo --skin=github-light -f logs.log
# Check current size
tput cols # Width
tput lines # Height
# Resize terminal to at least 80x24
# Or use fullscreen mode: Cmd/Ctrl + Enter (terminal dependent)
Tab - Switch panels
↑↓ or k/j - Navigate items
Enter - Select/open
# For files
ls -la application.log
file application.log
# Check file has content
wc -l application.log
head application.log
# Filter by severity
grep -E "(ERROR|WARN)" large.log | gonzo
# Filter by time range
awk '/10:00/,/11:00/' large.log | gonzo
# Last N lines
tail -n 5000 large.log | gonzo
# Stream rather than load entire file
cat large.log | gonzo
# Flag takes precedence
GONZO_FILES="file1.log" gonzo -f file2.log
# Will use file2.log, not file1.log
# Run with verbose flag
gonzo -v -f application.log 2> gonzo-debug.log
# Check debug output
cat gonzo-debug.log
# System info
uname -a
echo $TERM
echo $SHELL
# Gonzo version
gonzo --version
# Go version (if relevant)
go version
# Terminal info
echo $COLUMNS x $LINES
# Simple test case
echo '{"level":"info","message":"test log"}' > test.log
gonzo -f test.log
# If this works, issue is with your specific logs