Materializr
開源參數式 3D CAD 給創客 — 受限草圖、實體建模、螺紋、SVG 與文字雕刻、STL/STEP 匯出。Android、iPad、Linux、Mac、Windows。Vibe 編碼。
AI 翻譯
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Design for an audience from what it actually loves: a Qloo-powered plugin for design agents in Claude Code, Codex and Kiro.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Design for an audience from what it actually loves. Moûsa is a plugin for design agents in Claude Code, Codex and Kiro. Before the agent designs anything, it freezes its own guess about the audience. Moûsa then measures the audience with Qloo and binds the design to what the guess missed. Every design ends with a report that sets the guess beside the measurement and shows where each choice came from.
An entry to the Qloo Agentic Hackathon.
For the jury: the video, 1 minute 47 seconds · the site, which tells one pair from the request to the record, with both games at play · Moûsa in one minute · the showcase, a page that explains Moûsa, designed by Moûsa · the benchmark · the live try, open to anyone with no code, up to 100 first steps and 10 design pairs a day.
Teams now build interfaces with AI coding agents, and those agents design for audiences they have never met. Ask one for a record shop's website "for people who love Paterson and Nujabes", and it designs from its own idea of those people: in a live run, Kiro's sealed guess named one of the 69 works Qloo measured for that audience. The site looks plausible and generic, because that idea was never tested.
How large the gap is, measured. In a pre-registered benchmark, three agents froze their own predictions for 20 audiences. Every prediction was committed to this repository before the benchmark asked Qloo: GitHub's push log shows them arriving at 14:14 UTC on 23 October, and the analysis is stamped 14:21. Pooled, the guesses missed 94.0% of the works Qloo then measured. The guesses were shorter lists than Qloo's (Claude Code named 571 works against the 1,395 measured), which caps that share, so the table also counts the other way: of the works each agent guessed, how many Qloo measured. Each agent's guesses named this share:
| Agent | Known share (95% interval) | Guessed works Qloo measured |
|---|---|---|
| Claude Code (claude-opus-5-5) | 6.8% (5.2% to 8.5%) | 16.1% |
| Kiro (claude-opus-5.5) | 6.6% (5.2% to 8.0%) | 15.8% |
| Codex (gpt-6.1-sol, high effort) | 4.7% (3.2% to 6.1%) | 13.9% |
Both pre-registered thresholds held for every agent: under 15% of the measured works named, and under 25% of the guesses measured. The agents knew music and TV best (about 10%) and films, brands and books least (2% to 6%). Claude Code and Kiro run the same model and differ by 0.2 points, which suggests the blind spot belongs to the model rather than the tool. Results, predictions.
Designers, brand teams and game studios who work with agents need the agent to know its audience beyond the obvious, and to show its evidence. Moûsa does this inside the agent a team already uses, on the project it already has: a website, an app's design tokens, a game character.
So Qloo's contribution is visible as a difference: what was measured, against what the agent would have assumed.
Each kind shows something different, and none shows everything. The jury page sets them side by side, each with what it does not show.
node scripts/blind-spot-stats.mjs <folder>.| Comparison | Agent | Distance between the two designs | Devices resting on what the prediction missed |
|---|---|---|---|
| Moûsa, explained to the jury (the showcase) | Claude Code | 0.63 | 10 of 10 |
| Moûsa, explained to the jury, first build | Claude Code | 0.60 | 8 of 8 |
| The Lamplight, a live music venue | Claude Code | 0.62 | 7 of 7 |
| Second Drink, a stand-up night | Claude Code | 0.69 | 8 of 8 |
| Thistledown, a browser RPG from one sentence, for Stardew Valley fans | Claude Code | 0.62 | 9 of 9 |
| Saltmarsh, a browser RPG for Wes Anderson and Fleetwood Mac fans, no game named | Claude Code | 0.57 | 9 of 9 |
| Opening Night, a browser game for the jury's own audience | Claude Code | 0.66 | 9 of 10 |
| Night Shift Run Club, a phone app | Claude Code | 0.63 | 10 of 10 |
| Ilo, a game character | Claude Code | 0.53 | 9 of 9 |
| Ilo, a game character | Codex | 0.57 | 7 of 7 |
| Ilo, with painted portraits | Codex | 0.58 | 5 of 5 |
| A record shop for Paterson and Nujabes, live try, 24 October | Kiro | 0.65 | 7 of 7 |
| A record shop for Paterson and Nujabes, live try, 14 October | Kiro | 0.60 | 7 of 7 |
| A record shop for Taylor Swift and Gilmore Girls, live try | Kiro | 0.68 | 7 of 8 |
| A record shop for Bad Bunny and Narcos, live try | Kiro | 0.65 | 7 of 7 |
| A record shop for Elden Ring and Berserk, live try | Kiro | 0.74 | 7 of 7 |
The distance is a heuristic over palette, type, page structure and CSS, or for a game the parts and words its code names, from 0 (alike) to 1 (unrelated). It does not rate quality. The protocol requires the names the prediction missed to change the Qloo design's palette, type and structure; the last column counts the devices that rest on such a name.
How it plays, not only how it looks. Four of these pairs began from one sentence and an empty folder. Their arms differ in what they do. For Stardew Valley fans the guess built farming, fishing and friendship; the measurement built herding from Slime Rancher, tape-recorded interviews from a Letterman interview show and 63 Up, and a band rehearsal from Modern Baseball. For the jury's audience the guess stitched the five names into an at-bat, a roast, a pitch room and an encore; the measurement made one stand-up set timed like a competitive game. See the verification record. 3. Beyond the model's own variance. In repeated pairs of one website brief (12 generations), the blind sketches of both arms showed no detectable difference (p = 0.81). After Qloo, typography, structure, palette and overall distance separated (exact permutation test, p = 0.005 each). For game characters, the finished characters separated (p = 0.0079) and the blind sketches did not. The protocol asks the Qloo arm to move from its sketch, so this shows that the move is more than the model's own variance, not that the moved design is better. See the development notes. 4. Preference. The blind vote shows a visitor both designs without saying which one used Qloo, and asks which the audience would rather have. By 27 October no votes had been cast; the results page counts each one.
The live try runs Moûsa in Kiro on the server for an audience the juror names. Step one, under a minute, freezes Kiro's prediction and measures the audience. Step two, about five to ten minutes, builds both designs.
Each person uses their own Qloo API key. It goes into the host's plugin settings or onto Moûsa's local key page (mousa_connect), never into the chat.
# Claude Code
/plugin marketplace add tritonsan/mousa
/plugin install mousa@mousa
# Codex
codex plugin marketplace add tritonsan/mousa
codex plugin add mousa@mousa
# Kiro, V3 engine, from a clone of this repository
kiro-cli powers install plugins/kiro
The plugin brings 13 tools, four skills (taste-brief, design, compare and connect) and a library of 55 open-licence font families. In Claude Code and Codex, a write gate also holds the design's files until its Design DNA is valid. See the plugin README.
plugin/server is the engine: one MCP server in Node 22, with no dependencies. It plans the taste questions, calls Qloo within a budget and a cache, freezes the prediction and writes the Taste Brief. It validates the Design DNA and checks it through the project's CSS custom properties, token files or Tailwind theme. It captures pages in a headless Chromium that can reach only the page it captures, and it writes the reports.plugins/ holds the Claude Code, Codex and Kiro packages, generated byte for byte from plugin/.src/ is the hosted site: the gallery, the blind vote with sealed ballots, and the live try. The try runs each Kiro session with an agent file of its own: Moûsa's tools, no shell, and write access to the starter's design files only.deploy/ holds the Docker image, the Compose file and one CloudFormation stack for AWS. The image runs with a read-only root and no capabilities, under a seccomp profile that keeps Chromium's sandbox.tests/ holds 559 tests, with no network or model call, run on Ubuntu and Windows in CI.Node.js 22 or later. The live try also needs the Kiro CLI, signed in or with a KIRO_API_KEY.
cp .env.example .env # then set QLOO_API_KEY
npm test
npm start # http://127.0.0.1:8787
The server is one CloudFormation stack: an instance behind two CloudFront names, the keys in Secrets Manager and a daily snapshot. See AWS deployment.
MIT. The fonts, photographs, music and seccomp profile carry their own licences; see the third-party notices.