Repository navigation
dashboard@0.129.0
·
1343 commits
to main
since this release
Minor Changes
- 8adb1c6: Show and edit a remote identity provider's scope override, warn wherever a client's scopes are edited that the override makes them inert, and let platform admins see, toggle and migrate remote session clients that run in compatibility mode with the legacy callback URL.
- 0119db3: Add an Organization values card to the Device Agent Setup tab with copy buttons for
org_slugandorg_token, so admins can get both without opening a platform walkthrough. Once an agent token exists, the button to mint one now reads "Re-generate token" and creates an additional token instead of rotating: tokens already deployed to devices keep working until they are revoked under Settings → API Keys. - c5bf7c0: Add a Ranked chart type to Explore: whole-window results drawn as the horizontal bars used on MCP & Tools, one bar per group, largest first, ranked by the ordered measure.
- 1afaeeb: Risk Events and Watchdog show findings from MCP tool calls with their server, tool, outcome and user instead of an untitled session.
- c52d7b8: Let admins configure MCP-scoped guardrails where servers are created and edited: an opt-in Guardrails section when adding a remote or tunneled server, a skippable Guardrails step in the catalog install, and a Guardrails tab on the MCP server page listing scoped and inherited policies and recent risk events. Gated behind the MCP-scoped policies flag.
- e0aa320: MCP-scoped risk policies can now target Gram's built-in Platform MCP toolsets and their tools.
- b0e113c: Add an MCP server filter with per-server finding counts to Risk Events and Watchdog, a Server group-by mode and server/tool line on Watchdog signals, and show the tool and enforcement outcome on Risk Events rows. Gated behind the MCP-scoped policies flag, except the MCP server filter now being pinned on Risk Events.
Patch Changes
- 053f3be: The Access Hub's forms and lists read more easily. Registering a platform and allowing a machine now open in a side pane instead of a dialog, and the machine pane admits under the platform whose page opened it rather than asking for an issuer. Both lists gain a full-width search in place of tag buttons, so a platform or machine is found by typing part of its name, URL, subject, label, tag or agent. Withdrawing a machine or stopping trust in a platform now asks the operator to type the subject or issuer URL first, and says what the action does and does not revoke. The platform tab is renamed Custom, the organization badge and Admitted by column are gone now that platforms are organization-wide, and a machine's label leads its row.
- 3aec030: MCP server settings no longer show an attached identity provider as missing when the platform catalog is large. The identity provider picker now searches on the server and loads more on demand, and the issuer listing accepts
searchandupstream_hostfilters. - 4d02f1b: The Identity provider menu on remote MCP server settings is searchable and lists each tier (project, organization, platform) with its own "more" row, so every provider can be picked however large the platform catalog grows. The Remote Identity Providers page lists the organization's own providers in full and pages the platform catalog separately. Both issuer listings accept a
tierfilter. - 053f3be: Registering a workload issuer no longer asks whether wildcard admission is allowed. The contract defaults it to on, and the admit dialog states the consequence where a wildcard is actually written instead — naming the subjects the rule admits and the agent they would inherit. Whether a wildcard is sound is a judgement about the operator's own platform, and it is better served at the point of decision than by a setup-time question asked before they have a rule in mind. The issuer field remains in the API, where clearing it still makes every wildcard rule under that issuer inert immediately.
- 68b61fb: Organization admins can save the device agent fleet configuration again after a Speakeasy administrator has set the update channel or blocked versions. Saving previously failed with "update_channel can only be set by a platform administrator".
- 053f3be: Admitting a workload is now a single field. Neither dialog asks about wildcards: registering an issuer no longer offers a permission switch, and admitting a subject no longer offers a Match control. A subject ending in
*is a wildcard rule, anything else is exact, and the dialog states what a wildcard would admit — which subjects, and the agent each would inherit — at the point it is written. Lossless, because an exact subject may never contain a*, so there is no value this could misread. Where an issuer has wildcard admission turned off, a rule stating one is refused with the reason under the field. - 7e67148: MCP-scoped risk policies now support flag and block actions only. The policy editor prevents unsupported actions before save.
- bebb567: Private network cleanup keeps retrying through longer outages, and shows "Cleanup blocked" with next steps when Tailscale rejects the saved OAuth client instead of staying on "Cleaning up" indefinitely.
- e8e8f96: Gram now works end to end on extra platform hosts such as
ai.speakeasy.com. Platform MCP advertises, issues, and accepts tokens for the host it is used on. The MCP install page login, the Stripe billing portal, and Polar checkout return to that host. Tunneled MCP agent setup shows the real tunnel gateway, the explore demo link stays on the current host, and the custom domain CNAME fallback points at the right target. - b385d01: More of Gram now follows the platform host you use it on, such as
ai.speakeasy.com. Stripe Checkout returns you to the host you started on. Slack unfurls dashboard links on every platform host, and new Slack apps register all first-party hosts as unfurl domains. Agent setup copy (OTLP endpoints and domain allowlists) names the host you are on, and allowlists keepapp.getgram.aiwhere plugin hooks and the device agent still send. - 61161fd: Risk Events now keeps showing findings from disabled policies, marked inactive, so turning a policy off no longer empties the page. Findings from MCP-scoped policies now always appear, including locally.
- a9660cf: Add Observability plugin credential rotation. Organization admins can mint a replacement hooks-scoped ingest key from the Plugins page, choosing whether the previous key is revoked immediately or kept valid for a 7-day grace window, without re-downloading the plugin or deleting keys on the Keys page. Rotation republishes the marketplace's observability plugin when the organization is eligible, and leaves consumer MCP keys untouched.
- 5e3fd6b: Remote MCP servers that clients connect to directly can be saved without first passing the connectivity check, since those servers are often unreachable from our infrastructure.
- 053f3be: Allowed machines can carry tags. The Allow a machine pane takes optional tags, stored on the admission with the same limits as a trusted platform's tags, and the platform page shows them under each machine. Searching and filtering by tag will follow.
- 053f3be: Trusted platforms in the Access Hub can carry a description. Registering a platform takes an optional description of up to 500 characters, and each platform card shows it in place of the issuer URL, which moves down beside the signing keys. A URL rarely tells an administrator which platform they are looking at; a sentence in their own words does.