Context Bundler
Bundle the content of multiple files into a single context file, ready to paste into ChatGPT, Gemini, Claude or any other LLM — without opening each file manually.
Why?
When working with an LLM, you often need to provide context from several files. The usual workflow is painful: open file → Ctrl+A → Ctrl+C → switch to browser → Ctrl+V → repeat for every file.
Context Bundler lets you build a pool of files, generate a single concatenated bundle, and copy it to the clipboard in one click.
Features
Context Bundler Pool panel
A dedicated panel in the Explorer sidebar (and Activity Bar) showing your current file pool:
- Explorer-like Order: Pool files are automatically sorted matching VS Code's file explorer order.
- Single-Line Compact View: Clean 1-row layout per file with left-side path truncation (
...) so filenames are always visible.
- Configurable Folder Depth: Show filenames only (
tres.ts) or include parent folders (dos/tres.ts).
- Inline Configurable Metrics: Toggle 0 to N inline indicators next to filenames (
lines / size / tokens).
- Real-time Token Estimator: Live token estimation (
~chars / 4) for selected files and generated bundles.
- Click to Open: Click any file row in the pool to open it directly in the VS Code editor.
- ✕ button (on hover) to remove individual files from the pool.
- ⚡ Generate — concatenates all checked files into a bundle file with clear start/end markers.
- 📋 Copy — copies the last generated bundle to the clipboard.
- Last generated timestamp with exact bundle token count and links to Open bundle file in editor or Reveal in File Explorer.
Right-click any open editor tab to access context options:
Context Bundler: Add Active Tab File to Pool — adds the right-clicked/active file to pool.
Context Bundler: Add All Open Tabs to Pool — adds all open tabs at once.
Extension Settings
Configure Context Bundler via VS Code Settings (Ctrl+, -> search "Context Bundler"):
context-bundler.folderDepth: Number of parent folder levels to display in labels (0 = filename only, 1 = parent/filename, etc.). Default: 0.
context-bundler.displayMetrics: Choose metrics to display inline next to filenames (["tokens"] by default. Available: lines, size, tokens).
context-bundler.ignorePatterns: List of globs/extensions to ignore (defaults: images, lock files, *.js.map, node_modules, build, dist).
context-bundler.honorGitignore: Whether to automatically ignore files matched by .gitignore (default: true).
context-bundler.confirmFolderAdd: Confirmation prompt when adding folders (default: true).
context-bundler.confirmClearPool: Confirmation prompt before clearing the pool (default: true).
Branded Release / Welcome Tab
Opens automatically on first install or when updating to a new version, titled Context Bundler v1.1.0 - What's New with the extension's icon.
Release Notes
1.1.0
- Added branded Release Notes tab (
Context Bundler v1.1.0 - What's New).
- Added Explorer-style natural path sorting for pool items.
- Added
context-bundler.folderDepth setting to control parent folder levels displayed in filenames.
- Added
context-bundler.displayMetrics setting to choose inline indicators (lines, size, tokens).
- Left-side truncation (
...) for responsive single-row file layout.
- Added live Token Estimator (
~chars / 4) for selected files and generated bundles.
- Added click on file item to open in editor.
- Added Tab context menu options.
- Added settings for ignore patterns,
.gitignore support, and confirmation dialogs.