Open Design 的六個核心理念:搞懂哲學才知道為什麼這樣設計

Open Design 的六個核心理念:搞懂哲學才知道為什麼這樣設計

7 min read

裝完工具之後最常見的兩種人:一種立刻開始亂玩,一種停下來想「為什麼它要長這樣」。第一種會卡在「明明跑得起來但越用越亂」,第二種會花十分鐘讀理念然後接下來都不會卡——這篇是給後者準備的。

Open Design 作者把核心哲學列為「六個 load-bearing ideas」。一個一個拆,看完你會懂為什麼有些設計選擇看起來怪、其實非常合理。

1. 不自己出 agent,你的就夠強

這是最反直覺的一條。一般工具會說「我們有自家 model、自家 agent,效果最好」。Open Design 反過來——它的 daemon 啟動時做的事是:

掃 PATH → 找到 claude / codex / cursor-agent / gemini / opencode / qwen / copilot
        → 隨便哪個都能當設計引擎

理由很簡單:最強的 coding agent 已經在你筆電上了。你已經付過 Claude Pro 或 Cursor Pro,再買一份「設計用的 agent」是浪費。Open Design 的策略是把每個 CLI 寫一個 adapter(在 apps/daemon/src/agents.ts 裡,全部加起來不到 200 行),剩下的全交給 prompt stack。

副作用:你哪天換 agent、新 model 出了,Open Design 完全不用更新——adapter 改一個 entry 就行。

2. Skills 是檔案,不是 plugin

很多 AI 工具的 plugin system 都長一樣:要 publish、要審核、要更新版本、要管 manifest——結果想自己加一個都嫌麻煩。Open Design 直接走另一條路:SKILL.md 就是檔案。

每個 skill 就是一個目錄:

skills/saas-landing/
├── SKILL.md             ← frontmatter + 指令說明
├── assets/template.html ← seed 模板,agent 啟動會 read 進來
└── references/
    ├── layouts.md       ← 排版規格
    └── checklist.md     ← P0/P1/P2 閘門

要加一個自己的 skill?拷一份、改 frontmatter、丟回 skills/、重啟 daemon——下拉選單就出現。沒有審核流程、沒有 plugin manifest、沒有版本管理,因為這就是檔案。

這套協議直接沿用 Claude Code 的 SKILL.md 規範,完全相容。

3. Design Systems 是可攜的 Markdown,不是 theme JSON

第三條跟第二條同樣的精神,但對象換成 design system。傳統做法是用 JSON theme:一坨 token、難讀、難改、跨工具不相容。Open Design 用的是 9 段式 DESIGN.md:

color · typography · spacing · layout · components · motion · voice · brand · anti-patterns

每一段都是人類可讀的 Markdown。每張 artifact render 之前,agent 會把當前的 DESIGN.md 讀進 prompt,按它寫——切換 design system 等於下次 render 用全新 token。

71 套內建 design system 都是這個格式:Linear、Stripe、Vercel、Notion、Apple、Cursor、Supabase、Tesla……從 VoltAgent/awesome-design-md 同步進來。要做你公司的 brand?拷一份、改 hex 色、改字型——一個 PR 就完事。

4. 開場 form 把 80% 的方向錯誤擋下來

Open Design 的 prompt stack 寫死一條 RULE 1:每次新對話的第一輪,只能用 <od:question_form>,不准 think、不准 call tool、不准 narrate。

這聽起來很嚴格,但理由是反覆驗證的:一份冗長 brief 仍然會留一堆「視覺調性、配色立場、規模感」這種東西沒鎖死,AI 自由發揮就 slop 給你看。Form 用 30 秒 radio click 把這些鎖死,比 30 分鐘的修改 redirect 便宜太多。

這套來自 huashu-design 的 Junior-Designer 模式:先發問、再展示某個能看的東西(哪怕是灰色 wireframe)、讓使用者用便宜成本 redirect。詳細機制留到 反 AI-slop 那篇。

5. Daemon 讓 agent 真的覺得自己在你筆電上——因為它就是

Open Design 的 daemon 不是 proxy server,它真的把 CLI spawn 起來,cwd 設成 .od/projects/<id>/。意思是 agent 拿到的 Read Write Bash WebFetch 都是真工具、對的是真檔案系統:

  • 它可以 Read skill 的 assets/template.html
  • 它可以 grep 你貼的 CSS 找 hex 值
  • 它可以 Write 一份 brand-spec.md
  • 它可以產生 .pptx .zip .pdf 直接出現在 file workspace

對比 Claude Design——你在雲端,agent 在雲端,檔案系統不存在,每次都要從零搬資料進去。差很多。

6. Prompt stack 才是真正的產品

最後一條也是最重要的一條。Open Design 作者直白寫:「what you compose at send time isn't 'system + user'. The prompt stack is the product.」

每一輪送出去的東西其實是這樣疊起來的:

DISCOVERY directives  (turn-1 form, turn-2 brand 分支, TodoWrite, 5-dim critique)
+ identity charter    (OFFICIAL_DESIGNER_PROMPT, 反 AI-slop, junior-pass)
+ active DESIGN.md    (71 套裡選一套)
+ active SKILL.md     (19 個裡選一個)
+ project metadata    (kind, fidelity, speakerNotes, animations, inspiration ids)
+ skill side files    (auto-injected pre-flight: 讀 assets/template.html + references/*.md)
+ (deck mode 沒指定 skill 時) DECK_FRAMEWORK_DIRECTIVE

每一層都是檔案、每一層都可改。這就是 Open Design 真正的 IP——不是程式碼、不是 UI,是這個 stack 的設計。

第 9 篇我們會把 prompt stack 完整拆開來看,那會是這個系列最硬的一篇。

一句話收

六個理念串起來其實就一句話:最強的 agent 已經在你機器上、最有效的設計知識可以寫成檔案、把它們疊在一起就是工具。 沒了,剩下的是工程。

下一篇:BYOK 與多 CLI 自動偵測——你既有的 agent 怎麼變成設計引擎,理解第一條理念在實作層怎麼跑。