You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use this script to validate the beta candidate before tagging v0.1.0-beta.1.
Check each step. Fill in Sign-off at the end and reply OK in chat to publish the release.
Estimated time: 45–60 minutes Prerequisites: Linux x86_64, paid ChatGPT account, a local Git test repository
0. Prepare the build
Choose one option:
Option A — AppImage from a previous release (fastest if CI already finished)
# Download from GitHub Releases (e.g. v0.1.0-alpha.3):# Cotux_*_amd64.AppImage and run-cotux.sh
chmod +x Cotux_*_amd64.AppImage run-cotux.sh
./run-cotux.sh Cotux_*_amd64.AppImage
Option B — Local build from this branch (recommended after timeline changes)
cd~/Code/chatgpt-linux
git pull
npm ci
npm run build:appimage
chmod +x scripts/run-cotux.sh
./scripts/run-cotux.sh src-tauri/target/release/bundle/appimage/Cotux_*.AppImage
Important: do not run a raw AppImage right after tauri build without build:appimage. That step runs fix-appimage.sh (WebKit on Ubuntu 26.04). Without it the UI may hang or not respond.
Quick verification (optional):
npm run validate:runtime
cd src-tauri && cargo test
npm test -- --run
1. Install and first launch
#
Step
OK
1.1
App opens without crash (no WebKitNetworkProcess / SIGBUS)
☐
1.2
Cotux icon appears in dock/launcher
☐
1.3
Window drags and resizes from edges
☐
1.4
Top bar shows disconnected state before login
☐
2. Authentication (paid plan)
#
Step
OK
2.1
Sign in opens the browser once (not twice)
☐
2.2
Complete OAuth → app shows email and plan (e.g. plus)
☐
2.3
Usage quota menu loads weekly percentage
☐
2.4
Sign out clears session; project sidebar hides or asks for login
☐
2.5
(Optional) Free account: app refuses and shows paid-plan message
☐
3. Projects and sessions
#
Step
OK
3.1
Add project folder
☐
3.2
Expand project → VS Code/CLI sessions appear (if present in ~/.codex)
☐
3.3
Select existing session → history loads in timeline
☐
3.4
New session clears composer and starts a fresh thread
☐
3.5
Archive project and toggle archived list in sidebar
☐
Settings → CODEX_HOME should show ~/.codex (or your real path, e.g. /data/home/.codex).
4. Chat, harness, and timeline
#
Step
OK
4.1
Send a simple prompt → agent streams a response
☐
4.2
Sticky header shows project + session name when scrolling
☐
4.3
Change model / reasoning / collaboration mode in composer
☐
4.4
Stop turn interrupts active generation
☐
4.5
Copy message or code block (hover) works
☐
4.6
Turn summary appears after completion ("Worked for …")
☐
4.7
Live "Working for …" divider during an active turn
☐
4.8
Ask for a plan → plan card persists after reload/restart
☐
4.9
Model-changed divider when switching models between turns
☐
4.10
Continue from here on an older message → new thread loads
☐
5. Right panel (Changes + Files)
#
Step
OK
5.1
Tabs visible: Changes and Files only (no Terminal tab)
☐
5.2
After a turn that edits files, Changes lists staged/unstaged files
☐
5.3
Select file → side-by-side diff with syntax highlight
☐
5.4
Edit file outside the app → panel updates (git watcher)