As we step into AI using MCPs and Agents, additional setup can be used to leverage full potential. This repo is dedicated to make prompting and AI use easier.
One-time prerequisite: cp "config.json example" config.json and adjust paths.
Each named session launches its own visible Brave instance with an isolated
profile (own cookies, tabs, logins) and binds it to the matching agent-browser
session. Your personal browser is not touched — unless you explicitly ask for it
with the reserved session name main — and even then you can keep it unexposed
with --no-expose (see below).
node setup-brave.js # isolated session "default"
node setup-brave.js work # isolated session "work"
node setup-brave.js research # another one, in parallel
node setup-brave.js main # your DAILY Brave — agent sees ALL its tabs
node setup-chromium.js # Chromium variant, session "chromium"
node setup-brave.js main --no-expose # daily Brave, NOT exposed to any agentAdd --no-expose (aliases: --no-bind, --private) to launch the session's
browser with no remote debugging port and no agent-browser binding. There is
nothing for an agent to attach to, and the existing session binding is left
untouched — agent-browser --session <name> just falls back to its own invisible
headless browser.
node setup-brave.js main --no-expose # daily browser, agent-proof
node setup-brave.js work --no-expose # open the "work" profile to log in by hand
node setup-chromium.js web --private # same for Chromium- Works for any session, not just
main— handy for logging into a session profile yourself before an agent uses it. - No port is reserved in
sessions.jsonfor an unexposed run. - If that browser is already running exposed, the script refuses: a running process keeps its debug port for life, so relaunching cannot take it away. Quit it (Cmd+Q for your daily Brave) and re-run.
- To expose it later, quit the browser and re-run the same command without the flag.
Then tell the chat/agent which session to use:
Use agent-browser with --session work for all browser commands.
or set AGENT_BROWSER_SESSION=work in that agent's environment.
Notes:
- Session names are lowercase (
work, notWork— macOS paths are case-insensitive). - Session profiles persist under
~/Library/Application Support/AgentBrowserProfiles/, so site logins survive restarts (log in once per session, by hand if needed). - Ports are assigned per session in
sessions.json(gitignored, auto-managed; don't delete it while session browsers are running). mainrequires Brave to be started by the script: if your daily Brave is already running without remote debugging, fully quit it (Cmd+Q) first.- If you close a session's browser window, re-run
node setup-brave.js <name>before agents use it again — otherwise agent-browser silently falls back to launching its own invisible headless browser for that session. agent-browser session listshows active sessions.
Migrating from the old setup (pre-sessions): the old script exposed your main Brave
on port 9222 and bound agent-browser's default session to it. To sever that, fully
quit and relaunch Brave normally, then run node setup-brave.js once to rebind
default to an isolated browser.
Prompts are available to use in chat under /

Enable at settings: github.copilot.chat.codeGeneration.useInstructionFiles