This Visual Studio Code extension helps you generate LLM-ready context from your workspace files, making it easier to collaborate with AI models. The extension can automatically reference local code dependencies and respects your .gitignore
rules to avoid including unnecessary files.
- Generate LLM-ready context from the currently open file and its imports, your entire VS Code workspace or marked files
- Mark or unmark open files via Command Palette, or individual files and folders via the Explorer context menu
- Automatic file tracking updates marked files when they're moved or deleted
- Token count estimation for generated context
- Optional file type detection to include or exclude common programming file extensions
- Automatic support for multiple programming languages and file types
-
Via Explorer:
- Right-click on one or more files or folders in the Explorer
- Select "Mark for LLM Context"
- Files appear in the Marked Files view
- Marking a folder includes all compatible files within it
-
Via Command Palette:
- Open a file
- Press
Ctrl+Shift+P
(Windows) orCmd+Shift+P
(Mac) - Select "Mark/Unmark File for LLM Context"
Three ways to generate context:
-
Current File + Imports:
- Open a file
- Command Palette → "Generate LLM Context (Current File + Imports)"
-
Workspace:
- Open a workspace
- Command Palette → "Generate LLM Context (Workspace)"
-
Marked Files:
- Mark desired files
- Command Palette → "Generate LLM Context (Marked Files)"
The generated context will be copied to your clipboard or opened in a new window, based on your settings.
After generating context, you'll see an estimated token count. This helps you stay within AI model token limits. A warning appears if the context exceeds a configurable token limit (default: 32,000).
Configure the extension in VS Code settings:
-
Enable File Type Detection
enforceFileTypes
: Enable/disable file type detection (default:true
)- When enabled, only files with extensions in
detectedFileExtensions
are processed - When disabled, all file types are included regardless of extension
-
Detected File Extensions
- Customize which file types to include (only when
enforceFileTypes
is enabled) - Supports many languages and formats:
- JavaScript/TypeScript (js, jsx, ts, tsx, etc.)
- Python (py, pyi, pyw, ipynb)
- Ruby (rb, rake, erb, etc.)
- PHP (php, phtml)
- Swift/Objective-C (swift, m, h, etc.)
- Systems (c, cpp, rs, go, etc.)
- Web (html, css, scss, etc.)
- Mobile (java, kt, dart, etc.)
- Configuration (json, yaml, toml, etc.)
- And more...
- Customize which file types to include (only when
-
Ignore Files
- Files containing ignore patterns (like .gitignore)
- Default:
.gitignore
,.dockerignore
- Patterns from each file are used to exclude matching files from context
- Files are processed in order, and missing ignore files are safely skipped
-
Token Warning Threshold
- Token count threshold for showing warnings
- Default:
32000
-
Output Method
clipboard
: Copy to clipboard (default)newWindow
: Open in new editor
-
Output Format (for newWindow only)
plaintext
: Plain text (default)markdown
: Markdown formatting
-
Include package.json (for open file context only)
- Include package.json when generating context for open file
- Default:
true
Released under the MIT License.