Bring Your LM 2026.09.12

Build 17 · 2026-09-12

View as Markdown

This release is about telling things apart. Providers can wear an icon now, and that icon follows the provider onto every screen that names it, so several endpoints of one kind stop reading alike. Tools and providers can be starred to the top of their lists, and the lists agree with their pickers on what order things come in. Pictures a tool fetches appear in the conversation and reach the model. And a provider rename saves again, which it had quietly not been doing.

Providers wear an icon

Two providers of the same kind used to look identical in every list: same glyph, similar name, nothing to say which endpoint an agent was talking to. The provider form now has an icon field, the same one tools have: a glyph, an emoji, a link, or the mark the endpoint's own site publishes, found from the base URL. A provider without an icon looks exactly as it did.

Once set, the icon goes wherever the provider is named:

A provider that arrived through sync from a newer version of the app is marked as unusable wherever it is listed, instead of drawn as a working endpoint of a kind it never was.

Tool icons fill in the places that still lacked them: the agent page's tool list, the tool kinds list when creating a tool, the tool test and capture screens, and the tool rows in a conversation's spend breakdown.

Picking an icon

The icon picker is a full-screen page now, like the model and tool pickers: Cancel top-left, Use icon top-right, a live preview of what will be stored, and the glyph and emoji catalogs get the whole screen to scroll in. Its four sources stay on one row on a phone, and the back gesture closes it rather than the page under it.

Find automatically no longer picks one mark and discards the rest. It shows every icon the endpoint's host publishes, and the ones from the domain above it and the domain it is registered under, each labelled with where it came from and how large it is; tap one to use it, and the top-ranked one is filled in for you as before. A provider on a local address is no longer searched for at a domain that does not exist. Searching leaves nothing on the device unless you accept a mark, and a multi-size .ico is now drawn at its largest size instead of cycling between sizes.

An agent with the provider tools can set or clear a provider's icon the way it already could a tool's, and can search an address for the marks published there and read their sizes before choosing. It still cannot change a provider's address or key.

Stars, and lists that agree with their pickers

Tap the star on a tool's or a provider's row and it heads both its screen and the picker that offers it. The star follows the tool across workspaces and the provider to your other devices. A starred tool carries its star in the "Add tools" picker too.

Below the starred rows, the Tools and Providers screens and their pickers now share one order, newest first, with the tools that ship with the app grouped at the end, so a thing sits in the same place wherever you meet it. An agent listing your providers names them in that same order.

Around the lists:

Pictures in the conversation

A picture a tool fetched used to be encoded into text, which drew a placeholder for you and spent tokens on bytes no model can read. It now appears in the conversation as an image, and the agent can actually look at it. There is also a fetch tool for an image at a URL you give the agent, so it can read a chart, screenshot or diagram that is not behind a configured endpoint; its test screen shows the picture rather than its bytes.

Queued messages can be taken back

A message typed while the assistant was still answering could only be cancelled by deleting it after it had already started the next turn. A "Queued" message now shows a ✕ that drops it from the queue; once the assistant picks it up, the ✕ disappears.

Two forms that were losing edits

Renaming a provider and saving did not rename it, on any device with sync peers, and had not for at least two releases: the form rebuilt around the stored values and wrote those back. Every field on the provider form now saves what was typed. The tool create and edit forms had the same flaw when anything changed in the background while they were open; they keep what is on screen until Save writes it.

On-device models

Elsewhere