build-desktop

Build a new desktop app release (Electron). Triggers on "build desktop", "new release", "desktop release", "build the app"

SKILL.md

GitHub

Build Desktop App Release

Steps

  1. Bump version in desktop/package.json (patch bump unless user specifies)
  2. Build dashboard from src/dashboard/:
    cd src/dashboard && npx.cmd vite build
    
  3. Copy dist to desktop/:
    cp -r dist/server dist/core dist/dashboard desktop/
    
    Note: dist/server and dist/core come from tsc (may have pre-existing TS errors — that's fine, the JS still emits). The dashboard comes from vite build above.
  4. Install desktop deps:
    cd desktop && npm.cmd install
    
  5. Build executable (Windows by default):
    cd desktop && npx.cmd electron-builder --win
    
    Output lands in desktop/artifacts/ as an NSIS .exe installer.
  6. Commit version bump + push
  7. Optionally create GitHub release with gh release create v0.x.x desktop/artifacts/*.exe

Key Facts

  • App: orch-desktop — Electron 35+, ESM
  • Config: desktop/electron-builder.yml (appId: dev.orch.desktop, product: Orch)
  • Targets: --win (NSIS), --mac (DMG universal), --linux (AppImage)
  • Port: 13011 (avoids dev server conflict)
  • Credentials: ~/.orch/.env
  • CI: .github/workflows/desktop-release.yml builds all platforms on release