首页/新闻资讯/正文详情

Open Design 深度解析:开源、本地优先的 Claude Design 替代,让 Coding Agent 变成你的设计引擎

发布时间:2026/9/25 15:58:28 来源:云帆数科 栏目:资讯中心
Open Design 深度解析:开源、本地优先的 Claude Design 替代,让 Coding Agent 变成你的设计引擎
1. 为什么我把 Open Design 接进了日常编码流Open Design 是一个开源、本地优先的 vibe design workspace它能把你已经在用的 Coding AgentClaude Code、Codex、Cursor、Gemini CLI、OpenCode、Qwen 等 25 个 CLI直接接进完整设计工作流从一句粗略想法到可交付的原型、落地页、Slides、HTML 视频全流程在你自己的设备上完成。它适合谁适合那些不想被云端 SaaS 锁死、希望设计产物以真实文件形式落在自己仓库里的开发者。我最初关注它是因为团队里设计和工程之间总隔着一层导出与复制粘贴而 Open Design 让 Agent 直接读代码仓库、按设计 token 渲染产物是 HTML、PDF、PPTX、MP4、Markdown 这些能进版本管理的文件。但真正跑起来之前有一个绕不开的环节模型通道。Open Design 本身不做模型它通过 BYOKBring Your Own Key代理去调用你指定的供应商。如果你手上有多个 Agent、多个项目每个都去配一遍不同厂商的 Key维护成本会迅速上升。我的做法是先用 TaoToken 统一 Key/API 通道把模型出口收敛成一条再让 Open Design 的 daemon 指向它。这样换 Agent、换项目时只需要改一处配置而不是满仓库找 Key。这篇就按我实际落地的顺序来先讲清楚 Open Design 解决的是什么问题再把 TaoToken 的前置准备做完然后给出可复制的config.toml与settings.json配置骨架接着做连通性验证最后把我在接入过程中踩到的几个典型报错摊开讲。全程命令和参数都可以直接抄。2. TaoToken 前置把模型出口收敛成一条通道Open Design 的 daemon 会以 OpenAI-compatible 的方式去请求模型端点所以只要有一个兼容的 base URL 和一把 Key就能接上。TaoToken 在这里扮演的角色就是统一通道你拿一把 Key后面无论是 Claude Code、Codex 还是 Open Design 的 BYOK 代理都走同一个出口。这样做的直接好处是Agent 换了一茬Key 不用跟着换。第一步去控制台创建 API Key。地址是 https://taotoken.net/api-keys 登录后新建一个 Key复制出来先存到本地环境变量里别直接写进会提交到 git 的文件。我习惯用.env或者 shell profileexport TAOTOKEN_API_KEYsk-你的key第二步确认你要用的模型名。TaoToken 的模型对话入口在 https://taotoken.net/models 里面能看到当前可用的模型标识。Open Design 的 BYOK 代理在转发时会带上 model 字段所以这个字符串要和通道侧对得上否则会返回 model not found 之类的错误。第三步记下 API base。TaoToken 的 API 根地址是 https://taotoken.net/api Open Design 里配置 provider 时base URL 填这个路径部分由代理自己拼。注意这里不要带任何多余后缀很多 404 都是因为把/v1重复拼了两遍。如果你后面打算长期用 Coding Agent 跑设计任务可以顺带看一下 Coding Plan 页面 https://taotoken.net/coding-plan 它面向的是持续编码和 Agent 场景和 Open Design 这种“Agent 驱动设计”的用法比较契合。接入文档在 https://taotoken.net/doc 配置项对不上时以文档为准。3. 可复制配置config.toml 与 settings.json 骨架Open Design 的配置分两层一层是 daemon 侧的config.toml管 provider、代理和端口另一层是 Agent 侧的settings.json管具体 CLI 怎么被拉起。下面这两份是我实际在用的骨架你把 Key 和模型名替换掉就能用。先看config.toml放在 Open Design 的配置目录下通常是~/.open-design/config.toml以你安装版本的文档为准# Open Design daemon 配置骨架 [daemon] port 7456 host 127.0.0.1 artifact_dir ./artifacts sandbox true [byok] enabled true # 统一走 TaoToken 通道 provider taotoken base_url https://taotoken.net/api api_key_env TAOTOKEN_API_KEY default_model 你的模型标识 timeout_ms 120000 [byok.providers.taotoken] type openai-compatible stream true # 代理层做 SSRF 防护这里只允许白名单域名 allow_hosts [taotoken.net] [agents] # daemon 启动时扫描 PATH 上的这些 CLI scan [claude, codex, cursor, gemini, opencode, qwen] preferred claude [skills] registry ./skills design_systems ./design-systems几个参数值得单独说。api_key_env指向环境变量名而不是明文 Key这样配置文件可以进仓库。allow_hosts是代理层的白名单只放taotoken.net避免 Agent 被诱导去请求别的地址。timeout_ms给到 120 秒是因为设计类任务经常要生成整页 HTML短超时会中途断流。再看 Agent 侧的settings.json以 Claude Code 为例放在~/.claude/settings.json{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: ${TAOTOKEN_API_KEY}, ANTHROPIC_MODEL: 你的模型标识 }, permissions: { allow: [ Read, Write, Bash(od:*) ] }, openDesign: { daemonUrl: http://127.0.0.1:7456, designSystem: ./design-systems/default/DESIGN.md, autoPreview: true } }这里的${TAOTOKEN_API_KEY}是引用环境变量Claude Code 启动时会展开。permissions.allow里放Bash(od:*)是为了让 Agent 能调用 Open Design 的 CLI 子命令比如od mcp install和od init。openDesign.daemonUrl指向本地 daemondesignSystem指向你的DESIGN.md品牌契约文件。如果你用的是 Codex 或 Gemini CLI结构类似只是环境变量名不同Codex 用OPENAI_BASE_URL和OPENAI_API_KEYGemini CLI 用GOOGLE_API_BASE之类。核心思路一致——base URL 指向 TaoTokenKey 从环境变量读。4. 验证请求从 daemon 启动到第一个 artifact配置写完先别急着开 UI按顺序做三步验证出问题好定位。第一步启动 daemon 并确认端口在听od daemon start --config ~/.open-design/config.toml curl -s http://127.0.0.1:7456/health健康检查返回{status:ok}就说明 daemon 起来了。如果返回连接拒绝多半是端口被占或者 config 路径不对用od daemon status看日志。第二步单独验证 TaoToken 通道是否通。这一步绕开 Open Design直接用 curl 打模型端点确认 Key 和模型名没问题curl -s https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ -H Content-Type: application/json \ -d { model: 你的模型标识, messages: [{role: user, content: reply with ok}], max_tokens: 16 }返回里带choices字段就说明通道是通的。如果这里就报 401检查 Key 有没有复制全报 404检查 base URL 有没有多拼/v1。第三步让 Open Design 真正产出一个 artifact。初始化一个带DESIGN.md的项目然后跑一个最小设计任务od init my-design-project cd my-design-project od run --skill prototype --prompt 生成一个极简登录页单文件 HTML跑完后看./artifacts目录应该出现一个.html文件。用浏览器打开如果页面正常渲染说明从 Agent 到 daemon 到 TaoToken 再到模型这条链路全通了。我实测下来第一次跑通大概需要 30 秒到 1 分钟取决于模型响应速度。如果你想先在网页里确认模型行为可以打开模型对话 https://taotoken.net/models 手动发一条消息对比一下返回风格排查时能快速区分是通道问题还是 Agent 配置问题。5. 本篇常见错排查接入过程中我遇到过的报错基本集中在这几类按出现频率排。第一类ECONNREFUSED 127.0.0.1:7456。这是 daemon 没起来或者端口不对。先od daemon status如果显示 stopped看日志里有没有配置解析错误。常见原因是config.toml里allow_hosts写成了带路径的 URL它只接受纯域名。第二类401 Unauthorized且 curl 单独测也失败。说明 Key 本身有问题不是 Open Design 的锅。检查环境变量有没有在当前 shell 生效echo $TAOTOKEN_API_KEY看输出。如果你在settings.json里写的是明文 Key 而不是${...}引用注意 JSON 里不能有 shell 展开得用真实值或者确保 Agent 支持变量替换。第三类model not found。模型标识和通道侧对不上。去 https://taotoken.net/models 复制准确的标识注意大小写和连字符。Open Design 的default_model和 Agent 的ANTHROPIC_MODEL要一致否则会出现 daemon 能通但 Agent 报错的情况。第四类流式响应中途断掉artifact 只生成一半。这是超时或代理层缓冲导致的。把timeout_ms调大同时确认stream true在 provider 段里。如果还是断检查allow_hosts是否漏了域名代理层拦截会直接掐断连接。第五类Agent 扫描不到。od daemon start后日志里没有列出你装的 CLI。原因是 PATH 里没有那个可执行文件或者config.toml的scan数组里没写。用which claude确认路径再对照scan列表补上。第六类artifact 渲染空白。文件生成了但浏览器打开是白屏。多半是沙盒 iframe 的 CSP 限制检查sandbox true下有没有引用外部 CDN 资源。设计任务尽量让 Agent 产出单文件自包含 HTML避免外链。6. 把设计引擎跑顺之后链路通了之后真正提升效率的是把常用 skill 和 design system 沉淀下来。我现在的做法是每个项目根目录放一份DESIGN.md把品牌色、字体、间距写成 tokenAgent 每次生成都会读它产出风格就稳定了。换 Agent 时这份文件不用动只是 daemon 里preferred改一下。如果你打算长期跑编码和 Agent 任务建议把 Key 管理也收敛好统一走 TaoToken 的 API Keys 页面 https://taotoken.net/api-keys 创建和轮换接入细节以 https://taotoken.net/doc 为准。需要持续编码或 Agent 场景的话Coding Plan https://taotoken.net/coding-plan 可以一起看。模型行为想先手动确认就去 https://taotoken.net/models 发一条消息试试。官网入口在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_end 。

