Workspace Wiki is a VS Code extension that scans your workspace for documentation files (Markdown, MDX, and plain text by default) and presents them in a sidebar tree view for fast preview and editing. It emphasizes readability, predictable ordering (README/index handling, alphabetical directories), and fast access via preview or edit. All operations are local-first and privacy-friendly.
- Workspace Wiki Tree View: Discover all documentation files in a single sidebar tree.
- Smart and Human Readable Title Display: Automatically converts file names (e.g.,
user-guide.md) to readable titles (User Guide) - YAML Front Matter Support: Markdown and MDX files with YAML front matter
titlefields display that title instead of the filename - Flexible File Types: Supports
.md,.mdx,.txtand other files with configurable extension filtering - Include Files by Name: Pull in individual documentation files such as
doc.goby name or pattern, without showing every file that shares their extension - Intelligent Ordering: README files appear first, index files represent their folders, alphabetical sorting for others
- Acronym Case Preservation: Technical terms like HTML, CSS, API maintain proper casing in titles.
- Intelligent File Exclusion: Respects
.gitignorepatterns, including nested files and negation rules, plus configurable exclude globs to hide unwanted files. - Preview & Edit: By default, single-click opens the best surface for the file type (
workspaceWiki.defaultOpenMode: "preview"), and double-click opens the source in the full editor. - Refresh: Update the tree on demand with the Refresh action; it also re-scans automatically when
workspaceWikisettings change. - Configurable: Supported file types, excludes, open modes, and title formatting are configurable via settings.
- Multi-root Support: Works with multi-root workspaces, scoping each folder's
.gitignorerules and search depth to that folder. - Privacy: No telemetry, no cloud sync, local-only by default.
- VS Code 1.105.0+
This extension contributes the following settings under the workspaceWiki namespace:
Array of file extensions to include in the workspace wiki (default: md, markdown, mdx, txt).
Special Case: If md, markdown, or mdx is included, files named README (with no extension, case-insensitive) are also included and treated as Markdown.
{
"workspaceWiki.supportedExtensions": ["md", "markdown", "mdx", "txt", "html", "pdf"]
}File names or glob patterns to include in addition to supportedExtensions (default: none). Use this when a single file is documentation but its extension is not: adding go to supportedExtensions would show every Go source file, while doc.go here shows only that file.
A pattern containing no / matches at any depth; a pattern with a / is matched as written.
{
"workspaceWiki.includeGlobs": ["doc.go", "*.guide.ts", "docs/notes/*.adoc", "CHANGELOG"]
}Included files are filtered exactly like extension matches: excludeGlobs, .gitignore, the hidden-file rule, and maxSearchDepth all still apply. Their titles come from the file name, since front matter is read only from Markdown and MDX files.
Glob patterns to exclude from scanning.
{
"workspaceWiki.excludeGlobs": [
"**/node_modules/**",
"**/.git/**",
"**/dist/**",
"**/build/**",
"**/coverage/**",
"**/.next/**"
]
}Maximum folder depth to scan (default: 10). If you have a large repository, you may want to adjust this value to best suit your performance needs and workspace/codebase structure.
{
"workspaceWiki.maxSearchDepth": 15
}Show files listed in .gitignore and excludeGlobs (default: false).
workspaceWiki.showHiddenFiles
Show hidden files and folders (those starting with a dot, e.g. .github, .env) in the Workspace Wiki tree (default: false).
Default mode for opening files: "preview" or "editor" (default: "preview").
Commands to use for opening different file types. This supports adding other extensions' commands for specialized previews.
Any extension you add here that is not already in supportedExtensions is added to it, and the updated list is written to your workspace settings.
{
"workspaceWiki.openWith": {
"md": "workspace-wiki.openMarkdown",
"markdown": "workspace-wiki.openMarkdown",
"mdx": "workspace-wiki.openMarkdown",
"txt": "vscode.open",
"pdf": "vscode.open",
"html": "otherExtension.preview"
}
}workspace-wiki.openMarkdown is the default for Markdown, and picks the best surface the running VS Code offers:
- Markdown Editor: VS Code's built-in rendered, in-place-editable Markdown surface, added in VS Code 1.131. It only claims
.mdfiles. - Markdown Preview (
markdown.showPreview), used for.mdx,.markdown, an extensionlessREADME, and on any VS Code that predates the Markdown Editor. - A plain open (
vscode.open), which follows whatever yourworkbench.editorAssociationssays, when neither of the above is available.
To always use the read-only preview instead, set the extensions you care about back to markdown.showPreview:
{
"workspaceWiki.openWith": {
"md": "markdown.showPreview"
}
}How to sort files and folders within directories. Options are:
files-first: Show files before foldersfolders-first: Show folders before filesalphabetical: Sort files and folders alphabetically
{
"workspaceWiki.directorySort": "folders-first"
}Array of acronyms to preserve proper casing in file titles.
{
"workspaceWiki.acronymCasing": [
"HTML",
"CSS",
"JS",
"TS",
"API",
"URL",
"JSON",
"XML",
"HTTP",
"HTTPS",
"REST",
"SQL",
"CSV",
"FHIR"
]
}Automatically reveal the active file in the Workspace Wiki tree when the editor changes (default: true).
Delay in milliseconds before revealing the active file in the tree (default: 500).
{
"workspaceWiki.autoRevealDelay": 1000
}The extension automatically excludes files based on:
- Default excludes:
node_modulesand.gitdirectories - Custom excludes: Patterns defined in
workspaceWiki.excludeGlobssetting - GitIgnore patterns: Files and folders listed in your workspace's
.gitignorefile
To show ignored files in the tree, set workspaceWiki.showIgnoredFiles to true.
To show hidden files (those starting with a dot), set workspaceWiki.showHiddenFiles to true.
Enjoy using Workspace Wiki!
