Nix distribution note (added August 31, 2026): the repository-owned flake was retired on
mainin commit49cc51058fd76ec825fcd6a9f684f8d3a138fca3via PR #7644. If you still need the last repository-shipped flake, pin to tagopen-design-v0.21.1(commitfbd4d48ebe21b20f4a2faaad0ad5e53aaeb1dc4b) or an earlier tag instead of updating againstmain.
🌟 Codename: Community First: No Login Required
🔓 Open Design has always been rooted in the community. Now we’re returning to
that promise: no account required. Choose a local CLI or BYOK directly from
Home and start creating. Open Design Cloud is still available whenever you need
it.
🔥 Highlights
-
🔓 Start without signing in. Open Design no longer requires a Cloud
account before you can begin creating. (#7381) Thanks @Siri-Ray. -
🧰 Use your own tools from Home. Choose an existing local CLI or connect
your preferred model provider through BYOK. (#7381) Thanks @Siri-Ray. -
🧪 Introducing Open Design Labs. Enable Open Design Harness in Settings to
try a new generation strategy and create more polished results. More
experiments are on the way. (#7445, #7514) Thanks @lefarcen.
📥 Download: Tag
open-design-v0.21.1
Platform Architecture Asset macOS Apple Silicon DMG macOS Intel DMG Windows x64 Installer
✨ Added
Creation and experiments
-
🧪 Design Harness is now one switch away. Open Design Labs has a home in
Settings, where you can opt into the latest generation strategy without
installing another build or reaching for a terminal. The switch explains what
it covers, saves across restarts and tells you when another policy owns the
choice. (#7445) -
🖼️ Real subjects get real imagery. When a prototype names a person,
product, artwork, event or place, Open Design now searches for and uses the
actual referent instead of inventing a look-alike. Images keep their natural
proportions and full frame instead of being forced into a leftover
placeholder crop. (#7436) -
📱 OD Next understands the bones of a mobile interface. Calendars, stats,
settings rows, top bars, bottom navigation, images and confirmation dialogs
now receive purpose-built structure, so generated phone prototypes read
clearly without flattening every pattern into the same generic row. (#7327)
Team collaboration
- 🧭 Large Team workspaces can put a ceiling on background catch-up. An
opt-in cumulative budget keeps background materialization from growing without
bound while leaving foreground project opens immediate and unaffected.
(#7403) Thanks @lefarcen.
⚡ Performance & reliability
-
⚡ Team projects open from a warm path. Repeated project-list and deep-link
reads reuse a short-lived, workspace-safe cache; shares, unshares and workspace
changes invalidate it immediately. (#7398) Thanks @lefarcen. -
🚀 Home starts with less competition for the screen. Duplicate catalog
reads are collapsed, and the hidden Automations area waits until you actually
open it before fetching its data. (#7408, #7413) Thanks @lefarcen. -
🧹 Stopping a run now means the whole run has stopped. Cancel, timeout,
failure, retry and app shutdown clean up the complete Agent process tree before
declaring the attempt finished, preventing abandoned children from continuing
to consume resources. (#7432) Thanks @Siri-Ray.
🐛 Fixed
Agents, models and setup
-
☁️ Cloud sign-out no longer closes the door on local work. Local Agent and
BYOK stay selectable while signed out or while Cloud is unavailable, and
signing out preserves provider keys, base URLs, model choices and media
defaults stored on this installation. (#7381, #7437) Thanks @Siri-Ray. -
🧭 Run errors now point to the action that can actually help. An
incompatible Agent handshake asks you to change Agent versions instead of
retrying; membership concurrency limits show their reset guidance; and an AMR
model rejection stops before a second, misleading prompt failure can replace
the real cause. (#7303, #7429, #7458) Thanks @lefarcen, @Siri-Ray. -
🚦 A real upstream limit is no longer buried under “empty output.” Quota,
rate-limit and availability signals keep priority over generic no-result
classification, so retry behavior follows the failure that actually happened.
(#7248) Thanks @mturac. -
💬 A clarification form you can see is a clarification form you can answer.
Strategy tasks no longer become terminal behind a rendered question form and
reject the response with an internal state error. (#7509) -
🔌 A missing local engine now fails clearly instead of returning the app
shell as if it were data. Login, Agent discovery and other API calls surface
a recognizable, retryable connection failure when the daemon origin is not
configured. (#7399) Thanks @lorenzozanee.
Studio, preview and export
-
🧩 HTML that writes HTML no longer tears its own preview apart. Print
windows, email templates,srcdocpayloads and markup stored in scripts or
attributes keep running as authored. Preview, deck, PDF and artifact export
now insert Open Design's bridges at the real document boundaries instead of
mistaking tag-shaped text for structure. (#7421, #7422) Thanks @lefarcen. -
📊 Editable PPTX export no longer succeeds with an invisible background.
Empty Chromium captures are retried; if a correct layered capture still cannot
be produced, export stops with a clear failure instead of handing you a
transparent slide. (#7337) Thanks @mrcfps. -
🎛️ Small editing controls stay in their lane. The chat resize handle no
longer steals hover, click or drag from the scroll edge; the slash-command
menu keeps each row readable; and switching to Image selects it immediately
without dimming the creation tabs. (#7324, #7368, #7375) Thanks @Siri-Ray,
@lefarcen.
Teams, navigation and interface
-
💳 Team balance follows the Team workspace you are viewing. Settings and
Home agree on the active workspace balance and no longer fall back to a
member's personal wallet when Team data is unavailable. (#7384) -
🎞️ Private projects use the Team balance they belong to. Vela image and
video generation now preserves the project’s Workspace billing scope without
changing its private sharing state. (#7504) Thanks @alchemistklk. -
↩️ Creating a design system brings you back to where you started. Whether
you entered from a conversation, picker, Library, Home or the sidebar, Back
restores that original context instead of dropping you at a generic page.
(#7367) Thanks @lefarcen. -
🌐 Plugin and recovery copy speaks the app's language. Skill-card
descriptions follow the selected locale with a predictable English fallback,
and a missing bundled scenario explains—in the same language—how reinstalling
restores it. (#7369, #7325) Thanks @lefarcen, @Siri-Ray. -
📣 The Go Plan sunset notice reaches the right people in the right
language. Targeted message variants open the dedicated notice, and its copy,
actions and layout follow the selected Open Design locale instead of falling
back to hard-coded Chinese. (#7430, #7453, #7477) Thanks @nettee. -
🔗 Cloud authorization returns to the installed app, not a stray Electron
window. Development runs no longer take over the system-wideopendesign://
link handler, while packaged builds keep their normal sign-in and invite
handoff. Signed-out users also stop seeing a campaign badge that requires an
account. (#7479) Thanks @lefarcen. -
⬆️ The update action stays where you expect it. Signed-out desktop users
now see the ready-to-install update in the same top-right cluster as signed-in
users, clear of the Home composer and model picker. (#7482) Thanks @Siri-Ray.
🙏 Thanks to everyone who shipped 0.21.1
@alchemistklk · @lefarcen · @lorenzozanee · @mixxer · @mrcfps · @mturac ·
@nettee · @Siri-Ray