相关推荐

TBOX信息安全系列8设计篇-SecOC车内通信安全方案
TBOX信息安全系列8设计篇-SecOC车内通信安全方案

2015年,安全研究员通过远程接口黑进一辆切诺基的CAN总线,向刹车系统发送伪造指令——车在高速上被远程劫持。这件事震惊了整个汽车行业:CAN总线从设计之初就没考虑过"认证",任何接到总线上的设备都能发任意ID的报文&… · 2026/9/25 15:58:10

浏览器‘不受支持的协议’警告:TLS版本与加密套件兼容性解析
浏览器‘不受支持的协议’警告:TLS版本与加密套件兼容性解析

1. 这个提示到底在警告什么:从“不受支持的协议”看现代浏览器的安全逻辑你刚点开一个内部系统、老版ERP或者自己搭的测试网站,Edge或Chrome突然弹出一行红字:“此网站使用不受支持的协议”。不是证书过期,不是域名不匹配&#xf… · 2026/9/25 15:57:57

杀毒软件被病毒干掉打不开?安全模式+msconfig手动清理全攻略
杀毒软件被病毒干掉打不开?安全模式+msconfig手动清理全攻略

1. 电脑中毒后杀毒软件打不开,这事到底有多常见杀毒软件被病毒干掉,几乎是每一个搞电脑维护的人都绕不过去的坎。你正刷着网页,突然弹出一个窗口说“您的电脑已感染高危病毒”,然后你下意识去点右下角的杀毒软件图标,发… · 2026/9/25 15:57:57

