Repo2MD — Live Project ContextOne Markdown file, always in sync with the files you pick: folder tree + each file's relative path + contents. Built for one job — pasting project context into Copilot Chat / any LLM without hand-maintaining it. It starts blank. You choose what goes in (right-click → Add to Context), or switch on whole-project mode if you want everything. What it does
The two ways to add / removeAdd — select files and/or folders in the Explorer (Cmd/Ctrl-click for multi-select) → right-click → Repo2MD: Add to Context. Remove — right-click the same items → Repo2MD: Remove from Context. Reset to blank — Everything — Pick from a list — Mouse only (no keyboard): click the Repo2MD item in the status bar
(bottom-right) for a menu with Generate / Choose files / Include whole project /
Clear selection. Handy on Windows — the Command Palette there is
Your selection lives per project in Try it (2 minutes)
CLI smoke test without VS Code: Install for daily use (pick one)A. Package a VSIX (proper way):
Then VS Code → Extensions panel → B. Zero-tools way: copy this folder to
Settings (
|
| Setting | Default | Meaning |
|---|---|---|
repo2md.outputFile |
PROJECT_CONTEXT.md |
Name of the generated file |
repo2md.autoUpdate |
true |
Regenerate on save/create/delete |
repo2md.mode |
picked |
picked starts blank and includes only what you add; whole includes the entire project |
repo2md.files |
[] |
Picked paths (files or folders). ONLY these are included. Managed via right-click → Add/Remove from Context |
repo2md.maxFileSizeKB |
64 |
Bigger files: listed in tree, contents skipped |
repo2md.profile |
auto |
Stack preset. auto detects per project; playwright also excludes playwright-report, test-results, blob-report, user-data (browser profiles), .auth/ and storage-state secret files |
repo2md.extraIgnores |
[] |
Extra file/folder names to exclude |
repo2md.includeContents |
true |
false = tree only |
Commands (Cmd/Ctrl+Shift+P)
- Repo2MD: Generate Project Context Now (manual run, also works with
autoUpdateoff) - Repo2MD: Choose Files (Pick List)
- Repo2MD: Clear Selection (Blank Context)
- Repo2MD: Include Whole Project
- Explorer right-click: Add to Context / Remove from Context
Using it across many projects
Repo2MD only ever writes one file per workspace root, so it is safe to keep
installed. If you want it dormant by default: set repo2md.autoUpdate: false
in your User settings, then turn it on per project in that project's
.vscode/settings.json. Projects with autoUpdate off are never touched
(manual command still works).
Notes
- Multi-root workspaces: one
PROJECT_CONTEXT.mdper root folder, each with its own picks/profile. .gitignore-aware filtering is a possible future addition; for now useextraIgnores.- Tip: add
PROJECT_CONTEXT.mdto the project's.gitignore— it's generated, not source.
FAQ
Does it create folders or scaffolding in my project? No. Exactly one file
(PROJECT_CONTEXT.md, or your configured outputFile) at the workspace root.
The sample-playground/ folder in the source repo is a development fixture
and is not part of the installed extension.