Skip to content

Build and release the CLI for Windows - #13

Merged
andrewsokolov merged 4 commits into
masterfrom
windows-cli-release
Oct 27, 2026
Merged

andrewsokolov merged 4 commits into
masterfrom
windows-cli-release

Conversation

@andrewsokolov

@andrewsokolov andrewsokolov commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Release Windows x64 and ARM64 builds alongside macOS. Each is built and tested natively on GitHub-hosted runners (windows-2025, windows-11-arm, macos-15, macos-15-intel), which are free for this public repo.
  • CI on Windows runs the test suite and smoke-tests the executable. It then installs it with install.ps1 and checks that extrabrain --version works from a new shell that uses the user PATH.
  • scripts/build-sea.mjs accepts --target for cross-builds and finds signtool itself. If signtool is missing, it skips removing the signature.
  • Windows fixes:
    • install.ps1 supports ARM64 and Windows PowerShell 5.1.
    • extrabrain update replaces the running executable in place.
    • The DPAPI credential script loads System.Security.
    • Interrupted imports are stored under %LOCALAPPDATA%\ExtraBrain\state\imports.
  • README covers Mac and Windows install, update, uninstall, troubleshooting, and building from source.

Test plan

  • npm run check locally
  • CI: macos-15, macos-15-intel, windows-2025, windows-11-arm

🤖 Generated with Claude Code

ExtraBrain Developer and others added 4 commits October 27, 2026 07:18
Cross-build win32-x64 and win32-arm64 executables in a Node container on
the CodeBuild Linux runners, and build darwin-arm64 and darwin-x64 on the
self-hosted Mac mini. build-sea.mjs now accepts --target and embeds the
blob into the checksum-verified official Node binary for that target.

The Windows installer supports ARM64 and Windows PowerShell 5.1, update
replaces the running executable in place, and the DPAPI credential script
loads System.Security. The README covers installing, updating, and
removing the CLI on Windows.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The shared Mac mini runner only dispatches jobs. Clone the pinned
extrabrain-macos toolchain image, run validation and both macOS builds
inside the VM over SSH, copy the release archives back, and delete the VM
afterwards. macOS CI runs for pushes only, so pull requests from forks
never reach the shared runner.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
GitHub-hosted runners are free for this public repository, and self-hosted
runners would let code from fork pull requests run on shared machines.
Restore the hosted macOS jobs and build Windows x64 and ARM64 natively on
windows-2025 and windows-11-arm. CI now runs the tests on Windows, smoke
tests both executables, and installs one with install.ps1 into a new
shell. The Tart and Docker helper scripts are removed. Removing the
signature on Windows is skipped when signtool is not installed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@andrewsokolov andrewsokolov changed the title Build Windows CLI releases on self-hosted runners Build and release the CLI for Windows Oct 27, 2026
@andrewsokolov
andrewsokolov merged commit 28a817d into master Oct 27, 2026
8 checks passed
@andrewsokolov
andrewsokolov deleted the windows-cli-release branch October 27, 2026 08:16
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.

1 participant