Back to all releases

v0.89.0

Platform

// July 17, 2026

Keep agents working through outages, assign plugins to specific people, and track skills in a registry

Control-plane hiccups no longer have to stop your developers: org admins can now choose to fail open during outages, and hook events captured while offline are spooled locally and replayed in order once connectivity returns — nothing is lost, and explicit denies still block. Plugins also get real audiences: assign each one to everyone, specific roles, individual members, or email addresses, and the device agent delivers it only to those people. A new Skills registry rounds out the release, giving projects a versioned home for skill manifests.

Features

  • Fail open during outages #4204 - A new "Fail Open During Outages" setting on the Logging & Telemetry page lets org admins decide whether agent tool calls proceed or block when Speakeasy is unreachable. Explicit deny decisions and broken credentials always block, and the setting replaces the old Observability Mode toggle. (Author: @daviddanialy)
  • Offline event capture and replay #4232 - Hook events that can't be delivered during an outage now buffer locally on the device and replay automatically on recovery, with a 15-day dedupe window so competing drains never double-count #4238. Replayed messages are flagged on transcripts and risk results so retroactive findings are distinguishable from live ones #4246. (Author: @daviddanialy)
  • Plugin assignments #4095 - Organizations using the device agent can choose who receives each plugin: an org-wide default, specific roles, individual members, or email addresses. New plugins default to everyone, so nothing stops being delivered until you narrow the audience. (Author: @bradcypert)
  • Skills registry #4258 - A new Skills page at /skills records, inspects, compares, and archives project skill manifests with immutable canonical versions, backed by a project-scoped management API #4254 and new project-selectable read and write permissions in RBAC role management #4224. (Author: @danielkov)
  • Readable non-secret environment values #4157 - Environment entries can be marked non-secret so their values stay viewable, copyable, and editable after save #4228. Secret entries keep today's encrypt-and-redact behavior, and everything defaults to secret. (Author: @walker-tx)
  • Catalog installs are remote MCP servers #4180 - The catalog "Add to Project" flow now installs each selected endpoint as a remote MCP server with OAuth auto-configuration when the upstream supports dynamic client registration, replacing the heavier deployment and toolset pipeline. (Author: @qstearns)
  • Device agent setup in onboarding #4235 - Onboarding now includes device agent setup instructions, and the device agent page has been revamped to make rollout easier. (Author: @adaam2)
  • Right-click context menus everywhere #4210 - Every table row, card, and list entry now has a right-click context menu mirroring its "⋯" menu, and sources table rows are real links with native open-in-new-tab and copy-link. (Author: @simplesagar)
  • See the live published plugin version #4088 - The plugin detail page shows the version currently live in the published marketplace manifests, so it can be compared directly against what installed clients like Claude Code report when debugging sync lag. (Author: @claude)
  • Dashboard links unfurl in Slack #4244 - Dashboard links shared in Slack now unfurl with the Speakeasy logo and a humanized page title instead of a bare URL. (Author: @simplesagar)
  • One-domain hook installs for locked-down environments #4191 - Observability hooks now install through a pinned, checksum-verified binary downloaded from your Speakeasy server domain — the same domain hooks already send telemetry to — so restricted or sandboxed developer environments only need that one domain allowed. (Author: @danielkov)
  • Hook decision metrics #4282 - Every hooks endpoint now tags its duration metric with the allow, deny, or ask verdict, so decision rates can be charted independently of processing outcomes. (Author: @daviddanialy)

Bug fixes

  • Company-credential sessions count as team spend #4259 - Claude sessions authenticated with an API key, gateway, Bedrock, or Vertex are now classified as team in the account-type cost breakdown instead of falling into the "(unset)" bucket. (Author: @daviddanialy)
  • Transcripts keep conversation order after replays #4277 - Chat messages replayed from a device's offline spool are stored at their original timestamps, so backlog drained after an outage no longer appears out of order in transcripts. (Author: @daviddanialy)
  • No more duplicate observability plugins on the device agent #4278 - The device agent now only receives marketplaces for the org's default project plus projects the caller is assigned to, instead of one observability plugin per published project in the org. (Author: @bradcypert)
Sagar Batchu
Sagar Batchu
View on GitHub