Skip to content

Releases: OpenCoworkAI/open-codesign

v0.1.4

23 Apr 10:23
fb3f902

Choose a tag to compare

🌐 Languages: English (below) · 简体中文

v0.1.4 — AI images, ChatGPT subscription login, and a big reliability wave

Everything you'd run into on a tricky API setup now tells you exactly what's wrong — plus the agent can now generate its own images.

Highlights

  • 🎨 AI image generation — the agent can now generate bitmap assets (heroes, product shots, illustrations, logos) inline while designing. gpt-image-2 via OpenAI, or any OpenRouter image model. Off by default; opt in from Settings. by @yangjunx21 🎉
  • 🔐 ChatGPT Plus / Codex subscription login — one-click OAuth, no API key required. Your existing subscription becomes your model budget.
  • ⚙️ CLIProxyAPI one-click import — Open CoDesign now detects a running CLIProxyAPI instance on startup and imports it automatically. Preset + smart model auto-discovery included for manual setup.
  • 🛠 Clearer errors for third-party relays — connections that time out, truncate SSE, or reject the Messages API now give actionable hints instead of undefined. If your relay is misbehaving, you'll know which one and why.

What's fixed

Provider & relay compatibility (the big wave):

  • Gemini via third-party relay: API keys with the models/ prefix now work correctly (fixes #175, reported by @CaioGS06) by @Sun-sunshine06
  • OpenAI Responses endpoints no longer reject with "instructions are required" (fixes #134) by @Sun-sunshine06
  • Gateways without /v1/messages now return a clear error pointing at the wire-protocol mismatch (fixes #158) by @Sun-sunshine06
  • Third-party relay SSE truncation on response event names now surfaces a diagnostic hint instead of a silent early stop (fixes #167, #180) by @Sun-sunshine06
  • Custom OpenAI-compat endpoints that don't expose /models can now still be tested (fixes #179)
  • reasoning=true flag is only sent to known OpenAI reasoning models (fixes #183) — no more random rejects from Qwen / DeepSeek / third-party
  • First-turn agent generation now retries on transient upstream errors (fixes #125, reported by @Sun-sunshine06)

Desktop polish:

  • Generation timeout now keeps its reason instead of collapsing to "Request was aborted" (fixes #169)
  • Settings active-model card no longer misrepresents the model when it's not in the fetched list (fixes #136, reported by @Sun-sunshine06)
  • ChatGPT OAuth login now has a cancel button mid-flow (fixes #172) by @Sun-sunshine06
  • Add-menu tooltip behaviour and labels restored (fixes #156) by @1WorldCapture 🎉

Codex reliability:

  • Codex token-store now wraps JSON parse errors and writes atomically (fixes #128, reported by @Sun-sunshine06)
  • Screenshot attachments now reach ChatGPT Codex correctly (fixes #157) by @Sun-sunshine06
  • Ollama is now hidden from Codex import until you add it manually — no phantom provider noise (fixes #170) by @L4b0R 🎉

Diagnostics:

  • Generate failures now bridge into diagnose() hypotheses so you get targeted fix suggestions (fixes #130, reported by @Sun-sunshine06)

Release pipeline:

  • macOS arm64 DMG ships with the correct native module (fixes #176, reported by @bytegh)
  • Coding-plan app allowlists now surface a clear warning when provider expects them (fixes for subscription-plan setups)

Internationalisation:

  • Brazilian Portuguese (pt-BR) locale added by @DavidgFernandes 🎉
  • CLIProxyAPI i18n keys deduped after parallel-worktree merge

Install

# Windows
winget install OpenCoworkAI.OpenCoDesign

# macOS
brew install --cask opencoworkai/tap/open-codesign

# Or direct download
# https://github.com/OpenCoworkAI/open-codesign/releases/tag/v0.1.4

First-time contributors 🎉

Welcome! This release is the first one with your work in it:

Special thanks

For bug reports, reproduction steps, and issue triage:

  • @CaioGS06 — Gemini third-party relay bug report (#175)
  • @bytegh — macOS local database / DMG reproducibility report (#176)
  • LINUX DO community — for continued feedback since v0.1.0 first launched there.
  • WeChat group members — for first-look testing and UX suggestions.
  • Microsoft winget-pkgs maintainers — for approving our package manifest so winget install now works out of the box

中文版

v0.1.4 — AI 图像生成、ChatGPT 订阅登录,以及大波稳定性修复

各种棘手的 API 配置问题,现在都能给你明确的错误提示;agent 还学会了自己生成配图。

本版亮点

  • 🎨 AI 图像生成 — agent 可以在生成设计的过程中直接产出位图素材(hero 背景、产品图、插画、logo)。支持 OpenAI 的 gpt-image-2 和 OpenRouter 上所有图像模型。默认关闭,在 Settings 里开启 by @yangjunx21 🎉
  • 🔐 ChatGPT Plus / Codex 订阅登录 — 一键 OAuth,不需要 API key。你现有的订阅直接变成模型额度
  • ⚙️ CLIProxyAPI 一键导入 — Open CoDesign 启动时会自动识别正在运行的 CLIProxyAPI,直接导入;手动添加时也有预设和智能 model 发现
  • 🛠 第三方中转错误提示更清晰 — 超时、SSE 截断、Messages API 不兼容这些问题,现在会直接告诉你是哪个环节坏了,不再是 undefined 或模糊的 500

修复

Provider 和中转兼容性(大波):

  • Gemini 第三方中转:带 models/ 前缀的 key 现在能正常识别(修复 #175,感谢 @CaioGS06 反馈)by @Sun-sunshine06
  • OpenAI Responses 不再报 "instructions are required"(修复 #134)by @Sun-sunshine06
  • 中转网关不支持 /v1/messages 时会给出清晰的协议不匹配提示(修复 #158)by @Sun-sunshine06
  • 第三方中转 SSE 遇到 response 事件名被提前截断的问题,现在会显示诊断提示(修复 #167#180)by @Sun-sunshine06
  • 不暴露 /models 的自定义 OpenAI 兼容端点现在也能测试连接(修复 #179
  • reasoning=true 只发给已知的 OpenAI 推理模型,不再被 Qwen / DeepSeek / 第三方误拒(修复 #183
  • 首轮 agent 生成在上游瞬时错误时会自动重试(修复 #125,感谢 @Sun-sunshine06 反馈)

桌面端细节:

  • 生成超时错误会保留具体原因,不再统一显示成 "Request was aborted"(修复 #169
  • Settings 当前 model 卡片在 model 不在 fetched 列表时不再显示错(修复 #136,感谢 @Sun-sunshine06 反馈)
  • ChatGPT OAuth 登录过程中可以中途取消(修复 #172)by @Sun-sunshine06
  • Add 菜单 tooltip 行为和文案恢复(修复 #156)by @1WorldCapture 🎉

Codex 稳定性:

  • Codex token-store 会 wrap JSON 解析错误并使用原子写(修复 #128,感谢 @Sun-sunshine06 反馈)
  • ChatGPT Codex 能正常接收截图附件了(修复 #157)by @Sun-sunshine06
  • Codex 导入默认隐藏 Ollama,避免幻影 provider 噪音(修复 #170)by @L4b0R 🎉

诊断系统:

  • 生成失败会接入 diagnose() 假设系统,给出针对性修复建议(修复 #130,感谢 @Sun-sunshine06 反馈)

发版管线:

  • macOS arm64 DMG 已带上正确的 native modules(修复 #176,感谢 @bytegh 反馈)
  • Coding plan 应用白名单在 provider 需要时会给出清晰警告

国际化:

  • 新增巴西葡萄牙语(pt-BR)界面 by @DavidgFernandes 🎉
  • CLIProxyAPI 的 i18n key 去重

安装

# Windows
winget install OpenCoworkAI.OpenCoDesign

# macOS
brew install --cask opencoworkai/tap/open-codesign

# 或直接下载
# https://github.com/OpenCoworkAI/open-codesign/releases/tag/v0.1.4

首次贡献者 🎉

欢迎!这是你的工作首次出现在 release 里:

特别感谢

感谢提供 bug 报告、复现步骤和 issue triage 的朋友们:

  • @CaioGS06 — Gemini 第三方中转 bug 报告(#175
  • @bytegh — macOS 本地数据库 / DMG 复现报告(#176
  • LINUX DO 社区 — 自 v0.1.0 首发以来持续的反馈与讨论
  • 微信群朋友们 — 首测 + UX 建议
  • Microsoft winget-pkgs 维护者 — 审核通过我们的 manifest,现在 winget install 开箱即用

Full changelog / 完整变更

Auto-generated from commits between v0.1.3 and v0.1.4:

  • feat: warn about coding plan app allowlists (#196)
  • fix: enable reasoning for third-party OpenAI-compatible proxies (#194)
  • feat: support gpt-image-2 for asset generation (#193)
  • fix: add cancel button to ChatGPT login when OAuth in progress (#172)
  • feat(settings): auto-detect running CLIProxyAPI and show import banner (#190)
  • feat(settings): CLIProxyAPI preset + smart model auto-discovery (#178)
  • fix(providers): only flag reasoning=true for known OpenAI reasoning models (#187)
  • fix(desktop): preserve generation timeout reason and raise dropdown ceiling (#169)
  • fix(providers): strip models/ prefix for Gemini OpenAI-compat endpoint (#186)
  • fix(desktop): degrade-probe test connection for OpenAI-compat endpoints without /models (#182)
  • fix(providers): detect gateway missing Messages API and surface actionable error (#161)
  • fix(providers): inject top-level instructions for openai-responses wire (#160)
  • feat(diagnostics): hint for 3rd-party relay SSE truncation (#181)
  • feat(diagnostics): bridge generate failures to diagnose() hypotheses (#165)
  • fix(core): retry first-turn agent generation on transient errors (#163)
  • fix(release): ship both macOS arm64 and x64 DMGs with correct native modules (#185)
  • fix(codex): wrap token-store JSON parse errors and use atomic write (#162)
  • fix(renderer): Settings active card no longer misrepresents model when not in fetched list (#166)
  • feat(i18n): add Brazilian Portuguese (pt-BR) locale (#171)
  • fix: send screenshot attachments to ChatGPT Codex (#157)
  • [codex] hide Ollama until manually added (#170)
  • fix(desktop): restore add-menu tooltip behavior and labels (#156)
  • feat(codex): unify ChatGPT subscription onto pi-ai's openai-codex-responses wire (#155)
  • fix: allow larger binary attachments (images/png) (#154)

v0.1.3

21 Apr 09:14

Choose a tag to compare

  • no changes

v0.1.2

21 Apr 06:19

Choose a tag to compare

  • no changes

v0.1.1

21 Apr 02:39

Choose a tag to compare

  • no changes

v0.1.0

20 Apr 17:44

Choose a tag to compare

Features

  • feat(desktop): simplify provider cards in Settings → API 服务 (re-open)
  • feat(scripts): pnpm smoke — batch model/prompt API tester
  • feat(prompts): align with Claude Design conventions (empty EDITMODE, 9-token palette, 2-font default, animation cap, Fraunces for marketing)
  • feat(core): progressive disclosure for system prompt by user-prompt keywords
  • feat(core): chart rendering contract
  • feat(core): switch skills to progressive-disclosure model routing
  • feat(core): permit cdnjs library whitelist in generated artifacts
  • feat(desktop): connection error diagnostic panel
  • feat(desktop): comment mode gating
  • feat(core): EDITMODE protocol — declarable tweakable params
  • feat(core): reasoning for all providers (auto fallback)
  • feat(core): dashboard ambient signals directive
  • feat(desktop): preview zoom dropdown
  • feat(core): extended thinking + bigger output budget
  • feat(core): inline iOS frame starter template
  • feat(core): Skills PR-B — wire loader into generation
  • feat(desktop): project (design) management — list / create / switch / rename / duplicate / delete
  • feat(core): system prompt — adopt Claude Design patterns
  • feat(desktop): viewport switcher (desktop / tablet / mobile with phone bezel)
  • feat(core): Skills system foundation — loader + 4 starter skills
  • feat(exporters): Markdown export of generated artifact
  • feat(desktop): Snapshots SQLite schema + IPC handlers (PR-A)
  • feat(core): Brand token extraction — Tailwind config + CSS vars + W3C DTCG
  • feat(core): system prompt v2 — denser, smarter, artifact-type aware
  • feat(ui): disabled button tooltip audit
  • feat(desktop): full-page Settings + fix API switching pipeline
  • feat(ui): Anthropic-inspired warm aesthetic + starter cards + BYOK badge
  • feat(core): provider-aware errors + named-step logging in generate
  • feat(desktop): named loading stages (sending/thinking/streaming/parsing/rendering)
  • feat(exporters): PDF export (lazy puppeteer-core + system Chrome)
  • feat(desktop): TopBar connection status badge
  • feat(desktop): proxy presets + connection test + real model list
  • feat(core): structured system prompt v1 (composer + 8 sections)
  • feat(desktop): implement settings tabs with multi-provider management
  • feat(desktop): redesign sidebar input + add cancellation IPC
  • feat(desktop): surface language toggle
  • feat(desktop): add input context and inline comments
  • feat(reliability): error boundaries + cancellation + retry + iframe error reporting
  • feat(desktop): settings + theme + command palette + better preview states
  • feat: i18n infrastructure + en/zh-CN translations + per-locale demos
  • feat(exporters): real PDF/PPTX/ZIP via system Chrome + pptxgenjs + zip-lib (lazy-loaded)
  • feat(core,exporters,desktop): end-to-end first demo + HTML export
  • feat: marketing website (VitePress + Tailwind v4 + en/zh + llms.txt + GH Pages deploy)
  • feat(desktop): first-run onboarding wizard with safeStorage

Bug Fixes

  • fix(desktop): harden sqlite bindings install flow
  • fix(artifacts): close remaining streaming parser leak paths
  • fix(desktop): wire generationTimeoutSec preference to in-flight aborts
  • fix(desktop): onboarding polish per audit 27
  • fix(desktop): preview perf + token counter wiring
  • fix(desktop): preserve artifact dark theme in iframe
  • fix(desktop): validate locale:set input against supported locales
  • fix(providers): Chinese keywords for skill matcher
  • fix(desktop): load designs on app startup so persisted work reappears
  • fix(desktop): dual-ABI prebuilt for better-sqlite3 (Node + Electron)
  • fix(artifacts): hold back partial open tag mid-attribute
  • fix(desktop): persist generated artifacts so designs reload correctly
  • fix(desktop): add 10s timeout to connection-ipc fetches
  • fix(providers): treat empty Retry-After header as no hint
  • fix(exporters): prevent zip-slip via asset path traversal
  • fix(exporters): quote YAML frontmatter titles starting with reserved indicators
  • fix(skills): mobile-mock no double phone chrome
  • fix(ui): PhoneFrame v2 visual polish
  • fix(ui): PhoneFrame sizing + iframe containment
  • fix(desktop): i18n ErrorBoundary fallback strings
  • fix(desktop): honor XDG_CONFIG_HOME in locale-ipc and preferences-ipc
  • fix(runtime): replace silent catches in overlay with console.warn
  • fix(desktop): tokenize raw utilities in preview Loading/Error states
  • fix(desktop): i18n ThemeToggle aria/tooltip strings
  • fix(desktop): PreviewPane hint pill + iframe dark-mode tokens
  • fix(desktop): drop unused fileURLToPath import in main entry
  • fix(desktop): tokenize PreviewToolbar values missed by #57
  • fix(desktop): tokenize LanguageToggle hardcoded sizes/spacing
  • fix(desktop): tokenize ConnectionStatusDot tooltip values
  • fix(desktop): localize Toast dismiss aria-label
  • fix(desktop): replace hardcoded text-[Npx] with --text-* tokens (preview + inline-comment)
  • fix(desktop): active provider sync — UI badge and generate IPC now share single source of truth
  • fix(desktop): toast polish — auto-dismiss, countdown bar, a11y
  • fix(desktop): bundle Plus Jakarta + JetBrains Mono locally (no Google Fonts CDN)
  • fix(desktop): Settings UI polish — compact provider cards, accent stripe, dashed add-card
  • fix(desktop): onboarding i18n audit + locale-reactive switching
  • fix(desktop): language switching + window drag hardening
  • fix(desktop): dedupe error UI + wire iframe error listener
  • fix(core): recover html from fenced revision replies
  • fix(providers): adapt assistant history for pi-ai

Documentation

  • docs: launch-ready marketing — README, website, SEO, AI-SEO, og:image
  • docs: rebrand to Open CoDesign + Anthropic-style README & website

Other Changes

  • refactor(desktop): unify API config IPC + drop separate fast model slot
  • perf(prompts): shrink Layer 1 to lower 8k-ctx token cost
  • chore(deps): bump 3 low-risk major deps (lucide-react / electron-builder / pptxgenjs)
  • chore(deps): bump happy-dom to fix 6 security advisories
  • refactor(desktop): unify validate+test into single ConnectionCheck
  • ci: narrow CI matrix to ubuntu (cost reduction)
  • ci(release): GitHub Releases for v0.1 (unsigned)

Full Changelog: 9e9e5a6...v0.1.0