Install
Install the local Fuse service, verify version 4.3.0, and remove it cleanly.
Fuse runs on your machine beside the repository. Indexing, retrieval, reduction,
and captured-compiler checks can work offline. Fuse does not open a listening
network port. Installation downloads the package or release asset. After
installation, the cache-first daily version check can contact NuGet; disable it
with FUSE_UPDATE_CHECK=0. A restore or build requested by a compiler-grade
operation can contact the package feeds already configured for the repository.
Recommended: The .NET Global Tool
dotnet tool install -g FuseVerify it:
fuse --versionThe current release prints 4.3.0.
Update later with fuse update (see Staying up to date).
Requirements: the .NET SDK 10.0 or later. Git change scoping also needs the
git executable on your PATH.
Run without Installing
The .NET 10 SDK can run Fuse on demand without a global install:
dnx Fuse -- serveWithout the .NET SDK
These give you a single self-contained binary with the .NET runtime bundled. Linux x64 and Windows x64 are published; on macOS use the .NET global tool above.
Install Script
# Linux
curl -fsSL https://fuse.codes/install.sh | sh# Windows
irm https://fuse.codes/install.ps1 | iexEach script downloads the latest release binary, verifies its checksum, and puts
fuse on your PATH. Set FUSE_VERSION to pin a version or FUSE_INSTALL_DIR to
choose the location.
WinGet (Windows)
winget install Litenova.FuseWinGet installs the self-contained Windows build for the current user.
Download a Binary
Grab fuse-<version>-win-x64.zip or fuse-<version>-linux-x64.tar.gz from the
GitHub Releases page,
verify it against SHA256SUMS.txt, extract, and put fuse on your PATH.
Build from Source
On Windows, the bundled script builds, packs, and installs the tool locally:
install.batOn any OS:
dotnet pack src/Host/Fuse.Cli/Fuse.Cli.csproj -c Release
dotnet tool install -g Fuse --add-source src/Host/Fuse.Cli/nupkgStaying Up to Date
Use fuse update, not a bare dotnet tool update. A running Fuse (an MCP server
or an editor host) locks its own files on Windows, so a direct update fails with
"Access is denied". fuse update stops only the Fuse processes from this install
that are in the updating session's child lineage or that hold the install mutex
(typically a fuse host for the same global-tool install), then hands the upgrade
to a detached step that waits for the current process to exit before replacing the
files. Unrelated fuse mcp serve peers in other repositories are left running by
default. Use --force-kill-peers when you need the old behavior that stopped
every Fuse process on the machine before updating:
fuse update
fuse update --force-kill-peersYou will be told when an update is available. The CLI and the MCP server do a
cache-first, once-a-day, offline-safe check against NuGet and print a one-line
notice when a newer version exists. It never blocks a command. Turn it off with
FUSE_UPDATE_CHECK=0.
Auto-update between sessions (opt-in). Set FUSE_AUTO_UPDATE=1 and the MCP
server applies a newer version after the current session exits, so the next spawn
is current. It never interrupts a running session:
# in your MCP client's environment for the fuse server
FUSE_AUTO_UPDATE=1Fully scheduled (optional). Run fuse update on a cadence:
# Windows: a weekly task
schtasks /create /tn "Fuse update" /tr "fuse update" /sc weekly /d SUN /st 09:00# POSIX: a weekly cron entry (crontab -e)
0 9 * * 0 fuse updateUninstall and Reset
Remove the package with the command that matches the install method:
# .NET global tool
dotnet tool uninstall -g Fuse# WinGet or the Windows installer
winget uninstall Litenova.FuseFor an install-script or manually extracted binary, delete the fuse executable
from the install directory and remove that directory from PATH.
Package removal does not delete repository data or MCP client configuration.
Remove MCP entries and rules as described in
Connect to your AI, then delete
.fuse/ at the repository root. The directory contains derived index data only;
the next Fuse read recreates it. Outside a Git repository, delete
~/.fuse/roots/{hash}/fuse.db, or {FUSE_USER_DATA}/roots/{hash}/fuse.db when
that variable is set. These per-directory stores belong to one-shot non-MCP paths;
workspace-scoped MCP tools refuse folders with no Git identity.
Next
Run your first fusion in the Quickstart, or wire Fuse into an agent on the Connect to your AI page.