Skip to content

tanmayairbase/copilot-sessions-hub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Copilot Sessions Hub logo

Copilot Sessions Hub

Desktop Electron app (TypeScript + Node 24) that aggregates Copilot sessions from multiple repositories, provides full-text search in a resizable left sidebar, and renders selected session details in a chat-style main pane.

FeaturesDocumentationDevelopmentPackagingConfiguration

Copilot Sessions Hub screenshot ... Status_and_Copilot_Sessions_Hub

Pain points this app addresses

  • Copilot session history is fragmented across tools and repositories, with no single place to browse it.
  • Past prompts, responses, and decisions are hard to rediscover once a session is closed.
  • There is no reliable full-text search across both user prompts and Copilot responses across all sessions.
  • Session history can disappear after retention limits, making older conversations hard or impossible to revisit later.
  • As session volume grows, history becomes noisy and harder to organize without filtering, starring, and archiving.

Features

  • Aggregates sessions from Copilot CLI, VS Code Copilot Chat, and OpenCode into one desktop view.
  • Syncs from configurable repository roots and keeps synced history locally for later rediscovery.
  • Provides full-text search plus repository, model, estimated cost, origin, date, archived, starred, and sub-agent filters.
  • Surfaces per-session estimated cost as $, $$, or $$$ chips when pricing data is available, with an Unavailable filter bucket when no total can be computed.
  • Renders a read-only chat-style session detail view with model metadata, IST timestamps, and external-link support.
  • Supports local organization with starring, archiving, archived history handling, and quick jumps back to important messages.
  • Includes a resizable sidebar, settings UI, editable JSON config, and optional background sync.

Documentation

Contributor-focused architecture and implementation docs live in docs/.

Start with:

Prerequisites

  • Node.js 24+
  • pnpm 10+
  • VS Code CLI on PATH (code) if you want one-click VS Code open action
  • gh CLI installed/authenticated if you want one-click CLI open action

Development

pnpm install
pnpm dev

This starts Electron with HMR for the renderer.

Troubleshooting: Error: Electron uninstall on pnpm dev

If you see this error, the Electron binary was not downloaded yet.

Run:

pnpm run postinstall

Then retry:

pnpm dev

Testing

pnpm test

Includes parser, formatter, and UI component tests with coverage.

Lint and type-check

pnpm lint
pnpm typecheck

This repo also includes a root tsconfig.json and workspace VS Code TypeScript settings so the editor uses the same project graph and local TypeScript version as the CLI checks.

Production build/package

Build app bundles:

pnpm build

Create distributables for current platform:

pnpm package

Create a macOS DMG explicitly:

pnpm package:mac

Create a Windows installer executable (.exe) for standard Windows x64 machines:

pnpm package:win

Optional: create a Windows ARM64 installer:

pnpm package:win:arm64

Artifacts are generated in release/.

Windows packaging outputs an installer like:

release/Copilot Sessions Hub Setup <version>.exe

On macOS, cross-building Windows installers may download Wine/NSIS helper binaries on the first run, so the first packaging pass can take longer.

Configuration

Settings are stored in user data config.json.

Default repo roots on first run (platform-specific):

macOS:

  • ~/projects/airbase-frontend
  • ~/projects/frontend2
  • ~/projects
  • ~/projects/Airbase.Playwright.Automation.Suite

Windows:

  • %USERPROFILE%\projects
  • %USERPROFILE%\Documents
  • %USERPROFILE%\source

Linux:

  • ~/projects
  • ~/code

You can edit config from:

  • In-app Settings modal
  • In-app Open Config JSON button

Config shape:

{
  "repoRoots": ["/absolute/path/to/repo"],
  "discoveryMode": "both",
  "appearance": "system",
  "syncMode": "manual",
  "backgroundSyncIntervalMinutes": 10,
  "explicitPatterns": [
    "**/.copilot/**/*.{json,jsonl}",
    "**/.vscode/**/*copilot*.{json,jsonl}",
    "**/.github/copilot/**/*.{json,jsonl}"
  ]
}
  • discoveryMode: "autodiscovery" uses built-in patterns.
  • discoveryMode: "explicit" uses only explicitPatterns.
  • discoveryMode: "both" combines both.
  • appearance: "system" follows the OS theme, while "light" and "dark" force the app theme.
  • syncMode: "manual" keeps sync user-triggered only.
  • syncMode: "manual-plus-background" enables periodic background sync.
  • backgroundSyncIntervalMinutes controls periodic sync cadence (1-1440).

Saving settings immediately updates config and triggers a sync.

Logging

Detailed logs are written to:

  • <userData>/logs/app.log (main process)
  • Browser devtools console (renderer/UI actions)

About

A single place to search, read and persist all copilot sessions from vscode, CLI and opencode

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages