Releases: clayrune-io/clayrune
Release list
Clayrune v2.4.1
Clayrune v2.4.1
67 commits since v2.4.0 (2026-09-23 to 2026-09-24). Both downloads are now signed: the Windows installer with a Microsoft-verified code-signing certificate, the Mac app signed and notarized by Apple.
New
- Signed Windows installer.
Clayrune-Installer.exeis Authenticode-signed and timestamped, so Windows and your browser no longer treat it as an unknown download. - Install progress per AI tool during setup. Each vendor you pick shows its own bar: queued, installing (with elapsed seconds), then installed or failed with the reason.
- Vault passphrase lock. The secrets vault can be locked behind a passphrase, locks itself after a period of inactivity, and has a "Lock now" button.
- Date dividers in agent chats that stay pinned to the top while you scroll.
Fixes
- Setup terminals stay visible. The install and sign-in terminals opened from setup used to sit behind the setup card, so you could not see progress or finish a sign-in. They now stay on top, including after you click inside the setup card.
- Every selected AI tool installs on its own. One failed install no longer stops the rest; each reports ok or failed separately.
- Tools installed during setup are detected right away. Codex (and Claude on some machines) could stay "not installed" until a restart even after installing correctly.
- The Next button says what it is waiting for, right next to the button, naming the vendors that still need installing or signing in.
- Your conversation list survives a restart. Scheduled chats with a hired agent appear under that agent again, a long chat that continued in a new session shows once instead of several times, and chats are titled by your own message instead of "=== Prior conversation".
- Background jobs wake the chat that started them instead of finishing unnoticed.
- A dispatched agent reports back once, not after every one of its turns, and the "Dispatched by" label no longer changes after the child replies.
- A stuck agent restart can no longer freeze a whole project.
Security
- Vault lock changes require the dashboard passcode, leave tamper evidence, and quarantine old master-key copies.
- Inline HTML file previews are limited to registered project folders.
Clayrune v2.4.0
Clayrune v2.4.0
326 commits since v2.3.0 (2026-09-14 to 2026-09-23).
New
- First-run setup is no longer tied to the tour. You can configure agent connections, theme, conversation flow, connectivity and the LAN passcode without running the guided walkthrough, and skip the walkthrough without skipping setup. Settings gains "Run setup again" next to "Take Tour."
- A default-model tier step during setup, with Best / Balanced / Fast to choose from and Balanced recommended. It only writes a tier if you don't already have a model set, so an existing pin or tier is never overwritten.
- One resolver decides which model an agent gets, everywhere a model is chosen (new chat, resume, dispatch, revive). An install that never answered the tier question now keeps the CLI's own default instead of silently landing on Opus.
- Opus 5.5 in the Claude model pickers.
- Post a Desk draft yourself, in one click. An approved draft now offers "Open in X" and "Open in LinkedIn", which open the platform in your own browser with the text already filled in, plus "Copy". You press Post; no developer account or API key is needed. LinkedIn company pages cannot be prefilled, so that route copies the text and opens the page's editor.
- GPT-6 in the Codex pickers. The model list is now read from Codex's own live catalog instead of a hand-kept list, so newly released models show up without a Clayrune update.
- Saved model choices upgrade themselves. A model pinned on an agent, project, schedule or workflow step moves to the newer model in the same family when its price is known and no higher; anything uncertain is left alone.
- The +New empty state names the agent you're actually talking to. It used to say "Claude" no matter which provider or persona was active; it now reads the real one, falling back to "Agent" only when nothing resolves.
Security
- A throwaway diagnostic run could point at a temporary secrets store and still mint straight into your real OS keyring, orphaning every sealed vault entry. Fixed: a temp store no longer touches the real keyring, and a mismatched key is now detected and refused instead of silently accepted.
Fixes
- Posts queued on the Desk no longer vanish. Two parts of the app saving the same project at once could silently drop a newly queued draft; saves now happen one at a time, and the Desk's pending-drafts count reflects the drafts actually waiting.
- A dispatched agent no longer gets reported as failed once it has already started. A slow save of the dispatch log (an antivirus or indexer briefly locking a file) used to bubble up as an error, so the same task could get dispatched twice.
- Resuming a long conversation no longer double-counts spend on Claude CLI 2.1.277 and newer, which carries the session's cost total across a resume instead of restarting it at zero.
- Mobile chat regains full height after the app is backgrounded or the screen is locked with the keyboard open, instead of staying stuck at keyboard height until you tap the transcript.
- Diagram thumbnails in Media render instead of showing as blank white tiles.
- The Providers panel no longer shows garbled text on Windows when a CLI's own status line uses non-ASCII characters.
- Signing in from a phone works again. Codex, Gemini and Qwen used to open a login listener on the host machine, so completing sign-in on a phone just failed; they now use a device-code flow. The remote sign-in link had also gone silently dead after an unrelated row-markup rewrite; it now works again and falls back to showing the raw URL rather than failing silently.
- Codex no longer shows "signed in" when it isn't. A bare OPENAI_API_KEY in the environment used to count as signed in, while every Codex dispatch failed with a 401.
- CLI updates from Settings work on Windows again. Updating an npm-installed CLI (Gemini, Codex) failed silently, leaving it one release behind.
- The agent log is no longer quarantined over a momentary file lock. A read that collided with a save was treated as corruption and the log was set aside; it is now retried and never moved.
Clayrune v2.3.0
Clayrune v2.3.0
295 commits since v2.2.0 (2026-09-03 to 2026-09-14).
New: build a workflow on a canvas
- Drag agents, approvals, actions and waits onto a canvas and connect them. Branch on an agent's outcome, with a required "otherwise" path so nothing falls through silently.
- Put a workflow on a schedule. The same scheduler that runs your recurring agents can now start a workflow.
- Watch a run and cancel it. The running step glows on the canvas, finished steps show a check, and clicking a step name in the run bar jumps to it. Editing a workflow mid-run only changes future runs.
New: the Desk
- An in-house marketing surface next to the Floor: a board of campaigns, a review queue, a calendar and a ledger of what went out.
- A writer that suggests what's worth saying, citing the project activity behind every pick, and learns your voice from how you already write.
- Push back with a note and it reworks right away. Publishing stays yours; the Desk records what you posted.
New
- Backup and restore. Back up the whole install or export one project, with progress, Cancel, and restore points you can roll back to.
- Drag to hire. Drag an agent from the Floor onto a project to add it to that project's roster.
- Agents you dispatch report back. A dispatched agent's result arrives in the chat that sent it, and the worker nests under its parent in the rail.
- Wrong-question detection. If an agent never touched something you named in your request, the turn is flagged.
- Memory stays current in long chats, refreshed every turn instead of once at the start. The session log now lives in its own file, so the memory page loaded into every prompt stays smaller.
- Fable 5.1 in the Claude picker and GPT-6 Astra in the Codex picker.
Security
- Unattended agents are fenced. Scheduled, workflow, hivemind and agent-dispatched sessions run behind the command fence, and unattended Codex runs are sandboxed to their own project folder.
- The secrets vault no longer replaces its key after a Windows credential wipe. It restores from a Windows-protected copy, or refuses and tells you which entries need re-entering, instead of silently locking them.
- Decisions reserved for a human (vault secrets, promoting a skill, changing settings, backup export) now refuse an unattended agent instead of trusting it.
- The unattended-agent fence blocks commands whose real identity is only decided at runtime, not just known dangerous spellings.
- Email replies to an agent's question are authenticated before they count as your answer.
- The remote-access tunnel picks up a TLS fix (RUSTSEC-2026-0285).
- Incognito chats stay incognito after a restart and no longer show up in search.
Reliability
- Workflow runs could stall after an agent step finished. Finished steps now always advance, a background check catches any missed step, and a stuck run is marked with the reason instead of blocking new runs.
- Agent history could be wiped by a restart. State files are now written atomically, and a file that fails to read is never rebuilt over the real one.
- Session cost always showed $0. Fixed.
- The Floor lagged and could freeze. It refreshes every 5 seconds, recovers from a failed load, and shows helpers while their parent waits.
- Codex chats keep their history, search and Documents, and a follow-up continues the same thread instead of starting a new one.
- Remote access survives Windows wiping its credential store and keeps alerting during a long outage.
- On mobile, sending a message restores the full chat view immediately instead of waiting for the reply.
- The Documents tab is fast again on projects with many conversations.
Clayrune v2.2.0
712 commits since v2.0.2 (2026-06-09 to 2026-09-02).
Your install may not have been running everything
- The desktop app started none of the server's startup subsystems — no scheduler, no guardian, no steward. Fixed.
- One schedule fire could dispatch twice. Fixed.
- The macOS download 404'd for eleven weeks on v2.0.1 and v2.0.2. The notarized, stapled build is attached here.
New
- In-chat search. Searches the full transcript on disk rather than the rendered DOM, so a match above the 500-line render cut is still found and reachable.
- Channel rail mode. The conversation rail can list the people who have worked in a project instead of a flat list of chats.
- Live subagent visibility. A dispatched helper shows as a nested card in the thread, a count on the roster row, and on the Floor.
- Speaker attribution. Agent messages carry the persona's face and name, collapsing for consecutive messages from the same speaker.
- Documents tab. Replaces Plans, and lists markdown an agent actually wrote, derived from the session record.
- Hiring writes the persona's voice, generated from the role you type and editable before it saves.
Reliability
- A failed non-Claude run leaves a real error on disk instead of echoing your own prompt back as the result.
- Provider quota is visible before a run rather than after it dies.
- Clicking a document opens it again.
Clayrune v2.0.2 — security + hardening
Security + hardening release — supersedes v2.0.1. All users should update.
Rolls v2.0.1's security work plus a second code-inspection pass into one build:
/api/terminal/launch(the shell-exec sink) now restricted to loopback callers.- Dependency CVE fixes — control-plane fastapi/cryptography past 8 known CVEs; main-app floors raised (Pillow libwebp heap-overflow, requests, flask, cryptography).
- Continuous dependency auditing in CI (pip-audit + cargo audit), committed Rust lockfile, lint + exception hardening.
Full details in CHANGELOG.md.
Install / update
- Existing installs auto-update from
master— open Clayrune and check for updates. - Windows: run
Clayrune-Setup.bat; re-run it to pick up the dependency floor bumps. - macOS: download
MissionControl-macOS.zipbelow, unzip, right-click ▸ Open (approve once in System Settings ▸ Privacy & Security if blocked).
macOS build pending notarization; the signed build replaces it shortly. Control-plane CVE fix requires a Cloud Run redeploy.
Clayrune v2.0.1 — security release
Security release — all users should update.
Closes a LAN unauthenticated remote-code-execution chain (a forgeable Cf-Access-* header could bypass the local passcode gate; CORS is now a strict allowlist, blocking drive-by access from any website). Plus hardening: git argument-injection guards, secrets-at-rest file permissions, serve-image path confinement, control-plane dev-auth fail-closed, and opt-in Cloudflare Access JWT verification. Drops the unused Tauri desktop target.
Full details in CHANGELOG.md.
Install / update
- Existing installs auto-update from
master— open Clayrune and check for updates. - Windows: run
Clayrune-Setup.bat(pulls the latest source). - macOS: download
MissionControl-macOS.zipbelow, unzip, then right-click the app ▸ Open. If macOS blocks it ("Apple could not verify…"), approve it once in System Settings ▸ Privacy & Security ▸ Open Anyway.
The macOS build attached here is pending notarization; the signed build will replace it shortly (removes the Gatekeeper prompt).
Clayrune v2.0.0
First major release since v1.5.1 — a redesigned settings surface, sticky/cheaper agent behavior, and runtime efficiency for long-lived sessions.
Highlights
- Settings, redesigned — WhatsApp-style three-level drill-down (categories → sub-list → settings) with live search and depth-aware hardware-back.
- Sticky agent settings (default on for new installs) — brief-replies "Everywhere" is baked into each chat's spawn system prompt (cached, authoritative) instead of re-sent every turn; flipping a CLI-flag setting (model/effort) mid-session resumes the live session so it takes effect.
- Brief replies on desktop — 3-way Off / Phone / Everywhere; prose-only brevity (code, file edits, and tool work are never shortened).
- Search past chats by transcript content (project-scoped).
- PLAN tab revived — detects plan docs without needing plan mode.
--effortknob — per-agent and per-project effort control.- Self-learning skills (Phase 4) and SQLite migration foundation (Phase 0) land as new internal subsystems (
distiller.py,db.py) with test coverage.
Efficiency
- Per-project MCP trimming — load only the servers a project needs.
- Idle-eviction of warm Mode B sessions to reclaim their MCP fleet.
- Windowless launch by default on Windows; restart + shut-down power menu.
Fixes
- Keep SSE open while blocked on AskUserQuestion (turn_complete race); the form no longer silently fails to reappear after a DOM wipe.
- Resumed sessions keep their transcript across a process death.
- Restart/crash no longer orphans child processes.
- Mobile uploads + agent-text URL linkification.
- Modal no longer re-docks to the right after you drag it free; settings modal sizes to its content.
Upgrade note: sticky_agent_settings defaults on for fresh installs and for existing installs that never set the key; set it to false in config.json to opt out.
Full detail in CHANGELOG.md under [2026-06-04].
v1.5.1 — Fix native window bundling
Fix: Native window now works in bundled exe
Root cause: webview.platforms.winforms was missing from PyInstaller hidden imports. This module is imported dynamically by pywebview's guilib.py (inside a function), so PyInstaller's static analysis couldn't detect it. Without it, the entire GUI backend was absent from the bundle, causing silent fallback to browser mode.
Changes
- Use
collect_submodules('webview')andcollect_submodules('clr_loader')to automatically bundle all submodules - Add visible error dialogs (MessageBox) when native window fails, so failures are no longer silent
Download
- MissionControl-Windows.zip — extract and run
MissionControl.exe - Requires .NET Desktop Runtime 6.0+ (will prompt to install if missing)
Windows SmartScreen Notice
On first launch, Windows may show a "Windows protected your PC" warning. This is expected — the app is not code-signed. To proceed:
- Click "More info"
- Click "Run anyway"
This only happens once. The warning does not indicate a security issue — the source code is fully open at github.com/ronle/mission-control.
v1.5.0 — Native window fix
What's New
Native window restored in bundled app
The PyInstaller-bundled exe now opens a proper native window (pywebview + EdgeChromium) instead of crashing with a .NET error.
Root cause fixed — three build/runtime bugs:
- Wrong
Microsoft.Web.WebView2.WinForms.dllvariant was bundled (net462instead ofnetcoreapp3.0) - Missing
Python.Runtime.runtimeconfig.jsonprevented .NET version roll-forward webview.start()returns immediately (GUI on background thread) — main thread fell through to browser fallback, opening Chrome on top of the native window. Fixed by blocking main thread until window closes.
Now works on: .NET 6, 7, 8, 9, or any future version. Gracefully falls back to browser if .NET Desktop Runtime is not installed.
Also includes
- .NET Desktop Runtime pre-detection with guided install dialog
- Drag-and-drop file attachments in agent chat
- Global Settings UI
- Per-project Remote Control toggle
- Agent process registration API
- GitHub Sync improvements
Mission Control v1.4.2
Fixes
- .NET detection fixed: Removed
clr_loaderpre-check that was false-negating in frozen builds (webview would work but the pre-check said .NET was missing). Now usesconsole=Truebootloader with hidden console window so Python's exception handling catches real .NET errors properly.
New Features
- Global Settings modal: New "Settings" button in header with UI for all config options — Identity, Agent Defaults, Claude Code Integration (streaming/remote control/channels), Memory & Condensation, Paths & Server
- Per-project Remote Control: Toggle in three-dot menu to enable
--remote-controlper project - Agent process registration: Agents can register spawned processes via API for visibility in Process Manager
- Config API:
GET/PUT /api/configendpoints for reading/writing config.json
Also includes (from v1.4.0/v1.4.1)
- Process Manager with PID tracking, kill, and orphan cleanup
- Toast notification system
- Dispatch error handling for missing Claude CLI