Skip to content

feat(windows): add installer and runtime support - #1119

Open
j-token wants to merge 4 commits into
PrimeIntellect-ai:mainfrom
j-token:feat/windows-support
Open

feat(windows): add installer and runtime support#1119
j-token wants to merge 4 commits into
PrimeIntellect-ai:mainfrom
j-token:feat/windows-support

Conversation

@j-token

@j-token j-token commented Aug 10, 2026

Copy link
Copy Markdown

Summary

  • add checksum-verified PowerShell installers for stable and beta releases
  • publish the PowerShell installers alongside the existing shell installers
  • install uv through the official Windows installer during kernel bootstrap
  • resolve managed virtualenv interpreters through Scripts/python.exe on Windows
  • suppress transient console windows for spawned background processes and file completion
  • preserve required npm lifecycle scripts during PowerShell installation
  • harden daemon launch and clipboard handling on Windows

Tests

  • npm run check completed Biome and TypeScript checks; the existing installer-render PTY harness then exited with an unknown status on Windows, which also reproduces on upstream/main
  • test/clipboard.test.ts passed
  • the kernel test suite still contains POSIX-only expected interpreter paths when executed on Windows; Linux CI remains the authoritative suite for those fixtures

Note

Add Windows installer and runtime support for Prime Agent

  • Adds install.ps1, a PowerShell installer that downloads a verified tarball, installs globally via npm, and optionally bootstraps the IPython kernel runtime with uv
  • Adds venvPython() in bootstrap.ts to resolve the correct venv interpreter path (Scripts/python.exe on Windows, bin/python elsewhere), fixing kernel bootstrap on Windows
  • Adds Windows uv install support via PowerShell (irm ... | iex) with platform-aware binary location discovery in ensureUv
  • Adds windowsHide: true to all spawn/spawnSync/execSync calls across the codebase to suppress console windows on Windows
  • Updates the CI workflow to template and publish install.ps1 and install-beta.ps1 to the release bucket alongside the existing shell installer

Macroscope summarized 9f36fad.

j-token and others added 4 commits August 10, 2026 14:28
…otstrap

Adds install.ps1, a PowerShell installer that mirrors install.sh: it resolves the
release channel, downloads the tarball and SHA256SUMS, verifies the SHA-256
checksum, installs with npm, and can prepare the IPython runtime. The installer
body runs inside a script block so `irm ... | iex` does not leak helpers or
preferences into the caller's session.

Makes the kernel bootstrap work on Windows: uv is installed with the official
PowerShell installer and looked up in its Windows install locations, and the
managed venv interpreter resolves to Scripts/python.exe. Non-Windows behavior is
unchanged.

The release workflow now renders and publishes install.ps1 and install-beta.ps1
alongside the shell installers, and check-installer-render.mjs validates both.
bootstrapVenv and ensureKernelPythonUncached built the interpreter path as
<venv>/bin/python, which only exists on POSIX. On Windows the interpreter is
at <venv>/Scripts/python.exe, so uv pip install --python got a path that does
not exist and exited 2, leaving the kernel unusable.

The same path feeds kernelReady, so on Windows it was always false: every
launch fell through to bootstrapVenv, which runs uv venv --seed and recreates
the venv. A manually provisioned venv was therefore discarded on the next run.

Add venvPython to pick the layout from process.platform, matching the existing
win32 branch in findExecutable, and use it at both sites. Update the two
integration tests that hardcoded the POSIX candidate path.

Fixes PrimeIntellect-ai#660

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants