Skip to content

Circle 1.13.0

Choose a tag to compare

@github-actions github-actions released this 28 Oct 22:45
· 290 commits to main since this release

Breaking changes

  • The bundled Hub integration has been removed. Circle no longer ships the hub extension, its /hub commands or its desktop Hub and platform pages. Its saved extension data and secrets are left on disk; removal does not revoke tokens at the service that issued them.
  • MCP tool approval follows the server's annotations by default. A tool the server marks read-only can run without asking. A call that sends a local file or a secret's value follows the normal approval rules and is refused in read-only and plan mode. Set trust_annotations: false on a server to treat its tools as unannotated, as in 1.12.0; the session's approval mode still applies. Only configure servers you trust.
  • Existing skill outputs no longer receive a separate overwrite approval. In accept-edits mode, changes to files inside the workspace can proceed without a card even when they are existing skill-run outputs.

Added

  • Headless runs can connect MCP servers. Print, line and RPC modes load configured MCP servers before the first prompt when started with --extensions, alongside extensions. Server instructions are available from the first turn, and tools follow the same approval, cancellation and redaction rules as in the full-screen interface.
  • MCP headers can use a saved secret. Configure ${secret:NAME} in an HTTP server's headers instead of writing the value in settings; Circle substitutes it when connecting and redacts it where the server quotes it back.
  • MCP tools can take local files. For a tool that declares a base64 file argument, Circle reads the named file under its normal file-access rules and shows its path, size and digest on the approval card before sending it.
  • Circle can save a device profile. The terminal_profile_save tool saves a device's address, port, user and sign-in reference; a password is stored by the name of a saved secret, never by its value.

Changed

  • Desktop settings open over your work. Settings and capability management are collected in one searchable dialog, with a simpler sidebar and direct links to each group. Closing settings returns to the view and keyboard focus you were using.
  • Some MCP file calls can reuse a result. When a server marks a tool idempotent, repeated calls with the same file contents and other arguments can return an earlier successful result until Circle sends a call that may change that server. Changes by other clients are not observed; set trust_annotations: false to send every call.
  • Routine hook allows stay quiet by default. New tool results no longer carry the routine allow prefix, and older prefixes are hidden in the interface without changing stored history. Set show_hook_allow to show routine allow notices; denials, questions, failures and after-tool output remain visible.

Fixed

  • Browser shortcuts close the active tab. Closing a newly opened browser tab keeps the page you were already using, even when the interface has not yet caught up with the new tab.
  • The changes list catches up after a slow Git read. Reopening the list, or a change arriving, while Git was still answering could leave it showing the older state.
  • The work drawer's controls stay visible in a narrow window; the conversation title is shortened instead.
  • The sidebar keeps its position while sessions move. When the list has room to scroll, the row you were looking at stays in place even if a scroll notification is still pending.
  • The editor uses its updated HTML sanitizer. The application now uses the patched sanitizer in the editor itself, as well as in its dependency list.
  • An approved SSH host key resumes the paused login. Rejecting a key closes the paused connection, and a connection that has already ended starts a fresh login instead.
  • Grep reports files it did not search. Files over the size limit, non-UTF-8 files and unreadable files are counted in the result, so a search with no matches no longer implies they were searched. Literal ASCII searches also avoid decoding files that cannot match.

Known issue in 1.13.0

  • A desktop control can ignore the first click after its panel closes. If a tooltip is showing when a press closes the panel before the mouse is released, the next activation of that control can be missed. Activate it again. The confirmed issue and its fix are tracked in #352.

Install

macOS and Linux:

curl -fsSL https://raw.githubusercontent.com/circle-platforms/circle/v1.13.0/install.sh | CIRCLE_VERSION=1.13.0 bash

Windows, in PowerShell:

$env:CIRCLE_VERSION = '1.13.0'; irm https://raw.githubusercontent.com/circle-platforms/circle/v1.13.0/install.ps1 | iex

Already installed? Run circle update.

Desktop application

System File
macOS, Apple silicon circle-desktop-1.13.0-darwin-arm64.dmg
macOS, Intel circle-desktop-1.13.0-darwin-x64.dmg
Windows x64 circle-desktop-1.13.0-windows-x64.msi
Linux x64 circle-desktop-1.13.0-linux-x64.tar.gz

It is not signed by Apple or Microsoft. On macOS, drag Circle to Applications; the first time, open System Settings → Privacy & Security and click Open Anyway. On Windows, open the .msi (if SmartScreen stops it, click More info, then Run anyway) and allow it to make changes: it installs Circle into C:\Program Files\Circle with a Start menu entry, and Settings → Apps → Installed apps removes it again. On Linux, quit Circle, delete the old Circle-linux-x64 folder, then unpack this archive (it always unpacks as that folder name, so unpacking beside an existing one collides, and unpacking onto the old files drops setuid). Then run sudo chown root:root Circle-linux-x64/chrome-sandbox && sudo chmod 4755 Circle-linux-x64/chrome-sandbox, or Circle will not start, and start Circle-linux-x64/Circle. The steps are in Installation. It keeps its own data folder, apart from ~/.circle. On macOS and Windows it updates itself: settings → about → check now, then update and restart to update. Versions up to 1.2.0 cannot: install this file over them once. Circle 1.6.0 and the published 1.7.4 need this manual Linux update once; after that, check now replaces a folder it can write, and stops before starting again until chrome-sandbox belongs to root. Otherwise it opens this page and shows those steps.