Major 0.18.x Additions
🌐 Maestro Web Desktop is the full desktop UI running in your browser. Every Electron IPC handler is mirrored 1:1 over a WebSocket bridge, so the renderer runs unchanged on a tablet or phone with a responsive, touch-friendly layout: tri-state collapsible sidebar, drawer overlays, an adaptive header and input toolbar, touch-aware file picker, and iOS Safari fixes. Major upgrade to the remote capability.
🎯 Goal-Driven Auto Run lets you point Auto Run at a single free-text objective instead of a checklist. Each iteration spawns a fresh agent that makes one increment of progress, reports how far along it is, and exits, looping until the goal is reached or you stop the run. Pick Spec-Driven vs Goal-Driven with a toggle at the top of the Run dialog. Reach for it on open-ended work where you can't list the steps up front. Progress renders live across desktop, web/mobile, and History, and you can drive it headless with maestro-cli goal-run <agent> "<goal>" for cron jobs and CI.
Other Changes in 0.18.3
- 🔄 Auto-Resume on Limit: when a Claude agent hits a usage limit, Maestro pauses the run and automatically resumes the conversation once the limit resets - surviving an app restart, with a time-based give-up backstop and SSH support.
- 📊
.mmdand.mermaidfiles now render as sanitized, theme-aware diagrams by default, withCmd+Eto drop into source editing. - 🔍 File preview search gains a three-way toggle - text, regex, or jump-to-line - applied consistently across every preview tier.
- ✍️ Auto Run's Thought Stream now renders as formatted markdown instead of plain monospace.
- 💬 Group chat participants can run playbooks and Auto Run docs themselves via
maestro-cli, a more reliable path than the moderator-only!autoruntrigger, plus a newmaestro-cli run-docto execute raw Auto Run.mddocuments headlessly without a saved playbook. - 🔑 Tab naming now inherits the same provider auth as the chat, so it no longer fails with "Not logged in" when the agent itself is signed in.
- 🧩 Fixed a maestro-p plan-mode hang where
ExitPlanModeleft the turn waiting until timeout and discarded the plan it had already captured. - 🔒 Bumped dompurify, markdown-it, and js-yaml to clear three moderate security advisories on the markdown/YAML rendering surface.
- 🅰️ Web Desktop now loads JetBrains Mono so the browser bundle matches the desktop font instead of falling back to Courier New.
- 🌐 Web Desktop now shows a branded loading splash, a spinner while your agents stream in, and a readable on-screen error with a same-network hint when the bundle can't load, instead of a blank page.
- 🖼️ Images and screenshots from agents running on an SSH remote now render inline in the AI terminal instead of failing to load.
- 🔁 Cue pipelines with
max_concurrentabove 1 no longer let the same trigger fire on top of itself and double its side effects, like a posting pipeline replying twice.
Full Changelog: v0.18.2-RC...v0.18.3-RC
What's Changed
- fix(maestro-p): finalize interactive plan-mode turns on ExitPlanMode by @pedramamini in #1118
- Auto-Resume-Paused-Session: 32 tasks across 2026-06-18-Auto-Resume-On-Limit/AUTO-RESUME-01, 2026-06-18-Auto-Resume-On-Limit/AUTO-RESUME-02 +2 more by @pedramamini in #1108
- Refactor GeneralTab settings sections by @reachrazamair in #1123
- refactor(DisplayTab): DisplayTab refactored into focused Settings sections by @reachrazamair in #1126
- refactor(encore): decomposed encore settings tab into dedicated modules by @reachrazamair in #1135
Full Changelog: v0.18.2-RC...v0.18.3-RC