- Copilot CLI and Kimi CLI are now first-class agent tools with default tool setup, resume actions, native summarization support, and MCP setup shortcuts.
- Solo's local HTTP control API now exposes authenticated JSON endpoints for app version/status, process list/get/start/stop/restart/rename/spawn, project list/get/create/rename/delete, project-wide command lifecycle actions, and Todo/Scratchpad read and mutation workflows.
- The
soloCLI now talks to Solo's local HTTP API for app status/version, process commands, project commands, Todo commands, and Scratchpad commands, with human-readable and JSON output modes. - Local integrations can now discover Solo's HTTP API capabilities through an authenticated metadata endpoint.
- Solo MCP now includes project tools for reading project metadata, importing existing directories, renaming projects, deleting projects with explicit confirmation, and explaining project scope through
helptopics. - Solo MCP
spawn_processcan now pass per-launch agent arguments without changing the saved agent tool defaults. - Solo MCP now exposes a
spawn_agentalias for creating agents without passingkind="agent", with catalog, help, and command-surface metadata wired to the existing process spawn behavior. - Solo MCP Scratchpad tooling now includes
scratchpad_edit,scratchpad_append_section,scratchpad_tail, andscratchpad_findfor targeted edits, heading appends, recent-line reads, and search without fetching a full scratchpad. - Solo MCP responses now include structured guidance in JSON/text responses and legacy metadata hints for common follow-up workflows such as timers, spawned agents, scratchpad reads,
send_input, and session identification.
- Project directories can now be edited after project creation from the project overview.
- Folders can now be dragged from Finder or Explorer onto the sidebar to add them as projects, with an "Add project" drop overlay matching the terminal drop affordance.
- Project swatch initials can now be saved in
solo.ymlasicon_initialsand sync back into Solo when the config is reloaded. - Projects now automatically display common favicon files from the project folder when no explicit
solo.ymlicon is configured.
- Todo lists can now be sorted by title from A to Z or Z to A, with numeric-aware ordering for plan prefixes such as
P1.2andP1.10. - Project and process row Add context menus now include Scratchpad and Todo creation actions.
- Scratchpad actions now include a native-confirmed delete option that permanently removes the current scratchpad after saving the latest draft.
- Scratchpad detail views now support
Cmd+F/Ctrl+Fsearch with reusable find chrome, Plate-powered highlights, active-match indication, and next/previous navigation that scrolls large scratchpads to the current match. - Terminal selections can now be turned into Scratchpads from the terminal context menu, preserving the exact selected text and using the first selected line as the Scratchpad title.
- Hotkey command
terminal.clearclears the active terminal pane and scrollback buffer when bound (unbound by default).
- Terminal settings now include a scroll wheel speed control for TUI apps such as Vim, less, and htop when they capture terminal scroll input.
- Terminal settings now let macOS users choose whether the left Option key, right Option key, both, or neither act as the terminal Meta key.
- Tool settings now include a default browser picker used when opening detected local service URLs from the process sidebar.
- Feedback can now remember an optional email address for future submissions when the user opts in.
- Demo projects now include a Workflow orchestration scratchpad that shows MCP, todos, scratchpads, timers, and worker-agent coordination patterns.
Cmd+Tnow boosts the currently focused agent runtime in the new-agent picker while keeping the other enabled agents available.- Agent session resume actions now distinguish direct last-session resumes from opening the session picker.
- HTTP and CLI project create/delete flows now share Solo's canonical import and deletion behavior, returning existing projects for duplicate paths and requiring explicit confirmation before stopping running processes during project deletion.
- MCP scratchpad and todo listings now paginate large inventories, improving responsiveness and memory use.
- Solo MCP
send_inputresponses now include idle wake-up timer guidance for bound agent callers that can receive timer-delivered follow-up turns. - Solo MCP timer delivery is now more reliable for agents with multiple sessions and across app restarts.
- Solo MCP now exposes
identify_sessionas the canonical session identity tool, with backwards-compatible aliases for prior tool names.
- Newly added projects now append after existing root projects instead of jumping to the top of the sidebar.
- Terminal output processing now handles styled, SGR-heavy, and CRLF-heavy output with less CPU, history-memory, and live-delta churn during busy terminal sessions.
- Terminal TUI scroll wheel speed now defaults to 3x and offers 5x and 6x options for users who want faster captured scrolling.
- Completing a todo now releases the completing actor's edit lock by default, with an option to preserve the lock when needed.
- Canonical todo listing now supports explicit sort orders, wired through MCP
todo_listand the local HTTP todo list API.
- Interface font scale now includes two additional high-end stops, extending the largest application UI size to 154%.
- macOS now labels Solo's WebKit helper processes in Activity Monitor, including showing the main web renderer as
Solo (Renderer)instead of the internal app URL.
- Copying visually soft-wrapped agent output now preserves soft wraps in the clipboard without applying the heuristic to normal command and terminal output.
- Terminal and agent input now disables browser autofill on the hidden IME textarea to avoid macOS SMS code suggestions appearing over focused panes.
- Processes spawned through the local HTTP API with a custom name now keep that name as the visible process label.
- HTTP API discovery now lists all available endpoints (including Todo create and complete), and Settings shows the same endpoint list.
- Raycast process lifecycle endpoints now return more accurate errors and stay in sync with Solo process start notifications.
- Timer stopwatch indicators now stay attached to timers owned by or routed to a process, including cross-project idle waits, without moving controls onto the watched target.
- Idle-triggered MCP timers now fire when a watched process exits or fails instead of waiting for the max wait deadline.
- MCP timer wake delivery is now more reliable across app restarts and during active typing, ensuring agents are prompted when their timer fires.
- Solo MCP process start, restart, and status now keep agent command metadata and live tool-type reporting in sync with the running process.
- Solo MCP
todo_updatenow accepts status changes so agents can move todos between open, in-progress, backlog, and completed states. - Solo MCP
send_inputnow capswait_msso long waits do not exceed MCP client request timeouts. - Solo MCP read-only and export calls no longer register the caller as a bound agent.
- Solo MCP
todo_updatenow rejects empty update requests instead of accepting no-op mutations. - Solo MCP
scratchpad_editnow accepts object targets for section and line-range edits. - Solo MCP help no longer surfaces KV tool guidance when KV tools are disabled.
- Solo MCP agent bootstrap guidance no longer recommends KV coordination tools when KV tools are disabled.
- Stopping, restarting, or deleting processes (including via
solo.ymlor project removal) now reliably releases todo locks, clears pending summaries, and cleans up stale process state. - Batch process lifecycle actions now report partial failures instead of hiding skipped or failed commands, and bulk command start/restart paths use the same lifecycle handling as individual process actions.
- Failed command starts now surface backend diagnostics in lifecycle toasts while preserving the failed process pane and terminal failure banner.
- Pressing
Ror choosing Restart on a stopped command now starts it, matching the visible command actions. - Process lifecycle APIs now return consistent not-found, permission, validation, and internal error responses, and stopping an already-stopped process through HTTP or CLI succeeds as an idempotent no-op.
- Adding a project now correctly recognizes duplicates when the same folder is added under different path forms such as symlinks or relative paths.
- Project-type detection now skips oversized and symlinked marker files so adding a project does not block on unexpectedly large or redirected config files.
- Sidebar project drop targets now only appear for dragged folders, so dragging files over process rows can activate the terminal without advertising "Add project."
- External project create, rename, and delete flows through MCP, HTTP, and the CLI now emit canonical project-list change events so the sidebar updates immediately.
- Creating a Todo or Scratchpad from sidebar/UI buttons now focuses the new item's title just like command palette creation.
- Creating a Todo or Scratchpad from the command palette now focuses the new item's title, and pressing
Tabfrom the title moves into the Markdown editor. - Todo title sorting now uses the canonical global title order instead of separately sorting within sidebar/status groupings.
- Markdown serialization now avoids WebKit-incompatible GFM autolink regexes while preserving GFM footnotes, tables, strikethrough, and task lists.
- Scratchpad and Todo markdown task lists now render as clickable checkboxes while numbered lists stay numbered.
- Archived scratchpads can now be restored from the scratchpad status control and archived scratchpad context menus.
- Todo detail query failures now show the backend error with a retry action instead of being reported as "Todo not found."
- Summarizer test results now render in an inline panel below the Test button, surfacing the full tool output for debugging instead of a truncated toast.
- Check for updates now shows clear feedback from the app menu and Account settings when Solo is already up to date or the update check fails.
- Saved MCP, Raycast API, and terminal compatibility settings are now honored consistently during startup and transport restarts.
- Triple-click terminal selection now selects only the clicked visual row instead of including wrapped continuation rows.
- Neovim Shift+printable keys (and similar modified printables) now produce the shifted character when the kitty keyboard protocol is active, instead of inserting the bare keycode.
- OpenCode now receives numpad digits and Enter as normal text in kitty keyboard mode, matching Ghostty's behavior.
- Terminal focus borders now remeasure after native window resize tools such as Moom settle the app layout, avoiding stale lines across panes.
- Terminal follow mode now clears stale
Jump to bottomindicators when an optimistic pause settles back at the live bottom. - Detected local service URLs now preserve HTTPS and custom local hostnames from process output when they match a bound port.
- Stopped terminal and agent panes without cached output now show a clear in-pane Start prompt instead of looking like a blank terminal.
- macOS blank terminals now handle Option+Backspace, Command+Backspace, Option+Left/Right, and Command+Left/Right like standard shell word and line editing shortcuts.
- macOS kitty-enabled agent terminals now treat Command+Backspace and Command+Delete as shell line-kill shortcuts instead of passing Super-modified delete keys through to the agent.
- macOS international keyboard layouts now type Option-generated characters such as
@and|in kitty-enabled agent terminals when "Use Option as Meta key" is off, without leaking unmatched kitty key-release events. - Chinese IME composition commits now type correctly in terminal and agent panes, including WebKit event orderings where the committed text arrives before
compositionend. - Terminal panes now recover automatically from internal errors instead of becoming stuck.
- Terminal image drops now copy supported image files into Solo's durable temp image directory before sending their paths to agents, and terminal
file://links now open only for local paths. - Terminal output batching now uses the lower-latency 16ms flush window again, reducing visible typing delay in interactive terminal apps.
- A pane producing runaway output is now isolated so it no longer blanks or destabilizes other terminal panes.
- Solo's
sudoandsshcompatibility wrappers no longer recursively invoke themselves when Solo's wrapper directory is first inPATH.
- Sidebar selection and focus indicators now remeasure after sidebar width, font scale, DOM, and viewport changes so focus borders stay aligned after resizing.
- Sidebar process rows now start drag-reordering on the first click-and-hold when the terminal is focused, without stealing terminal focus during the drag.
- macOS native file and folder pickers now treat rare nil
NSOpenPanelcreation as dialog cancellation instead of crashing Solo. - macOS file and folder drag/drop now keeps native path delivery enabled while tolerating malformed pasteboard payloads that previously crashed the WebKit drag/drop bridge.
- The license title bar now handles malformed or partially missing license status payloads without crashing.
- Closing Solo's main window with the macOS red close button now hides the app instead of quitting, while explicit Quit still exits through the running-process confirmation flow.
- Pressing
Cmd+Hon macOS now hides Solo like a standard Mac app; on Windows and Linux,Ctrl+Hminimizes the window. - Pressing
Cmd+Win Settings now goes back through navigation history instead of falling through to the native window close action. - Fixed a render loop that could occur during hidden-window terminal updates.
- Hardened a number of edge cases reported through crash diagnostics, including window lifecycle, PTY cleanup, WebGL initialization, terminal input after process switches, and Markdown rendering.
- Timer pause, resume, cancel, and fire-now failures now surface the backend error message in the toast body instead of a generic "Failed to update timer."
- Quick jump now matches nested recent targets, so searches like
papercan surface Scratchpads such as0.7.0 Papercuts.