Repository navigation
v1.1.0-RC | Maestro Lib Refactor
Pre-releaseMajor 1.1.x Additions
This candidate sits on top of stable 1.0.0 and carries all of it. Below is only what 1.1 adds.
⚡ Quick Chat, one hotkey away from any app. Press Opt+Space (Alt+Space on Windows and Linux) and a small floating window opens over whatever you are doing, talking to the agent you pick. The first message lands in the tab it belongs to (an open conversation on the same subject, one you closed in the last two weeks, or a fresh tab), and every follow-up stays there. Cmd+T sends the chat somewhere else, a thumbs-down on a tab Maestro picked moves the message to a new one, and Cmd+Shift+T turns the chat into a regular tab. Paste or drop images, pin it on top, drag and resize it, zoom its text, and open diagrams full screen. On by default; switch it off in Extensions.
🧭 Steer a turn that is already running. Press Opt+Cmd+Enter to push your draft into the agent's current turn instead of waiting for it to finish, or use the Steer button on a queued message. Maestro reads the agent's own transcript and marks the steered message with the result: a check when the running turn took it in, or "Sent as a follow-up" when it ran right after, and the agent answers the steer in its final reply. Works on Claude Code tabs that run the interactive harness and on Codex agents using the App Server transport. In a group chat, a message sent mid-round can be steered into the moderator's turn, or into the participant you @mention.
📡 Maestro Lite: drive one Maestro from another machine. Launch Maestro with --lite and it attaches to a full Maestro running elsewhere, over Tailscale, your local network, SSH, or HTTPS. You see the host's agents, chats, History, files, terminals, and running work, and the host does all the work. Lite finds hosts on your network and pairs with a one-time PIN. Marked early.
👁️ Computer History gives your agents a memory of what you saw. An opt-in Encore Feature that records app and window changes, typed text, and on-screen text through the OS accessibility layer, kept on your machine only. Your agents can then answer "what was that error I was looking at" or "what did I send an hour ago". Password managers, authenticators, crypto wallets, and system password prompts are never recorded, one-time login codes are redacted, private browser windows are skipped unless you say otherwise, and you choose which apps to include or exclude. Ctrl+Cmd+H opens a viewer with a timeline, search, and optional digests. Off by default.
🔀 Switch an agent between Claude Code and Codex and keep the conversation. Changing an agent's provider used to throw its tabs away. Now Maestro translates the agent's conversations and project memory into the new provider's own format, keeps every tab, draft, and queued message, and shows you a plan to review before it writes anything. A Carry Over badge in Edit Agent marks every provider an agent can move to this way. If the agent is mid-turn, the switch waits for the turn to finish. Both directions are marked preview, so read the reported limits before you accept. maestro-cli update-agent --provider runs the same flow, and --dry-run shows the plan without changing anything.
🖥️ Run Maestro with no desktop app. maestro-cli host start runs Maestro in the background on a server, in a container, or on a laptop with the app closed, and every maestro-cli command talks to it the way it talks to the app: chat turns, queued messages, Auto Runs that keep going after their terminal closes, group chats, consults, and Cue. host status shows what it is doing, and host stop refuses to cut off work in flight unless you tell it to wait or force it. The desktop app will not open on a data folder a host is using. Images, provider switching, and worktree Auto Runs still need the desktop for now.
🛰️ Run Cue on a server, and carry pipelines between machines. Maestro now ships a Cue server: a container image or a systemd service for Debian and Ubuntu, with an installer that upgrades in place. It checks that it has something to run before it enables itself, answers health checks, finishes work in flight before it stops, and takes provider keys and GitHub tokens from secret files. To get your pipelines there, the Cue window has a new Bundles tab: export a pipeline or an agent to a zip, then import it with a dry run that lists the agents, files, conflicts, shell commands, and secrets you still need to set. Bundles carry a Claude agent's skills, MCP config, CLAUDE.md, and memory, with credentials redacted. maestro-cli bundle does the same from a shell. Marked early.
Other Changes in 1.1.0
- 📤 While an agent is working, clicking Send opens a menu with Queue, Force Send, Queue Held, and Steer, so you pick what happens to your draft instead of remembering a chord. Rows that cannot run say why. Turn it off under Settings -> General.
- 🤖 Codex agents can switch to an App Server transport in the agent settings, locally or over SSH. It keeps a live connection to Codex, which is what lets you steer a Codex turn and see usage per turn.
- 🗜️ When a Claude Code conversation outgrows its context window, Maestro compacts it and resends your message on its own, with a small marker where the conversation was cut down. You used to get a "Prompt is too long" error and lose the message.
- ⏰ Auto Run can start at a set date and time. Pick "At a set time" in the Auto Run window and Go becomes Schedule. Scheduled runs survive a restart, can target a worktree, and keep their auto-resume settings.
- 📜 An agent can keep a tamper-evident audit log of every turn, including its reasoning, written to a folder you choose. Set it up in the Edit Agent dialog, and Verify Log checks that nothing was altered. Off until you turn it on.
- ✅ The agent's current task list can sit in a slim bar above the composer, showing the active task and how many are done. Off by default under Settings -> Display.
- 🙈 Right-click a Left Bar group and choose Hide Group to park it without deleting it. Show Hidden brings parked groups back, and their agents stay reachable from search and the agent switcher.
- 🎚️ The Throughput Gauge, a new Encore Feature (off by default), floats a live tokens-per-second meter over your work: read, written, or combined, for all agents or the active one, drawn as a dial, VU meter, LCD readout, or sparkline, with a peak mark. Opt+Cmd+Shift+T shows and hides it, and
maestro-cli throughput-gaugedrives it from a shell. - 🎛️ More Quick Chat: an agent picker on Cmd+O, Cmd+S to keep the chat as a tab, a thinking toggle on Cmd+Shift+K, a composer that grows as you type, Cmd+W to close, Cmd+
to jump back to Maestro, and a Default Tab setting that sends every new chat straight to a new tab.maestro-cli quick-chat send --image` attaches images from a shell. - 🕘 Quick Chat remembers your last 30 chats. The History button (Cmd+Y) lists them, and picking one brings back its agent, its tab, and the whole thread.
maestro-cli quick-chat historyandquick-chat recalldo the same. - 🗣️ The @mention routing strip under the composer is now a menu. Pick Parallel, Consult first, Hand-off, or Only for this one message instead of rewording it, or leave it on Auto.
- 🔗 A queued message can merge into the one above it with the Merge button on its card or in the Execution Queue view. You see both messages before you confirm, and they go out as one turn.
maestro-cli queue mergedoes the same. - 🔔 The notification center is now a setting under Settings -> Notifications, off by default, and its bell lives in the Left Bar header. Its popover stays on screen instead of spilling off the bottom of the window.
- 🪝 Cue's GitHub pull request, issue, and label triggers can take GitHub webhooks and fire the moment something changes. Turn on "Also take GitHub webhooks" on the trigger; polling stays on as a backup, and a change seen both ways still fires once.
- ⏳ Cue got sturdier. Saving cue.yaml no longer re-runs unchanged heartbeats or drops queued events, a missed time window runs once after the machine wakes, file triggers fire for folders created after Cue started or spelled in a different case, and a new GitHub trigger no longer swallows its first item.
- 🩺 Cue stops raising sticky health warnings for paused subscriptions and for missed file changes it already recovered from. Real YAML and trigger failures still alert.
- ⚙️ Cue can send a provider slash command, with template values filled in, into a fresh tab on an agent, and
maestro-cli cue triggerfires subscriptions even when the desktop app is closed. - 🔧 Codex, Grok, and Antigravity tool calls show what really happened. Codex shows the command it ran instead of its shell wrapper, marks failed commands, and lists file changes, MCP calls, web searches, and to-do lists. Grok and Antigravity accept images, Antigravity shows its thinking and gets a History, and Grok History shows real token totals.
- 🧠 Codex agents list plugin and system skills in their slash commands, using the agent's own binary, environment, and SSH remote.
- 🛑 Stop now reaches an automatic retry that is still pending, stopping a Codex turn ends it instead of sending the prompt again, and deleting an agent or switching its provider ends every tab's process, not just one.
- 🧮 A turn is no longer reported as "Context length exceeded" just because the agent's reply mentioned tokens and limits.
- 🚀 Starting an agent no longer freezes the window for a moment, and the app stops redrawing nonstop when nothing on screen is changing, which cuts idle CPU use.
- 🧹 Switching an Encore Feature off removes every way into it: menu and palette entries, hotkeys, and mentions in prompts and onboarding. Its background services stop too,
maestro-cli encore disablematches the toggle, and a switched-off Pianola agent drops out of every agent list. - 🧩 Every extension's details pane has its Enable switch pinned to the header, with Help, Settings, and Permissions tabs below, and settings search links that point at an extension open that pane directly.
- 🔐 MaestroRun, a new macOS-only extension (off by default), installs a signed launcher that holds one Full Disk Access grant for your scheduled scripts, so upgrading an interpreter no longer costs you a re-grant.
- ⌨️ Keyboard shortcuts look the same everywhere (palette, menus, tooltips, help screens): one line of key caps that never wraps.
- 🔤 A Maestro terminal waiting for you to type (a sudo password, for example) can raise a notification that names the agent, and clicking it takes you straight there.
- 🗂️
maestro-cli dispatch --new-tabopens a hidden, named tab instead of cluttering the target's tab strip,dispatch --heldqueues a message paused, andmaestro-cli sendwrites a History entry marked AGENT or CUE when another agent or a Cue run sent it. - ⏱️ The Usage Dashboard splits total Auto Run time between goal-driven and spec-driven runs.
- 🎹 Pianola can collapse its watch list and start watching new agents automatically.
- 🏷️ The Left Bar can show which provider backs each worktree agent, on the same line as its branch name. Off by default under Settings -> Display.
- 💬 With the Relay (Discord) extension, an agent answering a Discord thread shows as busy in the Left Bar, and a conversation started from Discord keeps a Relay badge on its tab.
- 🎼 An agent that creates a Concerto Movement no longer pops the stage open over your work, and looking at a minimized panel leaves it minimized.
- 🌐 In the browser interface, reopened tiled panes come back tiled, an Auto Run picks up again after its tab reloads, toggling a panel no longer shows "Submission rejected", and agents started from the browser get their full system prompt.
- 🗃️
maestro-cli settings agent get <agent-id>reads that agent's own settings (transport, token source, model) instead of returning blanks. - 📝 A tab named from a question-shaped first message gets a real name instead of a stray line from the namer's answer.
- 🙋 Wizard-written playbooks and Auto Run prompts stop at a human checkpoint only when they truly need you; otherwise the agent automates the step or lists it as a manual follow-up.
Full Changelog: v0.18.8-RC...v1.1.0-RC