Release 40

Released October 16, 2026.

This release is mostly about trust in what you write. Pages now keep their content and formatting exactly through every edit, save and publish, and the published site shows the same structure the editor does. The leed CLI gains commands to read a page and mark it current, and it keeps you signed in for 90 days from your last use.

New features

Read a page and mark it current from the CLI

Each page can carry a source id: the commit its content was last checked against, which a release pipeline uses to schedule exactly the pages it changed. The leed CLI can now write it. leed page create and leed page update take --source-id, which records the commit in the same write as the content. The new leed page stamp marks one or more pages as current with a commit without touching anything else, so a page you reviewed and found correct can be marked up to date without being edited, and a published page stays published.

The new leed page get reads a page’s content from the CLI. On its own it prints the page’s Markdown body, ready to save to a file, edit and send back with leed page update. With --json it also returns the page’s metadata, its source id and the block anchors that leed page update --block edits.

leed page get <pageId> > page.md
leed page update <pageId> --file page.md --source-id <commit>
leed page stamp <pageId> <pageId> --source-id <commit>

Stamping a page that already carries the same source id changes nothing and says so, and leed page stamp --dry-run shows what it would write without writing it. leed cli search now also matches the arguments a command takes, so a search for page id finds the commands that take a page id.

Learn more: CLI Command Reference.

Fixes

Pages keep their content and formatting through every save

Saving a page in the editor and reading it back could change or lose content: block quotes, tables, task lists, embeds, images, links and inline formatting could shift or disappear, and the published site could read the same Markdown differently from the editor. Pages now keep their content and formatting exactly when they are edited, saved and published. The first save settles a page into the form the editor writes, and later saves, reads and publishes change nothing further. The published site renders the same structure the editor shows, and search covers your page text accurately.

A few rules are now firm. A code block or table inside a list item is moved to just after the list, in order, with nothing lost. Raw HTML in a page body no longer stops an import; it is kept as text. A numbered list keeps its starting number, in the editor and on the site.

Learn more: Fidelity and Unsupported Syntax.

Tables keep their alignment, merged cells and classes

Right- and center-aligned columns used to fall back to left alignment on save, and merged cells came apart. Column alignment, cells that span several columns or rows, and cell classes are now kept through every save, and the site renders the same grid the editor shows. You can set a column’s alignment in the editor: put the cursor in the column, open the table menu and choose Align left, Align center or Align right. Tables built with Merge cells and Split cell save and reload with the same layout.

Two other table fixes: a cell containing a |, in plain text or in code, no longer splits its row, and a line break inside a cell no longer adds a row to the table.

Learn more: Tables.

Braces and brackets in titles and alt text

Alerts, collapsible sections and tabs whose titles contain { could turn into plain paragraphs when the page was edited or rebuilt, and an image whose alt text held a square bracket could be lost. All of these now keep their formatting. Titles on alerts, tabs and collapsible sections now display exactly the text you typed, including any HTML or & codes.

Learn more: Collapsible Sections, Images and Figures.

Clicking into a link in the page editor now places your cursor where you clicked, instead of at the end of the link. Editing a link with Ctrl-K now shows its existing destination, whether it points at another page, an external site or a document, and fills in the whole link text. Applying the edit changes the whole link, so a link is never split in two, and it keeps settings the dialog doesn’t show, such as opening in a new tab. Hovering an internal link now shows the title of the page it points to.

Learn more: Links and the Link Picker.

The CLI keeps you signed in

A leed CLI session used to last only seven days, and commands run at the same time could sign each other out partway through a task. A CLI session now lasts 90 days from the last time you use it and renews itself as you work. Commands run in parallel share one session instead of replacing each other’s. Browser sessions still last seven days, and signing out or revoking a session still ends it at once.

Learn more: CLI Authentication.

Large scheduled releases publish in one job

When many pages were scheduled for the same time, Leed could start several overlapping publish jobs for the same pages. Each workspace now runs one publish job at a time, and pages that come due while it runs go out together in the next job. Large releases go live sooner and more reliably.

Learn more: Scheduling and Automatic Publishing.

A menu folder whose pages were all unpublished still appeared on your site as an empty heading. It now stays hidden, and shows up on its own once its first page is published, so you can build navigation ahead of the content. A link whose child pages are all unpublished shows as a plain link, with no empty submenu.

Learn more: Menus and Navigation.

The AI client sign-in screen describes what clients can do

The screen where you approve an AI client said it could not publish or delete content. It now says that a connected client can publish, schedule and delete, and that the AI client must explicitly confirm each of those actions before it runs.

Learn more: Connecting to the Operator MCP.

Fixes from production feedback

  • New menus no longer vanish right after you create them.
  • If you signed up free and are on a Starter trial, Billing now shows it as your current plan and lets you check out a paid plan.
  • The page tree highlights the page you’re editing.
  • Favicons are cropped square on upload, SVG files included.
  • Your profile picture falls back to the photo from your sign-in account, then to your initials.
  • The AI writing shortcut explains when it isn’t available to you, and keeps your prompt with an error message when a suggestion can’t be generated.
ESC