Repository navigation
Releases: nexu-io/open-design
Release list
Open Design 0.26.1 — Intelligent Router
English
Meet Skill Discovery: describe what you want to create, and Open Design finds the relevant Skills to guide the work—from your first idea to the next revision.
Your idea should be the starting point. In 0.26.1, Skill Discovery helps Open Design understand the kind of work you want to make and choose the Skills that fit. You can focus on the result, with less manual setup before creating and more continuity as you refine it. Alongside this, smoother project starts, connected feedback, and steadier previews keep your work moving.
📥 Download / 下载
| Platform / 平台 | Installer / 安装包 |
|---|---|
| macOS Apple silicon | Download · SHA-256 |
| macOS Intel | Download · SHA-256 |
| Windows x64 | Download · SHA-256 |
🧠 Skill Discovery: the right Skills for what you have in mind
Describe the result you want. Skill Discovery selects the deliverable type and reads its native Skill guidance, giving Open Design a task-specific starting point. It supports eleven deliverable types, including interactive prototypes and motion work. (#8804)
- Start with your intent. Your explicit request takes priority when it conflicts with a selected task type. Skills and templates you mention provide compatible guidance and references while keeping the requested deliverable in focus.
- Bring the right guidance into the work. Open Design reads the relevant Skill instructions for the chosen type, so you spend less time finding and selecting them yourself.
- Keep the direction as you iterate. Follow-up work carries the chosen Skill guidance forward, keeping revisions consistent. If you ask only for a plan or clarification, that request does not silently become permission to produce the final work.
🔥 Highlights
- 🔗 Share the work, not a pile of screenshots. Publish a design file as one public link, stop it when the review is over, and resume the same link later. Comments left on the shared page flow back to the file, with unread feedback waiting where you work. (#8408, #8859, #8867, #8904) Thanks @alchemistklk.
- 🤖 Bring your own connection — and keep the Agent in the loop. Open Design can use available registered runtimes, and the same BYOK connection works from the app or the
odCLI. Your project preview stays isolated to its own work, even when two projects use the same browser storage. (#8702) Thanks @itscheems. - 🚪 Home now opens straight into the real project. Send an idea from Home and the project is already there: one steady workspace, one Working state, and no disappearing first message while creation or uploads catch up. (#8267) Thanks @Siri-Ray.
- 🎬 Motion keeps its rhythm. Video-motion previews stop jumping through music when the browser hiccups; while a video is still being made, you can watch the picture without unexpected sound, then hear the finished result normally. (#8777) Thanks to the Open Design crew.
✨ Added
🎨 Studio, prototypes and media
- Use your organisation's image sources without a key hunt. Open Design can use configured company stock sources while retaining source information and keeping credits out of the finished page unless you ask for them. (#8691)
- Chinese community help now leads to Feishu. Simplified and Traditional Chinese entry points point to the official Feishu community, while other locales continue to use Discord. (#8884) Thanks @joeylee12629-star.
🧠 Agents, workspaces and CLI
- Your MCP tools follow the workspace you selected. Switch workspaces, reconnect, and the bridge now sees the projects and artifacts you actually have open. (#7619) Thanks @roian6.
⚡ Performance
- Spend less time waiting for a Motion export. Desktop video capture is faster while preserving the requested frame size, frame rate, and image quality. (#8798) Thanks @PerishCode.
🐛 Fixed
🧩 Home and projects
- Task choices and the More menu feel like Home again. The task-type controls, cancellation behaviour, compact-window layout, and keyboard navigation are back where your draft can rely on them. (#8947)
- Artifact actions stay visible in chat. Project conversations keep the familiar action styling for generated artifacts, and Home no longer surfaces the obsolete plugin hover card. (#8978, #8911) Thanks @alchemistklk.
- Finished work stays finished. A brief history lookup failure no longer turns an existing delivered run into a failure when you reopen the project. (#8804)
🎞️ Preview and sharing
- Keep commenting while the preview changes. A saved artifact can refresh with a comment draft open; a missing target asks for reselection instead of throwing the draft away. (#8904) Thanks @alchemistklk.
- An existing shared file keeps its identity. If local share bookkeeping is missing, Open Design recovers a verified cloud file and its original link rather than silently minting a replacement. (#8859, #8867) Thanks @alchemistklk.
🙏 Thanks to everyone who shipped 0.26.1
@alchemistklk · @itscheems · @roian6 · @Siri-Ray · @PerishCode · @joeylee12629-star
中文
全新 Skill Discovery,从你的创作意图出发,发现并选用合适的 Skill。少一些手动配置,从第一个想法到下一轮修改,让创作更贴近你想要的结果。
说出你想做什么,让 Open Design 更懂得如何开始。0.26.1 带来 **Skill Discovery:理解你想创作的作品类型,选择对应 Skill,并在后续修改中延续创作方向。**从开始创作前的能力选择,到作品生成后的继续打磨,你可以把更多注意力留给想法本身。更顺畅的项目启动、分享反馈和预览体验,也让整个创作过程更加连贯。
📥 下载正式版安装包
🧠 Skill Discovery:更懂你的想法,也更懂该用什么能力
描述你想要的结果,Skill Discovery 会识别作品类型,选择并读取对应的原生 Skill 指引,让 Open Design 带着适合这类任务的方法开始创作。目前覆盖 11 类交付物,包括交互原型、动效等创作场景。 (#8804)
- 从你的意图出发。 当明确需求与手动选择的任务类型不一致时,优先尊重你说出的需求;你提到的 Skill 和模板会作为相容的指导与参考,让创作围绕你真正想要的作品展开。
- 让合适的能力参与创作。 根据作品类型读取对应 Skill 的具体指引,减少你在开始前查找、选择技能的操作。
- 继续修改,延续创作方向。 继续修改时,沿用已选 Skill 的创作指导,保持前后连贯。你只想讨论方案或澄清需求时,也会尊重这个阶段的意图,不擅自开始制作。
🔥 重点更新
- 🔗 分享作品,而不是一堆截图。 把设计文件发布为一个公开链接;评审结束时停止分享,需要继续时仍沿用同一个链接。公开页面上的评论会同步回文件,未读反馈就在你工作的地方等你处理。 (#8408、#8859、#8867、#8904) 感谢 @alchemistklk。
- 🤖 带上自己的连接,把 Agent 留在流程里。 Open Design 可以使用已注册且可用的运行时;同一套 BYOK 连接既能在应用中使用,也能通过
odCLI 使用。即使两个项目用了相同的浏览器存储键,预览状态也各自独立。 (#8702) 感谢 @itscheems。 - 🚪 从 Home 发送,直接进入真实项目。 从 Home 发出想法后,项目工作区立即就位:只有一个稳定的界面、一个 Working 状态;创建或上传较慢时,第一条消息也不会消失。 (#8267) 感谢 @Siri-Ray。
- 🎬 动效预览终于跟得上节奏。 浏览器短暂卡顿时,视频动效不会反复跳音;生成期间可以看画面而不会意外出声,完成后仍可正常听到成片声音。 (#8777) 感谢 Open Design 团队。
✨ 新增
🎨 工作台、原型与素材
- 使用团队素材库,不必再找 Key。 Open Design 可以使用已配置的公司素材来源,保留来源信息;除非你明确要求,成品页面不会出现署名。 (#8691)
- 中文社区入口现在前往飞书。 简体中文和繁体中文的入口会打开官方飞书社区,其他语言继续使用 Discord。 (#8884) 感谢 @joeylee12629-star。
🧠 Agent、工作区与 CLI
⚡ 性能
- 少等一会儿动效导出。 桌面端视频抓帧更快,同时保持请求的分辨率、帧率和画面质量。 (#8798) 感谢 @PerishCode。
🐛 修复
🧩 Home 与项目
- 任务选择和“更多”菜单重新可靠。 任务类型控件、取消选择、短窗口布局和键盘导航都回到能放心保留草稿的位置。 (#8947)
- 对话中的作品操作重新清晰可见。 生成作品的操作样式恢复熟悉的样子,Home 也不再显示过时的插件悬浮卡。 (#8978、#8911) 感谢 @alchemistklk。
- 已完成的工作仍然是已完成。 重新打开项目时,即使历史状态短暂无法读取,已有交付物也不会被错误显示为失败。 (#8804)
🎞️ 预览与分享
- 预览变化时,评论可以继续写。 保存作品后,即使评论草稿还开着,预览也会刷新;评论目标消失时会提示重新选择,而不是丢掉草稿。 (#8904) 感谢 @alchemistklk。
- 已有的分享文件保留自己的身份。 本地分享记录缺失时,Open Design 会恢复已验证的云端文件与原链接,而不会悄悄新建替代链接。 (#8859、#8867) 感谢 @alchemistklk。
🙏 感谢参与 0.26.1 的贡献者
@alchemistklk · @itscheems · @roian6 · @Siri-Ray · @PerishCode · @joeylee12629-star
Open Design 0.26.0 — Share, Review, Refine
🌟 Codename: Share, Review, Refine
🔗 The work can leave the project—and the feedback can find its way home. Share an interactive design or motion video with the people who need to review it; let them watch, try it, and comment in context. Then choose the feedback that matters, send it to an Agent, and keep the review connected to the next round of making.
🔥 Highlights
- 🎞️ Motion Design—make the idea move. Motion Design now appears on Home and in Community, with curated helpers and examples. Start from an editable source, create motion for a video brief, and export an MP4 when the work needs to travel. (#8619)
- 🔗 One link for the team and the client. Copy a work link and send it out: signed-in reviewers can view and try the work in a browser, without installing the desktop app. Motion videos can travel the same way. The shared page shows the work preview and its comments—not the project's AI conversations or code view. (#8408) Thanks @alchemistklk.
- 💬 Comment on the part that needs changing. Select the place in the work that needs attention and leave a comment such as “make this title stand out” or “change this button color.” Everyone sees the same feedback on the same page, with less screenshot markup and fewer clarification loops. (#8408) Thanks @alchemistklk.
- 🤖 Bring feedback back to the project—and hand the revision to an Agent. Comments sync into Open Design. Select the feedback to act on, send it to an Agent, then review the result before the next pass. (#8408) Thanks @alchemistklk.
- 🔄 Update the work, not the link. After a revision, manually refresh the shared content and reviewers can keep using the same URL. They see that a newer version is available and can refresh to view it; end the share whenever the review is done. (#8408) Thanks @alchemistklk.
- 🧩 Plugins stay attached to the work you send. Applying a plugin in an existing project now preserves its selected snapshot and respects the capabilities you already granted. (#7597) Thanks @lorenzozanee.
- 🧠 Bring the model you actually use. During BYOK onboarding, enter a custom model instead of being limited to the suggested list—useful for local Ollama, self-hosted endpoints, and newer models. (#6076) Thanks @dpeterson01.
- 🌀 A stuck chat can find its way back. When a chat log stops following its layout, Open Design recovers scrolling and keeps wheel and keyboard navigation available. (#8251) Thanks @lefarcen.
- 🖼️ Finished work shows up where you expect it. After a run creates an image or file, Open Design refreshes its snapshot and opens the result by the existing rules—without taking over a preview you selected yourself. (#8744)
📥 Download: Tag
open-design-v0.26.0.
Platform Architecture Assets macOS Apple silicon DMG · SHA-256 macOS Intel DMG · SHA-256 Windows x64 Installer · SHA-256
✨ Added
🎨 Studio, editing and canvas
- Motion Design adds curated skills, bundled examples, editable sources, and MP4 production for video-oriented work. (#8619)
🔑 Models and plugins
- BYOK onboarding accepts custom model names alongside the built-in suggestions. (#6076) Thanks @dpeterson01.
- Existing projects retain the plugin snapshot and granted capabilities chosen for an apply. (#7597) Thanks @lorenzozanee.
🐛 Fixed
🤝 Sharing and collaboration
- Signed-in reviewers can view and interact with shared work or motion video in the browser; shared pages intentionally keep project AI conversations and code views private. (#8408) Thanks @alchemistklk.
- Contextual comments sync back to the project, where selected feedback can be sent to an Agent for the next revision. (#8408) Thanks @alchemistklk.
- A shared work link stays stable across manually refreshed revisions and can be stopped when the review is complete. (#8408) Thanks @alchemistklk.
- Existing cloud file identities and aliases are recovered before publishing, so resumed or updated shares keep their original links when local mappings are missing. (#8859, #8867) Thanks @alchemistklk.
- Uploading duplicate filenames in one batch keeps names and contents in submission order. (#8742)
🧠 Agents, runs and Home
- Home keeps a draft blocked when funding confirmation is insufficient or unknown; billing changes refresh the hint without sending that draft for you. (#8688, #8775, #8786)
- The default AMR model is resolved from the caller's available catalog, avoiding an avoidable first-run failure. (#8519) Thanks @Siri-Ray.
- Cached offline content now respects revocation and expiry across restarts. (#8676)
🖥️ Desktop and workspace
- Workspace users can complete the desktop update safety check without an unscoped active-run request blocking restart. (#8462) Thanks @Siri-Ray.
- A saved empty local file selection survives restore instead of being replaced by a default artifact. (#8745) Thanks @open-design-crew.
🙏 Thanks to everyone who shipped 0.26.0
@alchemistklk · @hihicheems · @Siri-Ray · @dpeterson01 · @lefarcen · @lorenzozanee
Open Design 0.25.0 — OpenDesign Motion
🌟 Codename: OpenDesign Motion
The Open-Source Alternative to Claude Motion
🎞️ 53 PRs · 16 contributors · 21 days — Turn ideas into videos with code. Start from five bundled motion examples, create editable animations, and export your work as MP4. This release also makes editing, previews, and continuing work across devices smoother.
🔥 Highlights
- 🎞️ Introducing OpenDesign Motion. Open Motion Design on Home or Community, choose from five bundled examples, and use the motion skills from the
@picker. Ask for a video to get editable source files and an MP4; interactive animations remain runnable HTML. Sound stops when you leave the active preview. (#8619) - 🧭 Move from a design plan into making it. Design tasks can continue from an ordinary written plan without failing on missing internal response markers. A request for a plan alone stays a plan, and completed work can again offer follow-up suggestions when the model supplies them. (#8356, #8770) Thanks @itscheems.
- 🔄 You decide when another device's changes replace local work. Review a cloud update before applying it. Choosing “Not now” with the 24-hour reminder option silences reminders for that project on that device; the update remains available when you are ready. (#8683) Thanks @PerishCode.
- 🖼️ New files appear, and your preview stays where you left it. Completed tasks refresh the file list so newly created images and other files can open. Manual preview choices stay respected, and restoring a project preserves a saved Design Files selection. (#8744, #8745)
- 💳 An insufficient-credit warning keeps your draft safe. A Home send already held for insufficient funds waits for a confirmed available balance or plan allowance before continuing. A failed check keeps you on Home; dismissing the dialog preserves the draft. A zero wallet balance still allows work when usable Coding Plan quota is available. (#8688, #8775)
- 🤖 Keep working when a model changes or a conversation grows. If an AMR model is removed, the app can use the catalog default and tell you which model was substituted. Long conversations limit repeated image and PDF attachments to reduce request-size failures; older attachments can be read again when needed. (#8602, #8767) Thanks @Siri-Ray.
- 🔑 Sign in and start with OpenDesign Hosted. The welcome flow opens Hosted after sign-in, while Local AI and API Key remain available. Sign-in controls show progress, cancellation, and a way to reopen the browser page if needed. (#8567)
- 🔎 Useful diagnostics, with less repeated uploading. Repeated instances of the same API failure are grouped, and AMR failure evidence includes the affected run's records. Windows log rotation preserves the user's consent boundary. (#8461, #8488, #8487) Thanks @Siri-Ray.
📥 Download: Open Design 0.25.0.
✨ Added
🎨 Motion and templates
- Five motion examples to start from: Motion Future, Product Promo, Showreel, UI Morph, and Visual Lesson. Their bundled scripts, fonts, audio, and previews support editing from the example. Video export checks that the resulting MP4 can play; a failed export keeps the editable source available. (#8619)
- Aster Atelier architecture-studio template. Start a website from an editable local example with chapter navigation, service and FAQ sections, and a contact-form demonstration. English and Chinese example prompts are included; the demo does not send real contact requests. (#8314)
🔁 Changed
💬 Everyday work
- Sending clears the composer immediately. If the send cannot proceed, its text, attachments, context, and quotes return, unless you have already started a new draft. (#8380) Thanks @Siri-Ray.
- Export, sign-in, update, storage, credit, and stopped-task messages explain what happened in plain language across all 19 supported locales. Export errors no longer show raw technical failure text. (#8620) Thanks @lefarcen.
- Hover over a shortened model name to read it in full in Settings and the composer model pickers. Models locked by a plan retain their upgrade explanation. (#8409) Thanks @PratikRai0101.
🐛 Fixed
💬 Conversations and design tasks
- Live Thinking text remains visible when older conversation history finishes loading. (#8167)
- Memory cards arriving late remain in the conversation that produced them, including after switching conversations or reloading. (#8065)
- Answering a clarification preserves the previous completed task's status, duration, and collapsed steps while the next task starts. (#8401) Thanks @Siri-Ray.
- Continuing older design conversations retains the original request, attachments, and relevant history. Plain-text answers can finish normally, and unfinished tasks remain available to continue. (#8356)
- Follow-up suggestions can appear again after automatic design production. Choosing a suggestion fills the composer for you to send. (#8770) Thanks @itscheems.
🗂️ Projects, files, and previews
- Empty project lists finish loading; a failed read shows an error and Retry instead of spinning forever or pretending there are no projects. Switching workspaces stops background status requests for the previous list. (#8443, #8442) Thanks @Siri-Ray.
- Files with the same name in one upload batch receive suffixes in submission order, keeping each returned filename matched to its contents. Existing files are preserved. (#8742)
- Newly generated files are discovered after a task finishes, and saved local tab selections survive restore when the server has not saved the newer choice yet. (#8744, #8745)
- Home's title and full composer remain reachable by scrolling in short windows. (#8649) Thanks @itscheems.
- Shortened workspace names reveal the hidden text correctly after switching to a right-to-left language. (#8692) Thanks @Siri-Ray.
- Cached in-app campaigns can survive temporary offline periods and restarts while their authorization remains valid. Withdrawn or expired campaigns do not reappear from an old cache. (#8676)
🧠 Models and local agents
- Simultaneous sign-in credential refreshes can recover through the existing safe retry path instead of immediately failing a task. (#8160) Thanks @Marinski.
- Antigravity can start long-prompt tasks on Windows, with streamed replies and tool steps appearing in chat. (#8594) Thanks @lefarcen.
- Completed AMR answers on Windows are no longer marked failed just because the app closes the finished agent process. (#8514) Thanks @Siri-Ray.
- AMR failures caused by Windows versions older than Windows 10 1809 explain that Windows needs updating instead of offering an ineffective retry. (#8629) Thanks @Siri-Ray.
- OpenCode skills can read their own supporting files without an unnecessary permission prompt. (#8178) Thanks @aron-intframe.
- Pi retains its configured alternative settings directory after app settings are saved. (#8119) Thanks @L4XB.
- The bundled Vela CLI is updated to 0.1.6, enabling the history-attachment limit for conversations with many images or PDFs. (#8767) Thanks @Siri-Ray.
🖥️ Desktop reliability
- Long macOS temporary-directory paths no longer prevent the local app services from starting. (#8002) Thanks @abhi-zit77.
- When the operating system runs out of network buffers, the desktop app stops repeated internal request retries instead of extending the hang. (#8283) Thanks @chenlei-github.
🙏 Thanks to everyone who shipped 0.25.0
@HaiYangBG1 · @L4XB · @Marinski · @PerishCode · @PratikRai0101 · @Siri-Ray · @abhi-zit77 · @alchemistklk · @aron-intframe · @chenlei-github · @gabrielhmsantos · @itscheems · @joeylee12629-star · @lefarcen · @matthew6s · @nettee
Open Design 0.24.1 — ✨ World’s First Design Plan
✨ World’s First Design Plan: Affordable models for everyone
Generous monthly allowance. Explore and refine your designs with DeepSeek V4.1 Flash, GLM-5.3 Flash and MiMo 2.6 Flash. Get started with Go for $8 for your first month, or choose Plus or above for up to $200 in bonus credits.
API access across your workflow. All personal subscription tiers support API calls. Use your OpenDesign API key with Codex, Claude Code, DSH, OpenCode, Hermes and other AI agents.
Free credits for new users. Every new user receives approximately $0.50 in free credits to try OpenDesign.
🐛 Fixed
🧠 Agents, runtimes and diagnostics
- A cleanly finished run stays visibly finished. A task-level block no longer turns a clean agent exit into a misleading failed-run card; real crashes and failed exits still remain failures. (#8350) Thanks @itscheems.
- Support bundles retain the clues that matter. Diagnostics now carry daemon health evidence for memory pressure, SQLite growth and unclean exits, whether you export from the app or with
od diagnostics export. (#8354) Thanks @PerishCode. - Failure evidence can be collected before the trail goes cold. With existing consent enabled, detected Agent and delivery failures queue bounded, redacted diagnostics automatically; opting out stops collection. (#8357) Thanks @Siri-Ray.
- OD Next sandboxed runs clean up after themselves. The run input access root remains writable for sandbox teardown instead of leaving a run stranded on cleanup. (#8024) Thanks @arqueon.
- Fatal MCP failures say what happened. An MCP stdio process now writes its fatal error before it exits, so the client has a usable diagnostic instead of a silent disappearance. (#7340) Thanks @lorenzozanee.
🖥️ Desktop and presentation
- Updating the desktop app no longer races its own shutdown. Renderer traffic is stopped before the packaged runtime retires, making the restart handoff safer. (#8348) Thanks @PerishCode.
- The fullscreen exit button belongs to the theme you chose. Its colors, hover state and keyboard focus now remain readable in both light and dark presentations. (#7272) Thanks @dennytosp.
- A macOS MCP session can become a desktop window in place. Opening the app after its headless runtime started now reveals the normal window without losing the local session. (#8398) Thanks @PerishCode.
🏠 Home and campaigns
- The task-type menu stays open when you ask for it. A click immediately after Home chooses a type no longer opens the picker only for it to snap shut. (#8386) Thanks @Siri-Ray.
- A valid campaign remains present through ordinary interruptions. Network changes, short sleeps and tab switches no longer unnecessarily remove an active campaign; cached content follows its known server schedule while offline. (#8292) Thanks @alchemistklk.
📥 Download: Tag
open-design-v0.24.1.
Platform Architecture Assets macOS Apple silicon DMG macOS Intel DMG Windows x64 Installer
🙏 Thanks to everyone who shipped 0.24.1
@PerishCode · @Siri-Ray · @alchemistklk · @itscheems · @lefarcen · @simpleqt · @arqueon · @dennytosp · @lorenzozanee
Open Design 0.24.0 — Every Run, Kept Intact
🌟 Codename: Every Run, Kept Intact
🧭 26 PRs · 13 contributors · 1 day — A run should survive the real
world, not just the happy path. Reloads, follow-up questions, preview changes
and first launches used to be the moments work could lose its place; now the
project keeps hold of it. 🚀
🔥 Highlights
- 🧵 Conversations keep their thread when the work keeps moving. Planning
answers, live task continuations, blocked-task decisions and recovered output
stay with the task that produced them—even after a reload or a follow-up.
Forked chats start clean instead of inheriting another conversation’s work.
A planning-only reply now ends as the answer you received, not as a red failed
run. (#8322, #8195, #8008, #8007, #8172, #8029, #8158) Thanks @itscheems,
@lefarcen. - 🖼️ Your current preview stays the preview you chose. Real pages no longer
turn into blank snapshots, and a stale file read cannot steal the chat preview
while you are inspecting something else. (#7125, #8067) Thanks @huynextlevel. - 🃏 Rich answers arrive as answers, not markup. Open Design decodes cards
in the thinking stream and safely drops a malformed card instead of spilling
its raw data into the conversation. (#8258, #8264) Thanks @lefarcen. - 🪟 A fresh Windows install gets to the app, first time. The packaged app
no longer mistakes its initial payload state for a failed handoff, so the web
interface can connect to its local engine on first launch. (#7520) Thanks
@lorenzozanee. - 🔑 Novita AI is ready in the BYOK picker. Choose Novita AI, bring your
key, and pick from its current DeepSeek, MiniMax, Qwen, GLM, Kimi and GPT-OSS
models without hand-building the provider setup. (#6327) Thanks @jax-novita.
📥 Download: Tag
open-design-v0.24.0.
Platform Architecture Assets macOS Apple silicon DMG macOS Intel DMG Windows x64 Installer
✨ Added
🔑 BYOK, models and media
- Novita AI joins the BYOK provider presets with its model catalog and API-key
management link. (#6327) Thanks @jax-novita.
🔁 Changed
🧠 Agents, runtimes and sandbox
- Workspace subscriptions reset cleanly when you change profiles, keeping the
projects and account state in front of you in sync with the workspace you
actually selected. (#8020) Thanks @AmyShang-alt. - When both are installed, local Agent detection prefers the direct Copilot CLI
over VS Code’s bootstrap copy. (#7974) Thanks @tony-box. od automation createandod automation updatecan again accept
comma-separated skill context without failing before the command runs.
(#7612) Thanks @johnkattenhorn.od media generate --helpnow shows help without trying to start a generation.
(#8066)
🎨 Studio, editing and canvas
- Manifest-backed Markdown artifacts now count as real run output, and late
cover rendering reaches a clear final state instead of leaving a misleading
result behind. (#7586, #8061) Thanks @arccat-114.
🐛 Fixed
🧠 Agents, runtimes and conversations
- Recovered conversations keep the right task verdicts, outputs and planning
intent across reloads and continuations. (#8195, #8008, #8007, #8172) - Forking a conversation no longer carries its source run artifacts into the
new chat. (#8029) Thanks @lefarcen. - A continued conversation collapses an unanswered question without pretending
it was answered. (#8158) - A planning-stage refusal that still gave you a useful reply keeps the normal
Done state instead of showing a failed-run card; genuine production failures
still surface as failures. (#8322) Thanks @itscheems.
🎨 Studio, previews and export
- Preview snapshots retain real page content, and delayed file reads cannot
replace the preview you are actively using. (#7125, #8067) Thanks
@huynextlevel. - Valid thinking-stream cards render as cards; invalid ones remain safely out
of the conversation. (#8258, #8264) Thanks @lefarcen.
🌍 Localization
- French copy is complete across the Design System flow, Library and Memory.
(#7906, #7756) Thanks @davezfr.
🖥️ Desktop
- Fresh Windows installations complete the local desktop handoff and can load
the app normally. (#7520) Thanks @lorenzozanee.
🙏 Thanks to everyone who shipped 0.24.0
@AmyShang-alt · @arccat-114 · @davezfr · @huynextlevel · @itscheems · @jax-novita · @johnkattenhorn · @lefarcen · @lorenzozanee · @maoxin1234 · @nettee · @Siri-Ray · @tony-box
Open Design 0.23.0 — Home, Rebuilt.
🌟 Codename: Home, Rebuilt.
🧵 73 PRs · 8 contributors · 10 days — Open Design 0.23.0 rebuilds the place where work begins and continues. Home, recent projects, run status, and the project conversation now form one clearer route into the work instead of separate places to navigate. 🚀
🔥 Highlights
- 🧠 A clarification can survive the real world. Ask Open Design to continue a task, restart while it needs an answer, then come back and answer it: OD Next keeps the thread resumable instead of quietly abandoning the work. Failed runs now tell the truth before finalization, while delivered prototype pages stay delivered—not mysteriously marked as failures. (#7575, #7980, #7942, #7931, #7949) Thanks @lorenzozanee, @Siri-Ray.
- 💬 The conversation no longer drops its own evidence. Earlier question forms, repeated-file read ranges, artifact updates and successful image next steps stay attached to the right turn. Workspace writes stop posing as deliverables, and quiet auxiliary cards step out of the way. (#7996, #7997, #8019, #8047, #8057, #7920, #7956) Thanks @lefarcen.
- 🔁 Retries finally pick up where you left them. Cloud retries wait for the authority and history they need; transient reads recover; folded tasks retain their blocked state and retry the actual failed run. A pending clarification also stays in charge until you answer it. (#7953, #7954, #7955, #7967, #7981, #7989) Thanks @app/open-design-crew.
- 🛠️ ACP results remain readable—even when a run does not. Tool rows now appear while Codex or OpenCode is still preparing their arguments; buffered words, failed tool results and a real cancellation all make it back into the conversation, while URLs stop masquerading as filenames in the record. (#8117, #7959, #8015, #8046, #8063) Thanks @Siri-Ray.
- 🖼️ Artifact-heavy chats stay in the order you chose. Cover-image failures have a useful fallback; live updates refresh the card you are already reading; image strips scroll; requested file ranges and selected artifact order remain visible. (#8045, #8060, #8062, #8013) Thanks @app/open-design-crew.
- 🧰 Bring your own model without opening a privacy detour. Image input works when a BYOK provider cannot advertise every capability, while proxy Basic credentials stay out of export and media tool-token lanes. (#8035, #7999, #8006) Thanks @Siri-Ray, @readwrightexecute.
- 📦 The installed app holds onto its engine. Packaged MCP and sidecar delivery remain intact, and updater cleanup no longer removes the launcher payload that is still doing the work. (#8027, #7963) Thanks @PerishCode.
- 🏠 Home starts with a clear place to create. A fresh Home opens ready for a Prototype, and switching creation types keeps the thought already in the composer. An empty balance is answered before leaving Home, while the project hand-off holds its layout steady instead of sliding into place. (#8208, #8278, #8240, #8229) Thanks @Siri-Ray.
- 🧩 Long-running work no longer replays itself. A paused clarification keeps its history and waits for you; a compaction continuation can finish committed work in the same session instead of repeating it. (#8225, #8250, #7958) Thanks @lefarcen, @Siri-Ray.
📥 Download: Tag
open-design-v0.23.0.
Platform Architecture Assets macOS Apple silicon DMG · SHA-256 macOS Intel DMG · SHA-256 Windows x64 Installer · SHA-256
🔁 Changed
- Run clocks now begin when the run really begins; folded runs keep their own clocks, the composer stays visibly preparing during send admission, and retry cards describe the send gate they actually face. (#7921, #7927, #8059, #8069) Thanks @lefarcen.
- Cloud and AMR account, balance and upgrade links now lead to the current dashboard routes instead of sending you on a dead-end detour. (#8126) Thanks @nettee.
- Agent-owned Codex threads are archived after a terminal completion, keeping finished local work from lingering as if it were still alive. (#8051)
- Client campaigns now keep an authorized placement visible through a temporary refresh problem, without waking the app solely to check it. (#7986, #8269) Thanks @alchemistklk.
🐛 Fixed
💬 Conversations and interface
- Continue stays on the conversation turn that owns it; question controls follow the UI language; long question titles remain readable; and native tooltips no longer interrupt the choice flow. (#8014, #8010, #8031, #8033) Thanks @lefarcen.
- Narrow chat panes keep footer actions and time visible; terminal artifact recovery respects the preview you chose; and uploaded attachments retain their true size. (#8001, #8050, #8030) Thanks @lefarcen.
- A project-switcher menu stays usable while a run scrolls; queued messages show their drop point between cards; and the chat log no longer loses pointer hit-testing near its top edge. (#8223, #8228) Thanks @Siri-Ray, @lefarcen.
- Campaign Test modals survive a same-deployment reload and can recover their replaced context instead of failing every placement. (#8210, #8263) Thanks @alchemistklk.
🔑 Models, media and diagnostics
- AMR media-model chat now respects the model guard, and workspace diagnostics retain bounded environmental evidence when a failure needs explaining. (#7695, #7951) Thanks @Siri-Ray, @lefarcen.
- Client safety telemetry carries platform context and uses canonical monitoring kinds, making real-world errors easier to find and compare. (#7944, #7945)
🙏 Thanks to everyone who shipped 0.23.0
@alchemistklk · @lefarcen · @lorenzozanee · @nettee · @PerishCode · @QiuQiuNB666 · @readwrightexecute · @Siri-Ray
Open Design 0.22.2 — More reliable update restarts
Open Design 0.22.2 is a focused desktop update reliability patch for macOS and Windows.
🐛 Fixed
- 🔄 Return to the app more reliably after an update. The updated app waits for the previous instance to finish closing before starting, helping prevent an update restart from ending without a new window. (#7970) Thanks @PerishCode.
- ⏳ Keep clear feedback while an update restarts. An accepted restart no longer shows a quit failure just because closing background work takes more than ten seconds. Repeated quit requests wait for the same cleanup; an explicit quit refusal still offers a retry without reinstalling the update. (#7982) Thanks @PerishCode.
Upgrading from an older version
The first upgrade to 0.22.2 still uses the older app's shutdown screen and behavior. If it reports a quit error but then restarts successfully, the new version can still be installed. Clients already stuck in a restart loop may need help from customer support; this patch does not automatically recover those installations.
📥 Download: Open Design downloads.
🙏 Thanks to everyone who shipped 0.22.2
Open Design 0.22.1 — Smoother design runs and recovery
Open Design 0.22.1 builds on 0.22.0 with a simpler start for supported design tasks and clearer ways to recover when a run goes wrong.
🔁 Changed
- 🧭 Start supported design tasks with OD Next. Prototypes, slide decks, marketing designs, and Hyperframes videos use OD Next by default on supported agents. Settings → Labs → Design Harness still lets you turn it off, and an existing choice to disable it stays respected. (#7876)
- 🧰 Keep design work focused. OD Next uses more concise tool guidance, clearer completion instructions, and the active run's workspace when loading media skills. (#7804)
📥 Download Open Design 0.22.1
| Platform | Architecture | Installer |
|---|---|---|
| macOS | Apple Silicon (arm64) | Download |
| macOS | Intel (x64) | Download |
| Windows | x64 | Download |
🐛 Fixed
💬 Conversations & recovery
- 🛟 A failed run keeps a useful next step. Failure cards survive returning to a conversation, retain timeout and retry information, and keep Retry available when the current chat cannot switch the run to Cloud. (#7871, #7884, #7897) Thanks @lefarcen.
- 🔑 An invalid API key points you to the right fix. Bring-your-own-key authentication errors have their own explanation and a shortcut to model settings. (#7893) Thanks @lefarcen.
- 🗺️ Get clearer explanations for run and preview problems. Messages for unavailable models, unsupported capabilities, timeouts, missing preview files, and regional restrictions give more specific guidance. (#7887) Thanks @lefarcen.
- 📝 Keep your answers when sending fails. If a clarification answer cannot start a run, it remains in the conversation with a Retry action that resends the same answer. Internal routing text stays hidden. (#7900) Thanks @lefarcen.
- 📜 Keep following a reply as it grows. A browser scroll adjustment no longer silently switches off automatic following. Scrolling up yourself still lets you read earlier messages. (#7898) Thanks @lefarcen.
🎨 Design & delivery
-
🎬 Failed media work no longer looks complete. When image, video, or audio generation fails before the turn finishes, the turn shows unfinished work instead of a completed checkmark. (#7933) Thanks @lefarcen.
-
💬 A greeting gets a reply. OD Next no longer invents a website for a greeting or a request that does not call for a design, and an explained blocked result avoids a duplicate failure card. (#7725)
-
✅ Keep your web deliverable while syntax checks do their best. Eligible HTML deliverables receive final syntax checks and safe automatic repairs without another agent turn. If a check is incomplete or a safe repair is unavailable, the original artifact remains available and delivery continues. (#7801, #7925) Thanks @lbjzz-hash.
-
🧩 Continue the brief you just collected. The official Codex plugin accepts the workflow identifier returned by brief collection when confirming that brief, while still rejecting mismatched identifiers. (#7779) Thanks @taljeon.
🗂️ Workspace & settings
-
🎯 Find your current model immediately. Reopening the model picker brings your current model into view, including its company in the two-level OpenDesign model list. (#7917) Thanks @lefarcen.
-
📣 Announcement buttons describe where they lead. What’s New supports localized button labels that match the announcement’s destination. (#7943)
-
🔗 Reference projects from the workspace you are using. Project references list the active workspace's projects and refresh when you switch workspaces. (#7701)
-
🤖 See which model a local CLI actually used. Connection tests show the resolved model behind a rolling alias, making the result easier to check. (#6386) Thanks @MumuTW.
-
🇫🇷 More consistent French guidance. Settings and recovery messages, along with core documentation, use updated French wording. (#7753, #7754) Thanks @davezfr.
-
🌍 Social-link hints follow your language. Navigation tooltips are localized and support right-to-left layouts. (#7665)
🖥️ Installation & Docker
- 🖼️ Browse bundled plugins with previews in Docker. Plugin posters and hover clips are available again in Docker installations. (#7028) Thanks @jiulongche.
- 📁 Respect existing contents when choosing a download location. Directories and symbolic links with names resembling system clutter are no longer mistaken for ignorable system files when deciding whether a download folder can be adopted. (#7718) Thanks @mikemikimike.
🙏 Thanks to everyone who shipped 0.22.1
@MumuTW · @davezfr · @jiulongche · @lbjzz-hash · @lefarcen · @mikemikimike · @taljeon
Open Design 0.22.0 — Introducing OpenDesign Arena
🌟 Codename: Introducing OpenDesign Arena
🔎 66 PRs · 10 contributors · 7 days — We evaluated over a dozen models using the OpenDesign Harness to compare design quality and cost. DeepSeek V4.1 Flash achieved 98% of top-ranked GPT-6 Astra’s average score at just 1% of its average cost. Explore OpenDesign Arena to find the right model for your design needs and budget.
🔥 Highlights
- 🧭 Runs that keep their evidence. Files, covers, references, produced output, steering, and recovery now travel with a conversation instead of disappearing into a vague finished state. (#7518) Thanks @lefarcen.
- 🛟 Failures that explain what to do next. ACP, model, permission, quota, and runtime problems preserve the useful cause, so a failed run is a decision point—not a dead end. (#6267, #7316, #7429, #7458, #7534, #7647) Thanks @helsome, @Siri-Ray.
- 🎬 Media work that survives the real world. Image and video tasks recover more reliably in packaged Open Design, and Team projects keep their own billing context while they do. (#7504, #7723, #7746) Thanks @alchemistklk, @lbjzz-hash.
- 🪟 The desktop app feels installed, not fragile. First-launch controls, macOS Home readiness, update placement, and app-link handoff now hold up where people actually use the product: the shipped app. (#7479, #7482, #7535, #7688, #7700) Thanks @lefarcen, @Siri-Ray, @alchemistklk.
- 🧩 Previews keep their place. HTML-rich designs, Deck covers, old thumbnail navigation, and edit handoffs retain the structure and state you were working with. (#7421, #7422, #7556, #7558, #7568, #7592, #7651) Thanks @lefarcen, @Siri-Ray.
📥 Download: Tag
open-design-v0.22.0.
✨ Added
🧠 Agents, runtimes & sandbox
- 🧰 Codex sessions have a steadier home. Open Design can carry a Codex app-server conversation through streaming replies and tool work without making the result feel like a black box. (#7518) Thanks @lefarcen.
- 🧪 Labs keeps experimentation understandable. Design Harness has a clear settings home, persists its choice, and explains when a policy owns the decision. (#7445, #7514) Thanks @lefarcen.
- 🖼️ Real subjects get real imagery. Ask for a named person, product, artwork, event, or place and Open Design reaches for the real thing instead of a convincing impostor. (#7436)
- 🧑💻 Standalone Terminal work has a real lifecycle. Start, finish, cancel, and return without leaving a ghost session behind. (#7716, #7742) Thanks @PerishCode.
🔑 Models & media
- 🤖 More honest model choices. New model IDs are discoverable, retired models explain themselves, and AMR no longer promises unlimited access where limits apply. (#7401, #7544, #7627, #7686) Thanks @koeseo, @Siri-Ray, @lefarcen.
- 🔗 Team projects remain visible after a bad sync. A transient sync failure no longer hides work your team has already published. (#7781, #7785)
🐛 Fixed
🎨 Studio, editing & canvas
- 🗂️ Open the project you meant to open. Project entry no longer invents facts it cannot know, and artifact-upgrade prompts stay with the active project. (#7428, #7689, #7696) Thanks @lefarcen, @Siri-Ray.
- 💬 A visible question can be answered. Clarification forms keep the run alive long enough to receive the answer—and receive it once. (#7509, #7512)
🖥️ Desktop & setup
- ✅ Onboarding checks the engine before asking you to continue. Invalid runtime setup is caught early, with a path forward instead of a later mystery failure. (#7440, #7743)
- 🌐 The app link returns to the app. Packaged Open Design keeps its normal sign-in and invite handoff while development builds stop claiming the system link. (#7479) Thanks @lefarcen.
🌍 Interface & language
- 📣 The right sunset notice speaks the right language. Go Plan messaging now reaches its intended audience with the selected locale intact. (#7453, #7477) Thanks @nettee.
🙏 Thanks to everyone who shipped 0.22.0
@AmyShang-alt · @PerishCode · @Siri-Ray · @alchemistklk · @helsome · @koeseo · @lbjzz-hash · @lefarcen · @nettee · @simpleqt
Open Design 0.21.1 — Community First: No Login Required
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