Install vfs — Pre-built Binary, Source, or Docker
| Your situation | Method | What you need |
|---|---|---|
| Linux | Pre-built binary | Nothing |
| macOS / Linux | Build from source | Go 1.24+, C compiler |
| Windows | Windows step-by-step | Go 1.24+, TDM-GCC |
| Any OS | Docker | Docker |
Pre-built binary
Section titled “Pre-built binary”Download from GitHub Releases. No Go, no C compiler needed. Each release includes SHA-256 checksums.
# Linux x86_64curl -L https://github.com/TrNgTien/vfs/releases/latest/download/vfs-linux-amd64.tar.gz | tar xzsudo mv vfs /usr/local/bin/
# Linux ARM64curl -L https://github.com/TrNgTien/vfs/releases/latest/download/vfs-linux-arm64.tar.gz | tar xzsudo mv vfs /usr/local/bin/Build from source
Section titled “Build from source”Requires Go 1.24+ and a C compiler:
- macOS:
xcode-select --install - Linux:
sudo apt install build-essential(Debian/Ubuntu) orsudo yum groupinstall "Development Tools"(Fedora/RHEL) - Windows: install TDM-GCC (easiest) or MSYS2 + MinGW-w64
git clone https://github.com/TrNgTien/vfs.git && cd vfsgo install ./cmd/vfs
vfs: command not found? Add Go’s bin to your PATH:export PATH="$PATH:$(go env GOPATH)/bin"(macOS/Linux) or add%USERPROFILE%\go\binto PATH (Windows).
Windows step-by-step
Section titled “Windows step-by-step”Windows requires a few extra steps because vfs uses CGO (tree-sitter bindings need a C compiler). This guide walks through everything from scratch.
1. Install Go
Section titled “1. Install Go”Download the installer from go.dev/dl and run it. The installer adds Go to your PATH automatically.
Open a new PowerShell window and verify:
go version# Expected: go version go1.24.x windows/amd642. Install a C compiler
Section titled “2. Install a C compiler”The easiest option is TDM-GCC:
- Download the TDM-GCC installer from jmeubank.github.io/tdm-gcc
- Run the installer — choose “Create” (not “Manage”)
- Select MinGW-w64/TDM64 (64-bit)
- Keep all defaults and finish
Open a new PowerShell window and verify:
gcc --version# Expected: gcc (tdm64-1) 10.x.x or similar3. Install Git (if you don’t have it)
Section titled “3. Install Git (if you don’t have it)”Download from git-scm.com and install with defaults.
4. Build vfs
Section titled “4. Build vfs”git clone https://github.com/TrNgTien/vfs.gitcd vfsgo install ./cmd/vfs5. Add Go bin to PATH
Section titled “5. Add Go bin to PATH”The go install command places the binary in %USERPROFILE%\go\bin. You need to add this to your system PATH:
Option A — via PowerShell (current user, permanent):
$gobin = [System.IO.Path]::Combine($env:USERPROFILE, "go", "bin")[Environment]::SetEnvironmentVariable("PATH", $env:PATH + ";" + $gobin, "User")Option B — via System Settings:
- Press
Win + R, typesysdm.cpl, press Enter - Go to Advanced tab, click Environment Variables
- Under “User variables”, select Path, click Edit
- Click New, add
%USERPROFILE%\go\bin - Click OK on all dialogs
Open a new PowerShell window, then verify:
vfs --helpTroubleshooting Windows
Section titled “Troubleshooting Windows”`gcc: command not found` or `exec: “gcc”: executable file not found`
The C compiler isn’t in your PATH. Reinstall TDM-GCC and make sure you selected MinGW-w64/TDM64. Open a new terminal after installing.
`vfs: command not found` after `go install`
Go’s bin directory isn’t in your PATH. Run this to check where Go installed the binary:
go env GOPATH# Then look inside that path's \bin folderAdd that bin folder to your PATH as shown in step 5.
`CGO_ENABLED` errors
Ensure CGO is enabled (it should be by default when a C compiler is found):
go env CGO_ENABLED# Should print: 1If it prints 0, set it explicitly:
$env:CGO_ENABLED = "1"go install ./cmd/vfsUsing WSL instead
If you have Windows Subsystem for Linux, you can skip all the above and follow the Linux instructions inside your WSL terminal. This is often the easiest path for developers already using WSL:
# Inside WSL (Ubuntu)sudo apt install build-essentialcurl -L https://github.com/TrNgTien/vfs/releases/latest/download/vfs-linux-amd64.tar.gz | tar xzsudo mv vfs /usr/local/bin/vfs --helpDocker
Section titled “Docker”docker build -t vfs-mcp .docker run --rm -v $(pwd):/workspace -p 8080:8080 -p 3000:3000 vfs-mcp
# Custom ports via environment variablesdocker run --rm -v $(pwd):/workspace -e VFS_PORT=9090 -e VFS_DASHBOARD_PORT=4000 -p 9090:9090 -p 4000:4000 vfs-mcpOn Windows PowerShell, replace $(pwd) with ${PWD}:
docker run --rm -v ${PWD}:/workspace -p 8080:8080 -p 3000:3000 vfs-mcpVerify installation
Section titled “Verify installation”vfs --helpYou should see the vfs help text listing available commands and flags.