OpenDesign is an open-source, local-first desktop app that lets coding agents create prototypes, dashboards, slide decks, images, video, and design systems as exportable files. It is used by people working with agent runtimes such as Claude Code, Codex, Cursor, and DeepSeek Harness. The catalogue add-ons extend the OpenDesign workflow with skills, instructions, commands, and plugins.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add nexu-io/open-design --skill od-contributegit clone --depth 1 https://github.com/nexu-io/open-designWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/nexu-io/open-design/od-contribute)<a href="https://agentmods.dev/skills/nexu-io/open-design/od-contribute"><img src="https://agentmods.dev/badge/skills/nexu-io/open-design/od-contribute/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/nexu-io/open-design/od-contribute"><img src="https://agentmods.dev/badge/skills/nexu-io/open-design/od-contribute.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk fail
- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Agent Snooping · line 280 Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.Fix: Remove all code or instructions that list or read other skills' files or directories. Skills should operate independently; cross-skill access is a privilege escalation.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00104 | $0.03782 |
| Opus 5 | $0.00052 | $0.01891 |
| Sonnet 5 | $0.00021 | $0.00756 |
| Haiku 4.5 | $0.00010 | $0.00378 |
Grade A, and why
od-contribute scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 321 lines — stays where its author put it; the contents beside it link to each section on GitHub.
od-contribute — first-contribution flow for OpenDesign
Locked to nexu-io/open-design. Branches by contribution type, not by issue. Replaces the dev-loop with type-specific no-code validators. Designed so a product user with zero coding background can ship a real PR.
Language
Mirror the user's language in every user-facing message — AskUserQuestion labels and descriptions, status updates, error explanations. Detect from their first message; when uncertain, default to English.
Generated artifacts (PR titles, commit messages, PR/issue body files, branch names) MUST be English regardless of the user's chat language. GitHub conventions, maintainer review, and search all assume English. The templates under templates/ are already English — keep them that way when rendering.
Scripts live under scripts/. Source the shared helpers from any script:
source "$(dirname "$0")/config.sh"
SKILL_DIR below = the directory that contains this SKILL.md.
Step 1 — Prereq check (always first)
bash "$SKILL_DIR/scripts/check-prereqs.sh"
- Exit 0: capture
GH_USER=<login>from stdout. DefaultTARGET_FORK="${GH_USER}/open-design". - Exit 2: surface the printed install / auth hint verbatim and stop. Do not attempt token workarounds.
If gh repo view "$TARGET_FORK" fails, ask the user (one AskUserQuestion) whether to fork now via gh repo fork nexu-io/open-design --clone=false. Default to yes.
Step 2 — Pick contribution type
Single AskUserQuestion (header: "Contribution", multiSelect: false), four options. Translate option labels/descriptions into the user's chat language; the branch routing is unchanged.
- 🎨 Ship something I made with OD — a Skill, Design System, HyperFrame, or template I want to contribute upstream → branch
3a - 🌍 Translate OD docs — README / QUICKSTART / CONTRIBUTING into a new language → branch
3b - 📝 Fix docs / write a blog / fix a typo — typo fix, dead link, use-case writeup → branch
3c - 🐛 Report a bug — something broke; I'll help turn it into a high-quality issue → branch
3d(issue path, no PR)
What ships with it
21 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 650 B
- install.sh 5.1 KB runs code
- references/design-system-anatomy.md 2.0 KB
- references/newcomer-tone.md 2.7 KB
- references/od-repo-map.md 2.2 KB
- references/skill-anatomy.md 2.3 KB
- scripts/check-prereqs.sh 4.1 KB runs code
- scripts/config.sh 2.4 KB runs code
- scripts/create-issue.sh 3.7 KB runs code
- scripts/create-pr.sh 3.8 KB runs code
- scripts/discover-doc-gaps.sh 4.0 KB runs code
- scripts/discover-i18n-gaps.sh 4.8 KB runs code
- scripts/setup-workspace.sh 3.4 KB runs code
- scripts/validate-design-system.sh 3.3 KB runs code
- scripts/validate-markdown.sh 6.9 KB runs code
- scripts/validate-skill-submission.sh 5.0 KB runs code
- templates/ISSUE-BODY-bug.md 450 B
- templates/PR-BODY-design-system.md 1.1 KB
- templates/PR-BODY-docs.md 723 B
- templates/PR-BODY-i18n.md 1.2 KB
- templates/PR-BODY-skill.md 1016 B
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 321 lines · 104 tokens per session scan A 3abb007bcdd4
od-contribute is a skill published in the GitHub repository nexu-io/open-design (95,021 stars, last pushed today), licensed Apache-2.0. It adds 104 tokens to every session and 3,782 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
repo-map
Use when locating a registered or related local repository, or when discovering commands registered through repo-map. Do not use for source-tree, symbol, or architecture mapping.
memtrace-evolution
Trace source-code change history from Memtrace's symbol-level temporal memory. Use when the user asks about change history, recent modifications, what changed since a date, symbol timeline, evolution, unexpected changes, or incident timelines. Do not use git log, git diff, Grep, or manual file search to reconstruct…
memtrace-cochange
Find files that historically co-change with a target symbol or file, ranked by co-occurrence across git episodes. Use when the user asks about historical coupling, co-change, what changes with this, hidden dependencies, or what else needs to move for source code. Do not use git log, git diff, Grep, or manual file…
memtrace-daily
Orient at the start of a coding session, review what recently changed in a repository, and self-audit after completing work. Use when the user wants the daily briefing (what changed in the last 24h with complexity deltas), hotspots (complexity × churn refactor priorities), or a session review (clean/review/risky…
memtrace-episode-replay
Replay the graph diff of one episode — a single git commit or working-tree save — to inspect what it changed: added/modified/removed symbols and edges. Use when the user asks what one commit or save changed in the graph, why code looks this way, or wants to inspect implementation attempts, reversions, past reasoning…
ship-task
Take an AI Atelie task — issue, ticket, or ad-hoc ask — all the way from description to merged-ready PR. Use whenever the user says "implement X and ship it", "work on issue.