🤖 LLM Context Copy
Copy your file + project structure to clipboard in one click — perfectly formatted for Claude, ChatGPT, Gemini, or any LLM.
Stop manually copy-pasting file contents and trying to describe your folder layout. Right-click any file, pick Copy for LLM, and your full context is ready to paste.
Features
- 📋 File + Structure — active file content + full project tree in one shot
- 📁 Structure Only — project tree for architecture/design questions
- 📄 File Only — single file with language tag and stats
- 📦 Open Editors — all currently open tabs + project tree
- 🔒 Smart exclusion — auto-ignores
node_modules, .git, dist, lockfiles, binaries
- 🗂️ .gitignore aware — respects your existing ignore rules
- 📊 Token estimate — shows
~3,420 tokens · 287 lines · 13.7 KB after copy
- 🎛️ 3 output formats — Markdown (default), XML, or Plain Text
- ⚙️ Fully configurable — exclusions, depth, size limit, git info, and more
Usage
Right-click any file in the Explorer or Editor → Copy for LLM submenu:
| Option |
What you get |
| File + Project Structure |
Tree + file content (most common) |
| Project Structure Only |
Tree only |
| Active File Only |
File content only |
| All Open Editors + Structure |
All open tabs + tree |
Keyboard shortcuts
| Keys |
Action |
Ctrl+Alt+C / Cmd+Alt+C |
File + Project Structure |
Ctrl+Alt+Shift+C / Cmd+Alt+Shift+C |
Structure Only |
Command Palette
Ctrl+Shift+P → type LLM Context
Example output (Markdown)
# 🤖 LLM Context — `my-api`
| | |
|---|---|
| **Project** | `my-api` |
| **Generated** | 2025-06-01 14:23:11 UTC |
| **Branch** | `feature/auth` |
| **Focus file** | `src/auth/login.service.ts` |
---
## 📁 Project Structure
my-api/
├── 📁 src/
│ ├── 📁 auth/
│ │ ├── 🔷 login.service.ts (4.2 KB) ◄ FOCUS
│ │ └── 🔷 auth.module.ts (1.1 KB)
│ ├── 📁 users/
│ │ └── 🔷 users.service.ts (3.8 KB)
│ └── 🔷 main.ts (0.5 KB)
├── 📋 package.json (1.2 KB)
└── 📝 README.md (2.0 KB)
## 📄 `src/auth/login.service.ts` · 112 lines · 4.2 KB
```typescript
import { Injectable } from '@nestjs/common';
// ... full file content
Context built by LLM Context Copy (VS Code extension)
---
## Configuration
**Settings** (`Ctrl+,`) → search **LLM Context Copy**:
| Setting | Default | Description |
|---------|---------|-------------|
| `excludePatterns` | `["node_modules", ".git", "dist", ...]` | Files/dirs to hide from tree |
| `maxFileSizeKb` | `150` | Skip content for files larger than this (KB) |
| `maxTreeDepth` | `10` | Max folder nesting depth |
| `includeFileStats` | `true` | Show line count + file size |
| `outputFormat` | `"markdown"` | `"markdown"` \| `"xml"` \| `"plain"` |
| `includeGitInfo` | `true` | Show current git branch in header |
| `respectGitignore` | `true` | Read `.gitignore` to filter tree |
| `showTokenEstimate` | `true` | Show token count notification |
---
## Publishing to the Marketplace
```bash
# 1. Create a publisher at https://marketplace.visualstudio.com/manage
# 2. Update "publisher" in package.json and your name in LICENSE
# 3. Get a Personal Access Token from Azure DevOps
npx @vscode/vsce login <your-publisher-id>
# 4. Publish
npm run publish
Local install from source
git clone https://github.com/your-username/llm-context-copy
cd llm-context-copy
npm install
npm run bundle # builds dist/extension.js
npm run package # produces .vsix
code --install-extension llm-context-copy-1.0.0.vsix
Privacy
All processing is 100% local. No data leaves your machine. The extension only reads files from your workspace and writes to your system clipboard.
License
MIT