Back to all releases

v0.91.0

Platform

// July 21, 2026

Capture the skills your coding agents actually use, then curate and redistribute them

Skills stop being a manually maintained registry: the hooks now observe skills as your coding agents activate them (including in Cursor), pull in their manifest content, and record them with a summary and version. From there you can rename and edit captured skills, attach them to assistants, and ship the best ones back out to your team. This release also flags MCP servers nobody is calling, warns billing contacts before managed AI credits run out, and attributes cost to the right device even when a session carries no user identity.

Features

  • Capture skills from live agent sessions #4341 - The hooks detect when a coding agent activates a skill — including Cursor skill activations — and upload the manifest content, so captured skills appear in the registry with a real summary and version instead of a name-only entry. (Author: @danielkov)
  • Curate captured skills #4355 - Rename and edit skills that were captured automatically, with immutable version lineage preserved so you can always trace what changed. (Author: @danielkov)
  • Attach skills to assistants #4334 - Skills can now be distributed to assistants, not just plugins. Assistants expose the skills they carry, and each skill's detail page reports which assistants actively use it. (Author: @danielkov)
  • Spot inactive MCP servers at a glance #4309 - The Distribute MCP listing now flags servers that have never received a tool call and warns when a server has been silent for two weeks, so you can retire or fix servers nobody is using. (Author: @mfbx9da4)
  • Credit warnings before managed AI usage hits its cap #4321 - Organization billing contacts now get an email as managed OpenRouter credit usage crosses 50%, 75%, 90%, and 100% of the monthly cap, for both the chat key and the internal key, so credits never run out by surprise. (Author: @daviddanialy)
  • Attribute team spend to devices, not a black hole #4376 - Sessions authenticated with a company API key carry no user email, so their spend used to pool into one bucket. The cost breakdown now falls back to the device hostname reported by the hooks, and the remaining shared spend is labeled "Team-wide API Usage" instead of "(unset)". (Author: @daviddanialy)
  • Chat with tunneled MCP servers in the Playground #4329 - Tunneled MCP servers can now be selected and exercised in the Playground (behind the gram-tunneled-mcp flag), so you can test a locally tunneled server end to end before distributing it. (Author: @svadrutk)
  • Enroll device agents with per-user keys #3806 - A new token exchange trades an org-scoped agent key plus a verified user email for a long-lived, per-user key with a narrower scope. Each device gets its own key, so enrolling a new machine never breaks a user's other devices. (Author: @bradcypert)
  • Issuer setup documentation on the New Client sheet #4093 - Remote identity issuers can link their client setup documentation, shown alongside the provider's discovered service documentation when creating a client — so customers can register their own OAuth client and own its credentials and rate limits. (Author: @bflad)
  • Ask the assistant what shipped this week #4354 - The Project Assistant can now read the public changelog and answer questions about recent platform and dashboard releases, with a ready-made "What's shipped this week?" suggestion on the chat landing page (#4374). (Author: @simplesagar)
  • Recommended detection scopes for risk policies #4370 - Risk policies now surface recommended detection scopes through the management API, with per-policy, per-category overrides, so tuning where a detector looks no longer requires hand-written expressions. (Author: @vishalg0wda)
  • Search cost breakdowns #4356 - A search box on the costs breakdown filters the visible rows or sessions instantly, without losing your breakdown-axis selection. (Author: @simplesagar)
  • Search within a plugin #4357 - The plugin detail page gains a search bar that filters its MCP servers, assignments, and skills. (Author: @simplesagar)
  • Project homepage metrics load faster and match the Costs page #4371 - The homepage spend and session widgets now read from the same pre-aggregated source as the Costs page, so they load quickly and the two pages always agree. (Author: @subomi)
  • Consistent provider and surface labels #4241 - Provider names and product-surface labels are normalized across reporting, agent sessions, tool logs, and cost views, so Claude desktop and web sessions group under one canonical label. (Author: @disintegrator)
  • Device Agent install page polish #4372 - The install page adds an MDM rollout recommendation and drops the preview badges now that the Device Agent is generally available. (Author: @bradcypert)
  • Prompt scanner pub/sub handlers #4223 - Internal groundwork that moves prompt scanning onto asynchronous pub/sub processing. (Author: @vishalg0wda)

Bug fixes

  • Hidden Account Type breakdown restored in the cost explorer #4383 - Drilled slices that mix classified and unclassified spend now show the Account Type breakdown, with unclassified spend surfaced as a first-class "(unset)" group instead of disappearing. (Author: @daviddanialy)
  • Policy scope traffic preview no longer crashes #4398 - The traffic preview handled matched messages that produced no highlight spans by crashing; it now renders them cleanly. (Author: @vishalg0wda)
  • Dashboard console warnings cleaned up #4330 - Fixes React warnings from nested log controls, duplicate risk-rule keys, and command-palette focus restoration. (Author: @alx-xo)
Sagar Batchu
Sagar Batchu
View on GitHub