VS Code Extension

Snapshot
your entire
workspace.

Right-click any folder. Tree Mapper captures the full directory tree and every file's source into a single Markdown file — instantly ready for any AI assistant.

60+ Languages
2 MB File limit
Free Forever
tree-mapper — output preview LIVE
Directory Tree Source Code AI-Ready Markdown 60+ Languages Right-click to run Smart ignore rules Auto .gitignore Token count Selection memory Snapshot history Status bar Dual tree view Directory Tree Source Code AI-Ready Markdown 60+ Languages Right-click to run Smart ignore rules Auto .gitignore Token count Selection memory Snapshot history Status bar Dual tree view
What it does

Everything you need.
Nothing you don't.

Full directory tree

CLI-style ├── / └── hierarchy. Directories rendered before files at every level, exactly as you'd see in a terminal.

Language-aware blocks

60+ file types detected. Every file wrapped in a properly fenced, syntax-tagged code block.

Smart ignore rules

Configure ignore patterns via VS Code Settings (treemapper.defaultIgnorePatterns). node_modules, .git, and binaries are always skipped.

Two ways to trigger

Right-click any Explorer folder, or Ctrl+Shift+PTree Mapper: Generate Snapshot for the workspace root.

Auto-updates .gitignore

Detects .git and automatically adds .tree/ to .gitignore — zero duplicates, zero config.

Safe by default

Binary files skipped via null-byte scan. Files over the size limit are excluded with a clear notice in the snapshot header.

Interactive file picker v2.0+

Choose exactly which files to include — a full interactive picker opens inside VS Code, with checkboxes for every file, live search/filter, and folder auto-collapse for excluded directories. You decide what goes into the snapshot.

Status bar integration v2.0

A persistent "Tree Mapper" entry in VS Code's status bar shows live scan state — scanning, ignored count, generating — and acts as a one-click shortcut to run the command at any time.

Token count in header v2.0

Every snapshot includes an Est. token count — know exactly how much LLM context your snapshot will consume before pasting it into any AI.

Selection memory v2.1

The picker remembers your last file selection per workspace. Hit Restore last to instantly reload your previous choices — no re-checking files on every run.

Snapshot rotation v1.2

Keeps only the N most recent snapshots in .tree/ — oldest deleted automatically. Configurable via keepLastSnapshots. Default: 10.

Dual tree sections

Every snapshot has a Workspace Tree (full repo) and a Snapshot Tree (only selected files) — two clear reference points in one file.

How it works

Three steps.
That's it.

01

Install the extension

Click Install in VS Code — opens the extension panel in your editor, ready in one click.

02

Right-click a folder

In Explorer, right-click any folder → Tree Mapper: Generate Snapshot. Pick your files.

03

Get your snapshot

A Markdown file is saved to .tree/yyyy-mm-dd.md. Open it, share it, paste it into any AI.

Get started in under 30 seconds

No account. No config. Zero friction.

Install in VS Code VS Code Marketplace
or: Ctrl+Shift+X → search Tree Mapper → Install
Output format

One file.
Complete context.

Metadata header

Timestamp, file count, skipped files, excluded files, total repo size, and estimated token count — every snapshot is fully self-documenting.

Dual project trees

Two tree sections: Workspace Tree (the full repo minus ignored paths) and Snapshot Tree (only the files you selected) — paste either anywhere.

File contents

Every selected file follows with its full source in a language-tagged fenced code block for syntax highlighting.

Skipped file log

Binary or oversized files listed by name with their skip reason — nothing is silently dropped.

.md .tree/2026-04-14-23-16-43.md
# Workspace Snapshot: `my-project`

> **Generated:** 2026 04 29 12:15 AM UTC+6
> **Files included:** 12
> **Files skipped:** 1
> **Files excluded:** 268
> **Repo size:** 48.30 KB
> **Est. token count:** ~12,400 tokens

---

## Workspace Tree

```
my-project/
├── src/
│   ├── extension.js
│   └── scanner.js
├── README.md
└── package.json
```

## Snapshot Tree

```
my-project/
└── src/
    ├── extension.js
    └── scanner.js
```

## File Contents

### `src/extension.js`

```javascript
'use strict';
const vscode = require('vscode');
// ...
```

## Skipped Files

- `icon.png` — binary file
Configuration

Settings

Open VS Code Settings (Ctrl+,) and search Tree Mapper.

treemapper.defaultIgnorePatterns
["node_modules/", ".git/", ...]
Glob patterns unchecked by default in the file picker. Users can still check them manually. The .tree/ directory is always excluded.
treemapper.maxFileSizeKB
2048
Files larger than this value (in KB) are skipped even if checked. Default is 2 MB. Lower it to speed up snapshots on large projects.
treemapper.keepLastSnapshots
10
Number of recent snapshots to keep in the .tree/ folder. Oldest are deleted automatically after each run.

Free forever · MIT · Open source

Ready to snapshot
your workspace?

Takes 30 seconds to install. Works on every project, every time.