Installation
Recommended for Windows users
Quick install
If you want the fastest path:
irm https://harumiweb.github.io/xlflow/install.ps1 | iex
xlflow newUninstall
Use the same script in file mode to remove the PATH entry and the %LOCALAPPDATA%\xlflow installation directory:
irm https://harumiweb.github.io/xlflow/install.ps1 -OutFile .\install.ps1
powershell -ExecutionPolicy Bypass -File .\install.ps1 -Action uninstallwinget
If you just want to use xlflow on Windows with a package manager, install it with winget:
winget install HarumiWeb.XlflowUse upgrade to update an existing installation:
winget upgrade HarumiWeb.Xlflowwinget availability may lag behind a GitHub Release while the manifest is submitted and accepted upstream.
Scoop is also supported:
scoop bucket add harumiweb https://github.com/harumiWeb/scoop-bucket
scoop install xlflowIf you prefer a manual install, download the Windows release archive from GitHub Releases.
The Windows ZIP contains both xlflow.exe and xlflow-excel-bridge.exe.
Verify Windows archive integrity against checksums.txt:
Get-FileHash .\xlflow_windows_x86_64.zip -Algorithm SHA256
certutil -hashfile .\xlflow_windows_x86_64.zip SHA256Verify GitHub artifact attestation when available:
gh attestation verify .\xlflow_windows_x86_64.zip --repo harumiWeb/xlflowThese checks validate artifact integrity and provenance metadata. They are not Windows Authenticode signing.
The .NET bridge executable avoids PowerShell execution policy, but it can still be blocked by AppLocker, WDAC, Defender or EDR policy, antivirus reputation, or other unsigned-executable controls in managed Windows environments.
Linux release archives are built separately with native CGO on Ubuntu and contain the Go CLI only. Verify xlflow_linux_x86_64.tar.gz against checksums-linux.txt; it does not include xlflow-excel-bridge.exe.
WSL development frontend
Install xlflow on both Windows and WSL. Use the Windows installer, winget, Scoop, or Windows release archive for xlflow.exe plus xlflow-excel-bridge.exe.
From a WSL shell, install the Linux frontend with:
curl -fsSL https://harumiweb.github.io/xlflow/install.sh | shTo remove the WSL frontend installed by this script:
curl -fsSL https://harumiweb.github.io/xlflow/install.sh | sh -s -- --uninstallThe installer writes xlflow to $HOME/.local/bin by default. Override that with XLFLOW_INSTALL_DIR or --install-dir.
From a WSL shell in a source checkout, install the current frontend build with:
task wsl-installStore projects under a Windows-mounted path:
cd /mnt/c/dev/my-vba-project
xlflow doctor --jsonExcel-related commands automatically delegate to Windows xlflow. Source-only commands such as lint, fmt, and analyze stay in WSL.
If WSL cannot discover xlflow.exe through Windows PATH interoperability, configure it explicitly:
export XLFLOW_WINDOWS_EXE='C:\Users\me\AppData\Local\xlflow\xlflow.exe'WSL-only paths such as /home/user/project are unsupported for Excel delegation. Move the project under /mnt/c, /mnt/d, or another Windows-mounted drive.
xlflow forwards its own runtime environment variables through WSLENV. If workbook VBA depends on additional custom WSL environment variables, add those variable names to WSLENV so the Windows Excel process can read them.
Go developers
go install github.com/harumiWeb/xlflow/cmd/xlflow@latestgo install installs xlflow only. It does not install the packaged .NET bridge sidecar xlflow-excel-bridge.exe.
If you need --bridge dotnet, use the Windows release archive or build/install the bridge separately from a source checkout, for example with task install.
Verify the install:
xlflow version
xlflow --helpFor source checkout development:
go run ./cmd/xlflow --help