Released April 9, 2026.
This release made audio and video transcription dependable, gave developers explicit commands for refreshing and revoking their CLI credentials, and fixed a run of problems that stopped media uploads from being processed. It also tidied up the Team Members screen and the developer installer.
New features
Transcribe recordings of any length
Before this release, transcription failed on anything longer than about a minute: the recording was cut into pieces that could not be decoded. Videos are now transcribed segment by segment from the encoded stream, so a long recording transcribes as reliably as a short one, and faster. Uploaded audio files are transcribed in a single pass.
There is nothing to switch on. Upload a video or an audio file and the transcript appears on the asset once processing finishes.
Learn more: Transcription and Text Extraction.
Refresh or revoke your CLI credentials
Until this release, the only way to refresh the GitLab tokens your site checkout depends on was to rerun the installer. Two new commands make it a deliberate step instead, with very different levels of disruption.
# Routine: reissue this site's GitLab tokens, stay signed in
leed auth rotate
# Incident response: reissue the tokens and revoke your CMS session
leed auth reset
leed auth reset --all-sessionsleed auth rotate reissues the tokens used by the package registry and your site’s content repository, and leaves your CMS login session alone. Use it when a token is failing or due for a refresh. leed auth reset does the same and also signs you out, so the next leed command asks you to authenticate again. Use it if a laptop was lost or compromised. Add --all-sessions to revoke your sessions on other devices too. Both commands work on the site you run them from, so run them from inside your site folder.
Release 34 made both commands refuse to run unattended unless you pass --yes.
Learn more: leed auth commands.
Fixes
Media uploads and processing
- Uploading an audio, video or document asset no longer fails with a server error. A bug introduced with the new media pipeline had stopped every upload from starting its processing.
- Audio and document processing now finds the file you uploaded. A filename mismatch had made processing fail immediately after upload.
- Audio transcription no longer fails with a validation error on every upload. Audio files now transcribe on the current speech model.
- Video uploads now start transcription automatically once encoding finishes. Previously a video was never queued for transcription.
- Text extracted from a document no longer starts with an internal ID as its first heading. It now starts with the document’s own filename.
Learn more: Transcription and Text Extraction.
Team Members
- Changing a team member’s role, for example from Content Publisher to Content Approver, no longer marks them as having unpublished changes. The “User Saved. Publish to use.” message now appears only for edits that affect your public site.
- Access checkboxes such as Developer are now disabled when the member’s role already grants that access. Before, a Content Publisher’s Developer box could be unticked even though their role kept the access, so the change did nothing.
Learn more: Managing Team Members, Billing and Developer Access.
Developer installer
- The installer no longer exits silently partway through on a fresh Mac.
- Rerunning the installer now replaces an outdated
@leedregistry entry in~/.bunfig.tomlinstead of keeping it. - Rerunning the installer reuses your saved sign-in instead of asking you to authenticate every time.
- Developer credentials that are close to expiring are now reissued the next time they are used, instead of leaving installs stuck on an expired token.
- Opening Developer Setup in the profile menu no longer creates GitLab tokens in the background.
Learn more: Installing the Leed CLI.
Improvements
More reliable background data upgrades
Behind-the-scenes data upgrades now run separately for each workspace. If one workspace’s upgrade fails, the others finish normally and the failed one waits to be retried, instead of the whole upgrade retrying over and over.
Cleaner document extraction
Audio and document assets no longer carry the file extension inside their internal ID. This removed the cause of the filename mismatch fixed above, and stopped document extraction from producing a doubled extension in its output.
Learn more: Transcription and Text Extraction.
Builds start more directly after a push
When you run leed site push, the CMS now starts the build itself, with fewer steps between your push and the build starting. Forced rebuilds that carry no new files are now supported from start to finish as well.
Learn more: What Happens After You Push.