Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
34a21b0
feat(desktop): add Windows build support
Sandman-Ren Mar 31, 2026
7dfb70b
chore: prepare fork for release
Sandman-Ren Mar 31, 2026
613fd25
feat(desktop): comprehensive Windows runtime patches
Sandman-Ren Mar 31, 2026
1239286
[codex] Refactor agent registry and add custom agent CRUD groundwork …
Kitenite Mar 31, 2026
a08bcab
[codex] fix(desktop): harden Codex native hook cleanup (#3038)
Kitenite Mar 31, 2026
2885f51
fix(desktop): remove run-pane-only terminal path (#3068)
Kitenite Mar 31, 2026
284a59c
Merge remote-tracking branch 'upstream/main' into dev
Sandman-Ren Apr 1, 2026
e975ca6
chore: clean up upstream workflows and add fork-specific CI
claude Mar 31, 2026
1dc3267
fix(ci): correct upstream URL in sync-upstream workflow
Sandman-Ren Apr 1, 2026
1b0f624
fix(ci): correct workflow issues for Windows fork
Sandman-Ren Apr 1, 2026
ac184f2
fix(desktop): disable GPU hardware acceleration on Windows to prevent…
Sandman-Ren Feb 19, 2026
3d3e494
perf(desktop): keep workspace content trees mounted to eliminate tab-…
Sandman-Ren Apr 2, 2026
4daac1d
fix(host-service): fall through to source migrations path in dev mode
Sandman-Ren Apr 2, 2026
faca76f
docs: add investigation report for workspace tab switch freeze fix
Sandman-Ren Apr 2, 2026
5f04745
fix(desktop): remove dead ref and guard useWorkspaceId fallback path
Sandman-Ren Apr 2, 2026
080b921
fix(desktop): address Copilot review comments
Sandman-Ren Apr 2, 2026
a298cd2
fix(desktop): fix CI lint and test failures
Sandman-Ren Apr 2, 2026
4cac99b
chore: fix pre-existing Biome lint errors
Sandman-Ren Apr 2, 2026
445dec4
fix(lint): fix useHookAtTopLevel and Biome format errors
Sandman-Ren Apr 2, 2026
ce87c04
chore(lint): fix import ordering in WorkspaceView files
Sandman-Ren Apr 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 0 additions & 92 deletions .github/prompts/generate-changelog.md

This file was deleted.

50 changes: 0 additions & 50 deletions .github/prompts/triage-issue.md

This file was deleted.

76 changes: 0 additions & 76 deletions .github/prompts/update-docs.md

This file was deleted.

105 changes: 105 additions & 0 deletions .github/workflows/build-desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -261,3 +261,108 @@ jobs:
path: apps/desktop/release/*-linux.yml
retention-days: ${{ inputs.artifact_retention_days }}
if-no-files-found: error

build-windows:
name: Build - Windows (x64)
runs-on: windows-latest
environment: production

steps:
- name: Enable long paths
run: git config --system core.longPaths true

- name: Checkout code
uses: actions/checkout@v4

- name: Setup Bun
id: setup-bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: .bun-version

- name: Cache dependencies
uses: actions/cache@v4
with:
path: |
~\.bun\install\cache
key: ${{ runner.os }}-bun-${{ steps.setup-bun.outputs.bun-revision }}-${{ github.sha }}
restore-keys: |
${{ runner.os }}-bun-${{ steps.setup-bun.outputs.bun-revision }}-

- name: Install dependencies
run: bun install --frozen --ignore-scripts

- name: Install desktop native dependencies
working-directory: apps/desktop
run: bun run install:deps

- name: Set version suffix
if: inputs.version_suffix != ''
working-directory: apps/desktop
shell: bash
run: |
CURRENT_VERSION=$(node -p "require('./package.json').version")
NEW_VERSION="${CURRENT_VERSION}${{ inputs.version_suffix }}"
echo "Setting version to: $NEW_VERSION"
node -e "
const fs = require('fs');
const pkg = require('./package.json');
pkg.version = '$NEW_VERSION';
fs.writeFileSync('./package.json', JSON.stringify(pkg, null, '\t') + '\n');
"
echo "Updated package.json version to $NEW_VERSION"

- name: Clean dev folder
working-directory: apps/desktop
run: bun run clean:dev

- name: Generate file icons
working-directory: apps/desktop
run: bun run generate:icons

- name: Compile app with electron-vite
working-directory: apps/desktop
env:
NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }}
NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }}
GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }}
GH_CLIENT_ID: ${{ secrets.GH_CLIENT_ID }}
NEXT_PUBLIC_WEB_URL: ${{ secrets.NEXT_PUBLIC_WEB_URL }}
NEXT_PUBLIC_API_URL: ${{ secrets.NEXT_PUBLIC_API_URL }}
NEXT_PUBLIC_DOCS_URL: ${{ secrets.NEXT_PUBLIC_DOCS_URL }}
NEXT_PUBLIC_STREAMS_URL: ${{ secrets.NEXT_PUBLIC_STREAMS_URL }}
NEXT_PUBLIC_ELECTRIC_URL: ${{ secrets.NEXT_PUBLIC_ELECTRIC_URL }}
SENTRY_DSN_DESKTOP: ${{ secrets.SENTRY_DSN_DESKTOP }}
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
SUPERSET_WORKSPACE_NAME: superset
run: bun run compile:app

- name: Build Electron app
working-directory: apps/desktop
run: bun run package -- --publish never --config ${{ inputs.electron_builder_config }} --x64

- name: Verify Windows installer exists
working-directory: apps/desktop
shell: bash
run: |
ls -la release
test -n "$(ls -1 release/*.exe 2>/dev/null)" || {
echo "::error::No .exe installer generated in apps/desktop/release"
exit 1
}

- name: Upload Windows installer artifact
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.artifact_prefix }}-win-x64-exe
path: apps/desktop/release/*.exe
retention-days: ${{ inputs.artifact_retention_days }}
if-no-files-found: error

- name: Upload Windows auto-update manifest
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.artifact_prefix }}-win-x64-update-manifest
path: apps/desktop/release/*.yml
retention-days: ${{ inputs.artifact_retention_days }}
if-no-files-found: warn
15 changes: 12 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: CI

on:
push:
branches: [main]
branches: [main, dev]
pull_request:
types: [opened, synchronize]

Expand Down Expand Up @@ -112,9 +112,18 @@ jobs:
run: bun run typecheck

build:
name: Build
runs-on: ubuntu-latest
name: Build (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

steps:
- name: Enable long paths (Windows)
if: runner.os == 'Windows'
run: git config --system core.longPaths true

- name: Check out code
uses: actions/checkout@v4

Expand Down
Loading
Loading