Browser Troubleshooting (Linux)
Problem: “Failed to start Chrome CDP on port 18800”
Fased’s browser control server fails to launch Chrome/Brave/Edge/Chromium with the error:Root Cause
On Ubuntu and many Linux distros, the default Chromium installation is a snap package. Snap’s AppArmor confinement interferes with how Fased spawns and monitors the browser process. Theapt install chromium command installs a stub package that redirects to snap:
Solution 1: Install Google Chrome (Recommended)
Install the official Google Chrome.deb package, which is not sandboxed by snap:
~/.fased/fased.json):
Solution 2: Use Snap Chromium with Attach-Only Mode
If you must use snap Chromium, configure Fased to attach to a manually-started browser:- Update config:
- Start Chromium manually:
- Optionally create a systemd user service to auto-start Chrome:
systemctl --user enable --now fased-browser.service
Verifying the Browser Works
Check status:Config Reference
browser.enabled: enable browser control. Default:true.browser.executablePath: path to a Chromium-based browser binary, such as Chrome, Brave, Edge, or Chromium. Default: auto-detected.browser.headless: run without GUI. Default:false.browser.noSandbox: add--no-sandboxfor Linux setups that need it. Default:false.browser.attachOnly: attach to an existing browser instead of launching one. Default:false.browser.cdpPort: Chrome DevTools Protocol port. Default:18800.
Problem: “Chrome extension relay is running, but no tab is connected”
You’re using thechrome profile (extension relay). It expects the Fased
browser extension to be attached to a live tab.
Fix options:
- Use the managed browser:
fased browser start --browser-profile fased(or setbrowser.defaultProfile: "fased"). - Use the extension relay: install the extension, open a tab, and click the browser relay extension icon to attach it.
- The
chromeprofile uses your system default Chromium browser when possible. - Local
fasedprofiles auto-assigncdpPort/cdpUrl; only set those for remote CDP.