Team Foundation Version Control (TFVC) source control integration for VS Code. Connects directly to Azure DevOps via REST — no TEE-CLC or tf command-line tool required.
Works with both Azure DevOps Services (cloud) and Azure DevOps Server (on-prem).
Screenshots
Screenshots coming soon — see the Features section below for a functional overview.
Features
SCM sidebar integration — pending changes shown in VS Code's Source Control view (Included / Excluded / Conflicts groups)
Check in / undo / sync — standard TFVC operations against the server
Auto-checkout on save or edit — configurable, for files that need to be locked for editing
Shelvesets — create, list, and unshelve shelved changes
History — view changeset history for any file
Code reviews — browse and respond to TFVC code reviews (shelveset-based) without leaving the editor
File-by-file diff view (base vs shelved)
Inline comments via VS Code's Comments API
Submit verdicts: Looks Good / With Comments / Needs Work / Declined
File decorations — M / A / D / C badges in the file explorer
Workspace initialization — one command sets up baseline state; no Visual Studio or TEE-CLC install needed
Prerequisites
A TFVC project hosted on Azure DevOps Services (dev.azure.com) or Azure DevOps Server (on-prem).
A Personal Access Token (PAT) with these scopes:
Code → Read & write (for source control operations)
Code (status) — if you use review verdicts
VS Code 1.85.0 or newer.
Quick Start
Install the extension from the Marketplace (search for "TFVC").
Set your PAT: open the command palette and run TFVC: Set PAT (Personal Access Token). The token is stored in VS Code's SecretStorage.
Configure the server in VS Code settings:
For cloud: set tfvc.adoOrg (e.g. myorg) and tfvc.adoProject.
For on-prem: set tfvc.adoBaseUrl (e.g. https://devops.example.com), tfvc.adoCollectionPath (e.g. /tfs/DefaultCollection), and tfvc.adoProject.
Initialize the workspace: run TFVC: Initialize Workspace. This creates .vscode-tfvc/ with baseline state so the extension can detect local changes.
Open the Source Control view — pending changes appear as you edit files.
Configuration
Setting
Description
Default
tfvc.adoOrg
Azure DevOps organization name (cloud only).
""
tfvc.adoProject
Azure DevOps project name.
""
tfvc.adoBaseUrl
On-prem ADO Server base URL. Leave empty for cloud.
When to auto-checkout files: disabled, onSave, onEdit.
onSave
tfvc.autoRefreshInterval
Auto-refresh interval in seconds. 0 disables.
0
tfvc.showOutputOnError
Show the TFVC output channel when a command fails.
true
Known Limitations
Large repositories: initial workspace initialization downloads baseline metadata for all mapped files. This can be slow for very large trees.
No proxy support: the extension uses Node's default https stack. HTTP/HTTPS proxies are not explicitly handled.
SOAP parsing via regex: the code review comment client parses SOAP responses with regex rather than a full XML parser. Well-formed ADO responses work; unusual responses may not.
Single workspace folder: TFVC mapping is tracked per workspace root; multi-root workspaces are not fully supported.
No retry / pagination polish: transient network failures aren't automatically retried, and very long history or review lists may not paginate.
Commands
All commands are available under the TFVC: category in the command palette:
Initialize Workspace, Set PAT (Personal Access Token)
Refresh, Check In, Get Latest (Sync), Check Out (Lock for Edit)
Undo, Undo All Changes, Add File, Delete File
Open Diff, Open File, Show History
Shelve Changes, Unshelve Changes, List Shelvesets
Refresh Code Reviews, Submit Review Verdict, Post Inline Comment