Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Troubleshooting

Common issues and how to resolve them.


Workspace Issues

“Session not found”

# List available sessions
isolate list

# Check where you are
isolate whereami

“Workspace already exists”

# Use --idempotent to succeed if already exists
isolate work feature-123 --idempotent

“Detached HEAD”

This shouldn’t happen with JJ, but if it does:

# Check current state
jj status

# See the current commit
jj log -r @

# Create a new change if needed
jj new

Sync Issues

“Sync failed”

# Try again with verbose output
isolate sync --verbose

# Check for conflicts
jj status
jj diff

Conflicts during sync

# See what conflicts exist
jj status

# Resolve manually
vim <conflicted-file>

# Commit the resolution
jj describe -m "resolve: merge conflicts"

JJ Issues

“jj: command not found”

Install JJ:

# Via cargo
cargo install jj-cli

# Via Homebrew
brew install jj

“Cannot lock”

# Check what's locking
jj log

# Force unlock if needed (rare)
# JJ handles this automatically

Exit Codes

CodeMeaningWhat to Do
0SuccessDone
1Validation errorCheck input syntax
2Not foundCheck session/task name
3System errorCheck system resources
4External command errorCheck JJ installation
5Lock contentionTry again later

Getting Help

# Check isolate version
isolate --version

# Get help for a command
isolate <command> --help

# Check context
isolate context

Common Patterns

Start Fresh

isolate whereami                    # Should return "main"
isolate work feature-auth --idempotent

Continue Existing Work

isolate whereami                    # Returns "workspace:feature-auth"
# Already in workspace, continue working

Abandon and Start Over

isolate abort --dry-run             # Preview
isolate abort                       # Execute
isolate work feature-auth-v2        # Start fresh

Prevention

  1. Run isolate sync regularly — Don’t let main get too far ahead
  2. Use --idempotent when retrying — Prevents “already exists” errors
  3. Check isolate whereami before operations — Know where you are
  4. Use isolate context for full status — See everything at once