Release and Artifacts
September 5, 2026 ยท View on GitHub
Scope
This document describes the unified release entry point, artifact list, manual trigger parameters, and common troubleshooting paths used in the current repository.
Unified release entry point
Current release workflow:
.github/workflows/release-all.yml- The frontend
distis built once, then reused by packaging jobs for each platform
Trigger mode:
- Pushing a
v*tag automatically runsbuild-and-publish workflow_dispatchsupports manualbuild-and-publish,build-artifacts, andpublish-artifactsmodes- Ordinary branch pushes and pull requests do not trigger it
Key inputs:
mode:build-and-publish | build-artifacts | publish-artifactstag: requiredref: build baseline branch or commit, defaultmainprerelease:auto | true | false
Artifact list
Desktop
- Windows:
CodexManager_<version>_x64-setup.exe - Windows:
CodexManager-portable.exe - macOS:
CodexManager_<version>_aarch64.dmg - macOS:
CodexManager_<version>_x64.dmg - Linux:
CodexManager_<version>_amd64.AppImage - Linux:
CodexManager_<version>_amd64.deb - Linux:
CodexManager-linux-portable.zip
Service
- Windows:
CodexManager-service-windows-x86_64.zip - macOS:
CodexManager-service-macos-arm64.zip - macOS:
CodexManager-service-macos-x64.zip - Linux:
CodexManager-service-linux-x86_64.zip - Linux (web test bundle):
CodexManager-web-linux-x86_64.zip
Default GitHub attachments
GitHub Releases also attach:
Source code (zip)Source code (tar.gz)
Pre-release rules
prerelease=autoandtagcontains-: publish as a pre-releaseprerelease=autoandtagdoes not contain-: publish as a stable releaseprerelease=true|false: override auto-detection- Rerunning the same
tagupdates the Release metadata using the current input values
Local trigger entry point
Windows helper script:
scripts/rebuild.ps1
Common example:
pwsh -NoLogo -NoProfile -File scripts/rebuild.ps1 `
-AllPlatforms `
-GitRef main `
-ReleaseTag v0.1.9 `
-GithubToken <token>
Platform-specific notes
Windows
- Produces both installer and portable builds
- The portable build is distributed as a standalone
exe, not wrapped in an extra zip
macOS
- Current artifacts are shipped as
dmg - Because the app is not notarized with an Apple Developer account, Gatekeeper may still block the first launch
- The
dmgbundle includes:Open CodexManager.commandREADME-macOS-first-launch.txt
Linux
- Desktop builds currently ship as
AppImageanddeb - Service builds are shipped as zip archives
Recommended checks before release
- Synchronize the project version in the root
Cargo.toml,apps/package.json, TauriCargo.toml/tauri.conf.json, and bothCargo.lockfiles - Make sure
CHANGELOG.mdhas been updated - Make sure the desktop frontend build passes:
pnpm -C apps run build - Make sure core tests pass:
pnpm -C apps run test,cargo test --workspace - If the gateway protocol changed, also run
scripts/tests/gateway_regression_suite.ps1
Common failure cases
Missing frontend artifacts
Check:
- whether
apps/out/builds successfully - whether the frontend build step succeeded in the workflow
Incorrect Release metadata
Check:
- whether
tagcontains- - whether
prereleaseexplicitly overrides auto-detection
macOS artifact downloads but will not open
This is expected for the current non-notarized build and does not mean the workflow failed.
Workaround:
- Drag
CodexManager.appintoApplications - Double-click
Open CodexManager.command - Or run:
xattr -dr com.apple.quarantine /Applications/CodexManager.app
Related documents
- Project overview: README.md
- Testing baseline: TESTING.md
- Architecture notes: ARCHITECTURE.md