Skip to content

Quick Reference: Troubleshooting

Fresh

Source: bible/setup.md, bible/runbook.md

Symptoms to fixes, one table.

SymptomFix
Server will not start (port in use)Kill existing process on 4700 or change GHOST_ENGINE_PORT
Module not foundnpm install
Node version errorNeed Node 18+ (20+ recommended)
Accounts not importingCheck registryPath. Default: browser-sender/data/account-identity/registry.json
Cookie dir emptyAccounts work but need fresh login
Chrome not foundInstall Google Chrome (not Chromium)
Profile lockedAnother Chrome using profile. Close it
Ghost mode not workingSet VISION_PROVIDER + matching API key
Window not focusedOnly one ghost session at a time on desktop
CTR not finding domainIncrease maxPages. If rank > 30, won't find
Wrong city for CTRVerify city is in geo-profiles list
Too many failuresReduce concurrency. Check proxy health
Rank not movingIncrease clicksPerDay. Add keyword variants. Layer cascades
Account attrition highReduce maxRunsPerAccount. Run warmup batches
CreepJS shows 33% headlessVerify --disable-blink-features=AutomationControlled flag, NO JS webdriver patch
ERR_SSL_PROTOCOL_ERRORDisable TLS_PROXY (should be opt-in, not default)
Browser wrong sizeVerify PHYSICAL_SCREEN = { width: 1366, height: 768 }
Account stuck COOLINGForce unlock: POST /accounts/:id/unlock
Proxy keeps rejectingPool fallback should auto-handle. Force rotate: POST /proxies/rotate
ADB device not detectedadb kill-server && adb start-server && adb devices
Server eats CPU at idleCheck /jobs/stats. Cancel stuck jobs. Disengage autopilot

Hard rules (do not break)

  1. Do not patch navigator.webdriver via JS. Use the Chrome flag
  2. Do not use big engine (:3500) for persona work
  3. Do not pass windowSize or fingerprint from registry.json (stale macOS defaults)
  4. Ghost mode is one desktop session at a time
  5. Vision calls cost ~$0.003 each. Use only for navigation