Sanity Studio v5.14.0: Shareable release links, improved validation context, and stability fixes across Studio

This release adds shareable release links, improves Studio reliability on unstable networks, fixes validation context inconsistencies, and resolves several crashes and display issues across the editor interface.

Show agent bundles as “Proposed changes”

Content agent bundle versions now show as "Proposed changes" instead of raw IDs like agent-aBcXyZ. Other users' bundles are hidden from the UI.

Easier sharing of content releases

You can now click the share icon on a release for quick access to a copy-able link to the release, the release ID, or release title.

Improved crop/hotspot details

The Hotspot and Crop tool now display the dimensions of the crop area in pixels.

Shoutout to @fvieira for the suggestion, and @wotan-allfather for the initial implementation ❤️

Adds currentUser to validation context

Adds currentUser to the validation context. Fixes an issue where context.currentUser and context.hidden on the validation property in a schema was inconsistent and could return the wrong values.

🐛 Notable bugfixes and improvements

Fixes an issue where adding a filter to the global search when a field in the schema used useRouter (or similar) would cause the studio to crash.

Improved Studio editing reliability when operating under unstable or intermittent network conditions.

Restores fallback to schema icon when media is omitted from preview.prepare(). To opt out of the schema icon, return media: null or media: false.

When closing the tasks sidebar, params are now correctly removed from the URL to accurately reflect the application state.

Fixes an issue where localStorage deprecation warnings would be printed when running certain CLI commands using Node.js v25.

Fixes an issue where on narrower screens the list of releases would have multiple scrollbars.

Removed a noisy console.warn about hotkeys stability that fired on every render in the Portable Text input.

Fixes regression from v4.22.0 where operations.delete.execute() called without arguments caused a crash in custom components or document actions.

Duplicating or copying an array item now regenerates _key values for all nested items, not just the top-level item.

Fixes an issue when rendering group validation for nested fields in the group tab.

Adds rich diff previews when inspecting changes in cross dataset reference fields.

Fixes issue where a cross dataset reference input in a dialog was not navigating and instead closed the dialog

Fixes issue where the inspector dialog could sometimes be behind the object editing dialog.