-
Notifications
You must be signed in to change notification settings - Fork 0
Windows WSL2
Cross runs on Windows via WSL2 (Windows Subsystem for Linux 2). This page walks you through a complete setup from a fresh Windows 11 machine to running your first report.
Tested on: Windows 11 23H2 · Ubuntu 22.04 (WSL2) · Python 3.12
Open PowerShell as Administrator and run:
wsl --installThis installs WSL2 and the default Ubuntu distribution in one step. Reboot when prompted.
If you already have WSL1, upgrade to WSL2:
wsl --set-default-version 2
After reboot, open the Ubuntu app from the Start menu. The first launch asks you to create a UNIX username and password — these are independent of your Windows credentials.
Inside your WSL2 terminal:
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3-pip python3-venv pipxAdd pipx to your PATH and reload the shell:
pipx ensurepath
exec bashpipx install "cross-st[tts]"To install without TTS (st-speak / st-voice unavailable):
pipx install cross-stIf pipx says it's already installed, add --force:
pipx install --force cross-stReload your shell to pick up the new entry points:
exec bashVerify all entry points are on PATH:
st --version
st-admin --versionYou need at least one API key. Start with Gemini — it's free.
- Go to aistudio.google.com/app/apikey
- Click Create API key
- Copy the key — it starts with
AIza...
Free tier: 15 requests/minute · 1,500 requests/day · 1M tokens/day.
Run the setup wizard:
st-admin --setupThe wizard prompts for API keys, sets your default provider, and writes everything to ~/.crossenv (that's ~ inside WSL2, not on your Windows drive).
Or configure manually:
st-admin --set DEFAULT_AGENT gemini
st-admin --set GEMINI_API_KEY AIza...mkdir ~/my_reports && cd ~/my_reports
st-new # opens nano/vim — describe your topic, save & exit
st-bang # generate reports from all configured AIs in parallel
st-cross report.json # cross-check every report against every other AI
st-heatmap report.json # visualise the fact-check score matrixWSL2 can read and write Windows files via /mnt/c/:
cd /mnt/c/Users/<YourWindowsUsername>/Documents
mkdir cross_reports && cd cross_reportsOr from Windows Explorer, navigate to \\wsl$\Ubuntu\home\<youruser>\ to see your WSL home directory.
Performance tip: File I/O is significantly faster when your report files live inside WSL2's own filesystem (
~/) rather than on/mnt/c/. For heavy workloads (hundreds of cross-checks), keep files in~/.
- Install VS Code on Windows.
- Install the WSL extension (id:
ms-vscode-remote.remote-wsl). - From your WSL terminal:
VS Code opens in Windows but runs all tools (Python, linters,
code .st-*) inside WSL2.
The default editor used by st-new is whatever $EDITOR is set to in your shell. Ubuntu 22.04 ships with nano:
export EDITOR=nano # add to ~/.bashrc to persistst-print uses WeasyPrint to generate PDFs, which requires native Pango/GObject libraries:
sudo apt install -y libpango-1.0-0 libpangoft2-1.0-0 libharfbuzz0b \
libfontconfig1 libcairo2 libgdk-pixbuf-2.0-0 \
libxml2 libssl-dev
pip install weasyprintThen:
st-print report.json -o report.pdfpipx ensurepath
exec bashThen check:
echo $PATH | tr ':' '\n' | grep localYou should see ~/.local/bin listed. If not, add it manually:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
exec bashYou haven't run the setup wizard yet. Run it now:
st-admin --setupCheck that ~/.crossenv contains your key:
grep API_KEY ~/.crossenvIf the key is there, confirm there's no local .env file in the current directory that overrides it (a local .env takes precedence over ~/.crossenv).
If you're behind a corporate proxy, add proxy settings to ~/.bashrc:
export http_proxy=http://proxy.example.com:8080
export https_proxy=http://proxy.example.com:8080
export no_proxy=localhost,127.0.0.1Then exec bash and retry.
WSL2 requires Windows 10 version 1903 (build 18362) or later. Check your version:
winverIf you're below 1903, update Windows first via Settings → Windows Update.
- Onboarding — general setup guide (macOS / Linux)
- AI Providers — detailed notes on each provider, model options, rate limits
- Cross-Stones Benchmark — run and score the standard 10-domain benchmark
- FAQ — common questions and troubleshooting
st-man # list all commands
st-man st-cross --web # open the st-cross wiki page in your browser