[0.1.0] - 2026-06-25
The first public release of Controller (formerly Coding Orchestrator).
This is an early preview — expect rough edges.
Note (revised 2026-06-25): the original
Controller-0.1.0-mac.zip
andController-0.1.0-arm64.dmgwere replaced on the same release
page with re-signed artifacts. The fix is the new
electron/resign-mac.mjspost-build step, whichcodesign --force --deep --sign -the bundle afterelectron-builderfinishes,
producing a properly-formed ad-hoc signature.Important caveat about Gatekeeper on modern macOS: ad-hoc-signed
arm64 + hardened-runtime bundles are unconditionally rejected by
Gatekeeper on macOS 14.4 (Sonoma) and later (15 Sequoia, 26
Tahoe) with a dead-end "Apple could not verify … Move to Trash /
Done" dialog that has no Open button. Right-click → Open does not
help on those versions, andxattr -d com.apple.quarantinedoes
not help either. The only practical workarounds without Developer
ID are: (1) launch the inner binary directly
(/Applications/Controller.app/Contents/MacOS/Controller), or
(2) wait for Developer ID signing in a follow-up release.
Highlights
- Multi-provider support for the Anita, Codex, and Claude coding agent
CLIs, with per-session model selection and provider-aware defaults. - Project & session management with a sidebar UI, persistent on-disk
transcripts (JSON/JSONL), archive/unarchive, and inline file diffs. - Real-time streaming of agent output (text, reasoning, tool calls,
tool results) over SSE. - Persistent embedded terminals backed by
tmuxsessions that survive
browser refreshes and backend restarts. - Slash-command skills managed by the orchestrator, with a unified
catalog sourced from each agent's skill home. - Worktrees & on-radar focus queue (Controller Mode) for steering
multiple parallel sessions from one window. - Desktop shell that ships the same UI and backend as the browser app,
including a first-run welcome screen for picking the local backend port. - App shell auto-refresh on out-of-band worktree/session changes
(CLI, second window, headless run). - macOS TCC hygiene: state moved to
~/Library/Application Support/Controller/, which is exempt from
Files-and-Folders prompts (see the State location section of the
README for the migration step from pre-223 installs).
Downloads
- macOS —
Controller-0.1.0-arm64-mac.zipand
Controller-0.1.0-arm64.dmg(Apple Silicon). For Intel Macs, build
from source (npm run package:electron:dist) or wait for v0.1.1,
which will add an x64 build via CI. - Linux —
Controller-0.1.0-arm64.AppImage(aarch64). An x86_64
AppImage is also targeted for v0.1.1.
The macOS build is unsigned and unnotarized for this release; a
follow-up will add Developer ID signing and notarization. Linux ships as
an AppImage — make it executable (chmod +x Controller-0.1.0.AppImage)
and run it; no install required.
Known gaps
- No Developer ID signing. The macOS build is ad-hoc-signed and
not notarized. On macOS ≤ 14.3 it launches via the right-click →
Open flow. On macOS 14.4+ (Sonoma), 15+ (Sequoia), and 26+
(Tahoe), Gatekeeper rejects it on first launch with a dead-end
dialog. Workaround: launch the inner binary directly
(/Applications/Controller.app/Contents/MacOS/Controller) until
Developer ID signing lands. - No auto-update channel.
- No Windows build (state-location path falls back to the legacy
~/coding-orchestrator/directory on Windows; a native
%LOCALAPPDATA%path is tracked as follow-up work). - The
node-ptyprebuilds are pinned to the Electron version declared
inpackage.json(^42.3.0); if you run against a different
Electron you'll need to rebuild locally.