基于 Spring Boot 的二手车交易网站的设计与实现
基于 Spring Boot 的二手车交易网站的设计与实现

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 1. 项目背景与意义 随着汽车保有量的持续增长和消费观念的转变,二手车交易市场呈现出快速发展的态势。传统的线下二手车交易存在信息不对称、车源分散、交易… · 2026/9/25 16:23:56

GEOFlow知识库搭建完整指南:pgvector向量检索让AI内容生产有据可依
GEOFlow知识库搭建完整指南:pgvector向量检索让AI内容生产有据可依

GEOFlow知识库搭建完整指南:pgvector向量检索让AI内容生产有据可依 【免费下载链接】GEOFlow Open-source GEO content engineering and multi-site distribution platform with AI quality inspection, illustrated admin help, hosted sites, browser-assisted pu… · 2026/9/25 16:23:31

Agent Skills 实用指南:构建可复用智能体技能体系
Agent Skills 实用指南:构建可复用智能体技能体系

"agent-skills"这个词,最近在AI圈子里被反复提起。我做智能体开发也有两三年了,从最早的提示词堆砌,到后来的函数调用,再到现在围绕技能(skills)来构建智能体,最大的感受是&#xff1… · 2026/9/25 16:23:31

Atlas 300V 24G推理加速卡上部署YOLO:从模型转换到性能调优全攻略
Atlas 300V 24G推理加速卡上部署YOLO:从模型转换到性能调优全攻略

1. Atlas 300V 24G到底是个什么卡1.1 它就是热搜里问的那张“运算加速卡”先说结论:是的,Atlas 300V 24G就是一张标准的运算加速卡,但你要注意它并不是显卡,更不是用来打游戏的。它是昇腾生态里面向数据中心和边缘侧推理场景的PCI… · 2026/9/25 16:23:13

AI Agent工程化:分层交付架构设计与落地实践
AI Agent工程化:分层交付架构设计与落地实践

1. 为什么“分层交付”是 AI Agent 工程化的第一道生死线做 AI Agent 项目最怕什么?不是模型不够聪明,而是你把所有逻辑——意图识别、工具调用、状态管理、结果渲染——全塞进一个巨大的提示词或者一个巨型函数里。我见过太多团队,Demo 阶段… · 2026/9/25 16:23:07

昇腾Atlas 300V 24G部署YOLOv8推理实战与排障
昇腾Atlas 300V 24G部署YOLOv8推理实战与排障

1. 先搞明白Atlas 300V 24G到底是什么1.1 一张“推理加速卡”而不是“图形卡”我最初拿到Atlas 300V 24G这张卡的时候,也跟不少刚接触昇腾生态的朋友一样,第一反应是“它是不是跟游戏显卡一样,插上去就能跑图形渲染”。这个理解其实是错的&am… · 2026/9/25 16:23:00

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码