
Windows Release
Build and verify the Windows desktop build (NSIS installer + latest.yml) for the...
Install
npx skills add milind-soni/OpenMausBot --skill windows-release -g -a claude-code -y- Repository
- milind-soni/OpenMausBot10.4k
- Category
- Engineering
- Updated
- 3d ago
- License
- Apache-2.0
- Context cost
- Lightabout 1,451 tokens
- Runs scripts
- No, instructions only
What it does
Build and verify the Windows desktop build (NSIS installer + latest.yml) for the canonical OpenMausBot release and its legacy updater mirror. Use when cutting a release, shipping a new version to Windows users, or when a Windows user reports they are stuck on an old version. Windows only, does not cover the macOS dmg/notarization flow.
Windows release
Ships OpenMausBot-<version>-setup.exe and its update feed to
milind-soni/OpenMausBot.
The unified release workflow mirrors the same bytes to the legacy releases
repository for apps installed before the updater migration.
Scope: Windows only. The macOS build is a separate flow (dmg + notarytool + staple) that must run on a Mac. This skill never touches mac artifacts, but see Every release ships both before you finish.
Preconditions
- Run on Windows. NSIS packaging from macOS needs Wine; don't.
- Node 24+ (
package.jsonengines). Node 23 builds fine but pnpm warns on every step and CI runs 24, don't debug a runtime oddity on the wrong major. - pnpm via
corepack pnpm. Ifcorepack enablefails with EPERM (no admin), drop apnpm.cmdshim containing@echo off/corepack pnpm %*somewhere on PATH,package:winchainspnpm build && …and needs barepnpmto resolve.
1. Version
Bump version in package.json. It must match the tag on the GitHub release you
upload to, and it becomes the version electron-updater compares against.
2. Build
pnpm install
pnpm typecheck
pnpm package:win
package:win deliberately omits build:speech, the dictation helper is a signed
macOS Swift binary and has no Windows counterpart.
Output in release/:
| File | Purpose |
|---|---|
OpenMausBot-<version>-setup.exe | the installer |
latest.yml | the update feed, see step 4 |
OpenMausBot-<version>-setup.exe.blockmap | differential updates |
OpenMausBot-<version>-x64.zip | portable, not used by the updater |
3. Verify before uploading
Three things silently produce a broken app if wrong. Check all three:
