v0.9.1 — Codex Reliability, Type Safety & README Overhaul
Changes
🔧 Codex Engine Fixes
- Image attachment wire format — Codex image turns now correctly convert
ImageAttachment[]to the Codeximage/localImageinput format via a newimageAttachmentsToCodexInputs()helper. Previously images were passed raw and would fail silently. send/sendRawsplit —sendRawis now a real low-level path (no user-message append, returnsboolean, resets processing state on failure). Previously it was aliased tosend, which caused duplicate messages in queued flows.- Queue drain routing — Queued messages for each engine now send directly via IPC with the correct session ID and effort level, instead of routing through hook methods with potential stale closures.
- Stuck processing state —
setIsProcessing(false)is now explicitly called on queue send errors so the input bar never stays locked after a failure. - Live send path —
displayTextand typed image inputs are now forwarded correctly on live Codex sends; removed unsafeas unknown[]casts. - Client info version — Codex app-server handshake now reports the real runtime
app.getVersion()instead of a hardcoded"0.1.0".
🏗️ Type Safety
useClaudereturn shape —setIsProcessingis now exported, completing the engine contract shared by all three engines.title-gen/commit-genIPC — Engine parameter type widened from"claude" | "acp"to include"codex".- Preload types —
codex.sendimages typed asCodexImageInput[];codex.logintype narrowed to"apiKey" | "chatgpt". - Plan step status normalization —
codexPlanToTodosnow handlesinProgress,in_progress, andin-progressvariants.
🧹 QoL
- Removed stale
console.logdebug calls fromuseSessionManager.
📄 README
- Reflects the three-engine architecture (Claude Code, Codex, ACP) with a requirements table.
- Agent management now points to Settings → ACP Agents with Agent Store and My Agents tabs — manual
agents.jsonediting removed. - Added: Spaces, git worktrees, voice input (native + Whisper), OS notifications, auto-updates, session search, MCP panel, Changes panel.
- Added note about unsigned binaries and how to bypass OS warnings.
- Added Windows ARM64 to the install table.
- Removed outdated Glass UI mention and stale "documentation coming soon" note.
Full Changelog: v0.9.0...v0.9.1