Run multiple Copilot agents in parallel. One taskbar icon to manage them all.
Modern AI-assisted development isn't one task at a time β it's multiple Copilot agents running simultaneously across different repos, branches, and contexts. But juggling terminals, IDEs, and browsers for each agent creates a context-switching tax that kills the productivity gains.
Copilot Booster eliminates that overhead. Pin it to your taskbar and get complete isolation per session β each Copilot agent gets its own terminal, IDE workspace, and browser instance, all tracked and instantly accessible from a single icon. No more hunting for the right window. No more losing context. Just click and focus.
π¦ Download Installer Β |Β π Download Portable ZIP
| Without Copilot Booster | With Copilot Booster |
|---|---|
| Alt-Tab through dozens of windows to find the right terminal | Click the session β focus the exact terminal, IDE, or browser |
| Manually track which agent is working on what | Live Running column shows Terminal, Copilot CLI, IDE, Edge, and Explorer status per session |
| One shared browser for all research | Isolated Edge workspaces per session β tabs saved and restored automatically |
| Context-switch between repos by cd-ing around | Git worktree workspaces give each agent its own branch and directory |
| Lose track of parallel agents after a restart | Window handles, terminals, and Edge tabs all persist across restarts |
| No idea when an agent finishes | π Bell notifications with popups when a session is ready |
Press Win+Alt+X from anywhere to slide the Booster window up from the taskbar. Click away to dismiss β no window management needed.
- Global hotkey (Win+Alt+X) β show/hide from anywhere, system-wide via Win32
RegisterHotKey - Slide animation β smooth slide-up from the bottom of the screen (configurable)
- Auto-hide on focus loss β the window dismisses when you click elsewhere (stays visible for dialogs, context menus, and settings)
- 6 position options β Bottom Left, Bottom Center, Bottom Right, Top Left, Top Center, Top Right
- Per-monitor support β choose which screen to show the spotlight on, or follow the cursor
- Tray/taskbar activation β clicking the tray icon or taskbar button shows the spotlight on the cursor's screen
- Enabled by default β spotlight mode is on out of the box; configure position and screen in Settings
Right-click the pinned icon to access everything:
- New Copilot Session β start a new session with a smart directory picker
- Existing Sessions β browse, resume, or open sessions in your IDE
- Settings β configure tools, directories, and IDEs
The session browser is the central hub. Each session shows Session, CWD (with β for Git repos), Date, Running, and Ctx. (context) columns β giving you a live view of what's running where. The Ctx. column displays file and Edge tab icons with counts, allowing quick access to session content. Sessions with active processes are automatically sorted to the top.
The Running column tracks running contexts across multiple environments:
| Context | How it's detected |
|---|---|
| Terminal | Windows launched via "Open Terminal" are tracked by PID and cached across restarts |
| Copilot CLI | Detected via events.jsonl content parsing β working (spinner) or idle (bell) |
| IDE | IDEs launched via the Open menu are tracked by window handle and cached across restarts |
| Edge | Browser workspaces tracked via UI Automation anchor-tab detection |
| Explorer | Explorer windows opened via context menu are tracked by HWND |
| Files | Session files folder opened via context menu |
Each active context is a clickable link β click to focus the corresponding window instantly. Re-opening an IDE that's already tracked for a session will focus the existing window instead of launching a new instance.
Organize your sessions into custom tabs β up to 10 tabs with full drag-and-drop reordering. Add new tabs directly from the main window with the + button, or manage them in Settings.
- Quick add (+) button β create new tabs directly from the session tab strip without opening Settings
- Drag-and-drop columns β reorder grid columns by dragging headers; column order is persisted across restarts (Status column stays pinned)
- Drag-to-tab β drag selected sessions onto a different tab header to move them between tabs
- Move sessions between tabs β right-click β "Move to" to reassign sessions to any tab
Other session browser features:
- Multi-select β hold Ctrl for individual selection or Shift for range selection; batch Pin/Unpin and Move to tab via context menu
- Search β filter sessions by title, folder, or metadata as you type
- Pinned sessions β pin sessions to keep them at the top regardless of sorting
- Running-first sorting β sessions with active processes automatically float to the top
- Auto-select on tab switch β switching tabs immediately selects the first row for quick navigation
- Auto-refresh β the list updates when new sessions appear or names change externally
- Auto-cleanup β empty sessions with no activity are automatically removed
The status column shows live session state with animated icons β a spinning blue indicator when Copilot CLI is working, and a π red bell when it's idle and waiting for input. Bell rows are highlighted with a prominent red background for quick visual scanning.
When a session finishes work, a Windows notification pops up with the session name. Status detection is powered by content-based parsing of events.jsonl β it understands assistant turns, tool requests, and ask_user pauses.
- Content-based detection β parses event types (assistant.turn_start, tool.execution_start, ask_user) for accurate status
- One-shot notifications β each bell only fires once per idle transition
- Staleness threshold β sessions inactive for 30+ minutes are ignored to prevent false bells
- Startup-aware β existing idle sessions don't trigger false notifications when the app launches
- Persistent bell state β bell notifications survive app restarts
- Configurable β toggle notifications on/off in Settings
Right-click any session row to access all actions in a single context menu with system icons:
| Action | Description |
|---|---|
| Open Files | Sub-menu listing session files (plan.md, files/ contents) with shell icons; top item opens session folder |
| Open Session | Resume the session in its original working directory |
| Edit Session | Rename the session or change its working directory |
| Pin / Unpin | Pin sessions to keep them at the top of the list |
| Move to β | Move sessions between configurable tabs |
| Open as New Copilot Session | Start a fresh Copilot CLI session in the same directory |
| Open as New Copilot Session Workspace | Create a Git worktree workspace (Git repos only) |
| Open Terminal | Launch a terminal via Windows Terminal (wt.exe) |
| Open in Explorer (CWD) | Open the working directory in Explorer |
| Open in {IDE} | Sub-menu with CWD/Repo Root folders + matched project files |
| Open in Edge | Launch a managed Edge browser workspace |
| Save Edge State | Manually save Edge tabs (visible when Edge is open) |
| Delete Session | Soft-delete a session (last item, separated) |
Configure file patterns per IDE (e.g., *.sln;*.slnx) in Settings. When a pattern is set, the IDE context menu becomes a sub-menu that searches for matching project files and shows them for quick one-click opening.
- Fast search β uses
git ls-filesfor Git repos (respects .gitignore), falls back to directory walk with configurable ignored directories - Depth-sorted β shallowest matches shown first, up to 5 results
- Configurable exclusions β manage ignored directories (node_modules, bin, obj, etc.) in the IDEs settings tab
Open a managed Microsoft Edge window linked to any session. Each workspace gets a unique anchor tab that lets Copilot Booster track, focus, and detect whether the browser window is still open.
- Tab save/restore β save Edge tabs via "Save Edge State" in the context menu; tabs are restored when reopening Edge for the session
- Active tracking β the Edge workspace appears as a clickable link in the Running column
- Session name in tab β the anchor tab title shows the session name; updates live when you change the alias
- Manual save β "Save Edge State" context menu button saves all open tabs for the session
- Tab-level detection β uses UI Automation to find the anchor tab across all Edge windows
- Auto-cleanup β when you close the anchor tab or the Edge window, the workspace is automatically removed from tracking
The New Session dialog shows your most-used working directories β sorted by frequency across all previous sessions. Non-existent paths are automatically cleaned up.
Each directory shows:
- # Sessions created β how many sessions have used this path
- Git β whether the directory is inside a Git repository (including worktrees)
Right-click any directory to access all actions, or double-click to quickly start a new session with a name prompt.
For Git-enabled directories, Copilot Booster can create isolated workspaces backed by git worktrees. Each workspace gets its own branch and directory β perfect for working on multiple features in parallel without stashing or switching branches.
Create a workspace from two places:
- New Session β right-click a Git directory β New Copilot Session Workspace
- Existing Sessions β right-click a session β Open as New Copilot Session Workspace
Workspaces are stored by default in %APPDATA%\CopilotBooster\Workspaces\ and named after the repository and branch (e.g., myrepo-feature-xyz). The workspace directory can be changed in Settings.
The workspace dialog offers three modes:
Check out an existing branch into its own worktree. The branch dropdown lists all local and remote branches.
Create a new branch based on any existing branch. Pick a base branch from the dropdown and name your new branch.
Start a workspace directly from a GitHub PR number. Copilot Booster validates the PR and fetches its title, then checks out the contributor's original branch name β matching what gh pr checkout does.
Start a workspace from a GitHub issue number. Enter the issue number, click Check to fetch the title, and optionally use it as the session name. Pick a base branch and Copilot Booster creates a new branch using the issue branch pattern configured in Settings (default: issues/{number}-{alias}).
All configuration lives in a tabbed UI with info labels and tooltips β no JSON editing required.
- Theme β choose between System (default), Light, or Dark theme; persisted across restarts
- Date format β choose between
YYYY-MM-DD HH:mm,MM/DD hh:mm AM/PM, orDD/MM HH:mm; the Date column auto-sizes to fit - Notify on bell β toggle Windows notifications when sessions finish work
- Always on top β keep the window above other windows
- Auto-hide on focus β hide other session windows when focusing one
- Max active sessions β configurable limit (0 = unlimited)
- Pinned order β sort pinned sessions by last updated or alias name
- Default Work Dir β set the default working directory for new sessions
- Workspace Dir β set the directory where Git worktree workspaces are stored (default:
%APPDATA%\CopilotBooster\Workspaces\) - Spotlight β enable/disable the spotlight feature and auto-hiding independently, configure position (6 options), target screen (per-monitor), and slide animation
Whitelist shell commands and MCP tools that Copilot can use without prompting for confirmation. Each entry is passed as --allow-tool when launching the Copilot CLI, so matching commands execute immediately β no manual approval needed.
On first run, the list is empty. Here are some commonly used tools:
| Tool | Description |
|---|---|
shell(git log:*) |
Git log commands |
shell(git diff:*) |
Git diff commands |
shell(git status:*) |
Git status commands |
shell(Set-Location:*) |
Change directory in PowerShell |
mcp__github-mcp-server |
GitHub MCP server tools |
Tip: Use wildcards (
*) to allow all sub-commands under a prefix. For example,shell(git log:*)coversgit log,git log --oneline, and any other git log variation.
Grant Copilot access to specific directories on your machine. Each entry is passed as --add-dir when launching the Copilot CLI, expanding the set of paths Copilot can read and write to.
| Directory | Description |
|---|---|
D:\repo |
Your repository root |
~\.copilot |
Copilot session state |
Tip: Add your top-level project folders so Copilot can navigate across repositories without being blocked by directory restrictions.
Whitelist URLs that Copilot CLI can access without prompting. These are stored in the Copilot CLI global config (~/.copilot/config.json) as allowed_urls.
Register your favorite IDEs β Visual Studio, VS Code, Rider, Eclipse, or any editor with a command-line launcher. Each IDE entry includes a description, executable path, and optional file pattern (e.g., *.sln;*.slnx) for automatic project file discovery in the context menu. The IDE Search section lets you manage directories excluded from file pattern search (e.g., node_modules, bin, obj).
Configure custom session tabs β add, rename, remove, and reorder tabs. The first tab is the default for new sessions.
Configure branch naming patterns for issue and PR-based workspaces. Use {number} and {alias} as placeholders.
Configure Microsoft Edge integration β toggle whether renaming a session automatically updates the Edge anchor tab title.
Copilot Booster checks for new versions on startup by scanning the GitHub releases page. When an update is available, a banner appears at the bottom of the window β click to download and install the latest version automatically.
Copilot Booster lives in your system tray for instant access. Closing the window minimizes to tray instead of exiting β only Quit from the tray menu exits the application.
- Double-click the tray icon to show/restore the window
- Right-click for quick access to Show, Settings, or Quit
- The tray icon is always visible while the app is running
- .NET 10 Runtime (or SDK for building from source)
- GitHub Copilot CLI β install via
winget install GitHub.CopilotorGitHub.Copilot.Prerelease
Download CopilotBooster-Setup.exe from the latest release and run it.
- Installs to
%APPDATA%\CopilotBooster\β no admin required - Creates Start Menu and optional desktop shortcuts
- Includes uninstaller (Add/Remove Programs)
Download CopilotBooster-win-x64.zip from the latest release, extract it anywhere, and run CopilotBooster.exe.
git clone <repo-url> copilot-booster
cd copilot-booster
.\install.ps1- Run
CopilotBooster.exefrom the publish folder - Right-click the icon in the taskbar β Pin to taskbar
- Right-click the pinned icon β Settings to configure your tools and directories
cd src
dotnet publish -c Release -o ..\publishBuild Installer (requires Inno Setup)
dotnet publish src/CopilotBooster.csproj -c Release -o publish
iscc installer.iss
# Output: installer-output\CopilotBooster-Setup.exeCopilotBooster.exe # Open New Session tab
CopilotBooster.exe "C:\my\project" # New session in a specific directory
CopilotBooster.exe --resume <sessionId> # Resume a session in its original CWD
CopilotBooster.exe --open-existing # Open the session browser
CopilotBooster.exe --open-ide <sessionId> # Open IDE picker for a session
CopilotBooster.exe --settings # Open settingsCopilotBooster.exe (WinForms .NET 10, persistent taskbar window)
βββ System tray icon (always visible, minimize-to-tray on close)
βββ Sets AppUserModelID for taskbar/JumpList/notification association
βββ Registers PID β session mapping in %APPDATA%\CopilotBooster\active-pids.json
βββ Launches copilot.exe with --allow-tool and --add-dir from settings
βββ Creates session workspace.yaml + events.jsonl for new sessions
βββ Active context tracking (Terminal, Copilot CLI, IDE, Edge, Explorer)
β βββ PID registry + process scanning for terminals
β βββ events.jsonl content parsing for Copilot CLI status (working/idle/bell)
β βββ HWND tracking for IDE instances (persisted across restarts)
β βββ UI Automation for Edge anchor-tab detection
β βββ HWND tracking for Explorer windows
βββ Per-session state (Edge tabs, session-specific data)
βββ IDE file pattern search (git ls-files / directory walk)
βββ Window handle cache persistence (unified for all window types)
βββ Terminal cache persistence across restarts
βββ Updates jump list on launch + every 5 min (background, coordinated)
βββ Cleans up on exit (unregisters PID, refreshes jump list)
| Service | Purpose |
|---|---|
ActiveStatusTracker |
Aggregates active status across all context types with HWND persistence |
EventsJournalService |
Content-based Copilot CLI status detection via events.jsonl parsing |
BellNotificationService |
Notifications and bell state management |
GlobalHotkeyService |
System-wide Win+Alt+X hotkey via Win32 RegisterHotKey |
SessionDataService |
Unified session loading with Git detection caching |
CopilotSessionCreatorService |
Creates new sessions with workspace.yaml and events.jsonl |
EdgeWorkspaceService |
Edge browser workspace lifecycle and UI Automation |
EdgeTabPersistenceService |
Save/restore Edge tabs per session |
IdeFileSearchService |
Fast project file search (git ls-files / directory walk) |
SessionStateService |
Per-session state directory management |
WindowHandleCacheService |
Unified window handle persistence across restarts |
TerminalCacheService |
Persists terminal sessions across app restarts |
WindowFocusService |
HWND-based window focusing with P/Invoke |
SessionService |
Session CRUD, search, and Git root detection |
SessionArchiveService |
Archive and pin state persistence |
CopilotLocator |
Finds the Copilot CLI executable |
CopilotConfigService |
Reads/writes Copilot CLI global config (allowed_urls, trusted_folders) |
| Path | Purpose |
|---|---|
%APPDATA%\CopilotBooster\launcher-settings.json |
Tools, directories, IDEs, file patterns, ignored dirs |
%APPDATA%\CopilotBooster\active-pids.json |
PID β session ID mapping |
%APPDATA%\CopilotBooster\terminal-cache.json |
Cached terminal sessions for restart persistence |
%APPDATA%\CopilotBooster\window-handles.json |
Unified window handle cache (IDE, Explorer, Edge) |
%APPDATA%\CopilotBooster\session-states.json |
Archive and pin states per session |
%APPDATA%\CopilotBooster\sessions\{id}\ |
Per-session state directory |
%APPDATA%\CopilotBooster\sessions\{id}\edge-tabs.json |
Saved Edge tab URLs |
%APPDATA%\CopilotBooster\jumplist-lastupdate.txt |
Update coordination timestamp |
%APPDATA%\CopilotBooster\launcher.log |
Debug log |
%APPDATA%\CopilotBooster\pinned-directories.json |
Manually-added directories for New Session |
~/.copilot/session-state/ |
Session metadata (managed by Copilot CLI) |
MIT

























