Install Aura on Windows

Three paths: Scoop, Chocolatey, and WSL2. The last one is the one we recommend.

Aura runs on Windows, but Windows is not its primary target. The Aura team builds and tests everything against Unix-like systems first, then ships Windows binaries from the same release pipeline. If you want the smoothest experience on a Windows machine, use WSL2 and follow the Linux install guide. If you need native Windows — because your editor, Git credential manager, or corporate policy demands it — Scoop and Chocolatey are both supported.

Prerequisites

  • Windows 10 version 2004 (build 19041) or Windows 11. Older builds do not have the required WSL2 kernel and are missing several console-mode fixes Aura depends on.
  • PowerShell 5.1 or PowerShell 7+. Aura's installers prefer PowerShell 7 where available.
  • 200 MB of free disk space. Windows AV scanners expand Aura's tree-sitter grammars transiently, so allow a little extra headroom during install.
  • Git for Windows 2.40+ if you plan to use Aura alongside an existing Git workflow. Not required for standalone mode.

Windows Subsystem for Linux 2 runs a real Linux kernel on your Windows machine. Aura's native Linux build performs identically on WSL2, and all the file-watching, hook, and MCP integrations behave the way they do on Linux — because they are the Linux builds.

Enable WSL2 if you have not already:

wsl --install -d Ubuntu

Reboot when prompted. Open the Ubuntu shell and follow the Debian/Ubuntu apt steps:

curl -fsSL https://auravcs.com/apt/pubkey.gpg \
  | sudo gpg --dearmor -o /usr/share/keyrings/auravcs.gpg
echo "deb [signed-by=/usr/share/keyrings/auravcs.gpg] https://auravcs.com/apt stable main" \
  | sudo tee /etc/apt/sources.list.d/auravcs.list
sudo apt update
sudo apt install aura

Verify:

aura --version
aura doctor

Storage note: keep your repositories on the WSL filesystem (~/code, not /mnt/c/...). Cross-filesystem access between NTFS and WSL2 is orders of magnitude slower, and Aura's file watcher does not receive inotify events for files stored on the NTFS side. If you must work on code that lives in a Windows directory, edit it through VS Code's WSL remote mode; otherwise clone directly into WSL.

Editor integration: VS Code with the "WSL" extension Just Works. The Aura binary your shell runs inside WSL is the one VS Code's terminal invokes, and the MCP server exposed to Claude Code runs on the Linux side. No additional configuration needed.

Native: Scoop

Scoop is a user-scoped package manager with a clean uninstall story, and it is the Aura team's preferred native Windows path.

# If you do not have Scoop yet:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex

# Add the Aura bucket and install:
scoop bucket add aura https://github.com/Naridon-Inc/scoop-aura
scoop install aura

Scoop installs aura.exe into %USERPROFILE%\scoop\shims\aura.exe and places the shims directory on your user PATH. Open a new PowerShell window to pick up the PATH change, then verify:

aura --version
aura doctor

Upgrade:

scoop update aura

Uninstall:

scoop uninstall aura

Native: Chocolatey

Chocolatey is system-scoped and is the right pick for managed corporate laptops or shared build agents.

Install from an elevated PowerShell prompt:

choco install aura

Chocolatey places aura.exe under C:\ProgramData\chocolatey\bin\aura.exe and registers it on the system PATH. Verify from a new shell:

aura --version
aura doctor

Upgrade:

choco upgrade aura

Uninstall:

choco uninstall aura

PowerShell-specific notes

Execution policy

Aura's pre-commit hook on Windows is a batch file that shells out to aura.exe. It does not invoke PowerShell scripts and is unaffected by Set-ExecutionPolicy. If you see hook execution errors, see troubleshooting.

Long paths

Aura tracks file paths at the AST level. On Windows, the 260-character MAX_PATH limit will bite you in monorepos. Enable long-path support once:

# Elevated PowerShell
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
  -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force

And ensure Git knows about it:

git config --system core.longpaths true

Line endings

Aura is line-ending-agnostic at the AST level — a function hashed on Windows matches the same function hashed on macOS, regardless of \r\n vs \n. However, your Git workflow might not be. If you collaborate with Unix users, set:

git config --global core.autocrlf input

This avoids spurious text-level diffs that Aura would otherwise ignore anyway, but that Git would still record.

PowerShell completion

Aura emits PowerShell completion scripts:

aura completions powershell | Out-String | Invoke-Expression

Add that line to your PowerShell profile ($PROFILE) to load completions on every shell start. Completion is context-aware the same way it is on macOS and Linux.

Windows Terminal + UTF-8

Aura's output contains box-drawing characters. Windows Terminal renders them correctly. The legacy conhost.exe console sometimes does not, depending on your active code page. If you see mojibake, switch to Windows Terminal or run:

chcp 65001

before invoking aura in the current shell.

Verification

As on other platforms, the smoke test is:

mkdir C:\temp\aura-smoke
cd C:\temp\aura-smoke
aura init
"fn main() { println!(\"hi\"); }" | Out-File -Encoding utf8 main.rs
aura log-intent "Smoke test: added main"
aura status

aura status should show one tracked logic node and no pending impacts.

Running Mothership on Windows

A Mothership hub technically runs on Windows — the binary supports it — but the Aura team does not test Windows as a Mothership host. Use Linux under WSL2 or a dedicated Linux box for anything beyond a single-developer experiment. If you insist, the command is the same:

aura team serve --bind 0.0.0.0:7777

Open the port in Windows Defender Firewall:

New-NetFirewallRule -DisplayName "Aura Mothership" -Direction Inbound `
  -Protocol TCP -LocalPort 7777 -Action Allow

Consider running the hub as a Windows service via NSSM if you go this route. The Linux systemd instructions are the preferred deployment model.

Upgrading

  • scoop update aura
  • choco upgrade aura
  • aura self-update for manual installs (rare on Windows)

aura self-update on Windows handles the running-binary swap with the same atomic rename trick used on Unix. If antivirus software briefly locks the binary during scan, the updater retries.

Uninstall

  • scoop uninstall aura
  • choco uninstall aura
  • aura self-uninstall if you installed via the ZIP asset directly.

User state lives in %USERPROFILE%\.aura\. Repo state lives in <repo>\.aura\. Both are untouched by uninstall. Delete them manually if you want a clean slate.

Next steps

If you are using Claude Code on Windows and want the AI agent to respect Aura's semantic guardrails, read the CLAUDE.md protocol — the MCP server Aura registers runs identically on native Windows and WSL2.