Agent skill

OpenDesign Contribution Flow

by nexu-io in nexu-io/open-design

Helps newcomers contribute to OpenDesign: ship a skill or design system, translate docs, fix docs or report a bug, ending in a pull request or issue.

Apache-2.0Auto-check: notesDevelopment

Install OpenDesign Contribution Flow

skills CLI
$ npx skills add nexu-io/open-design --skill od-contribute -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install nexu-io/open-design od-contribute --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/nexu-io/open-design.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/od-contribute .claude/skills/od-contribute && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
od-contribute
GitHub stars
100k
Token cost
~3.5k tokens
SKILL.md length
1,477 words
Files
23 (incl. scripts, references)
Skills in repo
245
Repo updated
First seen
Licence
Apache-2.0

At a glance

Helps newcomers contribute to OpenDesign: ship a skill or design system, translate docs, fix docs or report a bug, ending in a pull request or issue.

  • Works in 4 steps: Prereq check (always first) → Pick contribution type → Preview + confirm (shared, PR branches… → …
  • Contributing a skill or design system you built with OpenDesign upstream
  • SKILL.md covers Language, Step 1 — Prereq check (always…, Step 2 — Pick contribution type and Step 7 — Preview + confirm…, plus 3 more sections
  • Runs Shell scripts from its folder; calls bash, gh and git

What it does

Locked to the nexu-io/open-design repository, the skill asks one multiple-choice question to pick a contribution type, then follows a route for each: shipping a Skill, Design System, HyperFrame or template you made, translating the README, QUICKSTART or CONTRIBUTING docs into a new language, fixing a typo or dead link or writing a blog or use-case piece, or reporting a bug as an issue with no PR. It is designed so that someone with no coding background can submit a real pull request.

It starts with `scripts/check-prereqs.sh`, which confirms the GitHub CLI setup and finds your fork, offering to fork the repository if none exists. Type-specific validators for skills, design systems and markdown take the place of a development loop, and helper scripts discover documentation and translation gaps and create the PR or issue. Replies follow your language, but PR titles, commit messages, bodies and branch names are always English, using the bundled templates. References cover skill and design-system anatomy, a repository map and a newcomer-friendly tone.

When your agent uses it

  • Contributing a skill or design system you built with OpenDesign upstream
  • Translating the OpenDesign docs into another language
  • Fixing a typo or dead link in the docs, or writing a blog post
  • Reporting an OpenDesign bug as a well-formed issue

Example prompts

  • “I made a design system in OpenDesign and want to ship it upstream; walk me through the PR.”
  • “Translate the OpenDesign README and QUICKSTART into Spanish and open a pull request.”
  • “Report a bug: the export dialog freezes when I choose PDF.”
  • “Fix the dead link in the contributing guide and submit it.”

Requirements

  • The GitHub CLI (`gh`), signed in
  • A fork of nexu-io/open-design, which the skill can create
  • Bash to run the helper scripts
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Edit, AskUserQuestion, TaskCreate, TaskUpdate, WebFetch

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Prereq check (always first)
  2. Pick contribution type
  3. Preview + confirm (shared, PR branches only)
  4. Push & open PR

What it can do on your machine

Read from SKILL.md and the folder at commit 17e2559. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Edit
    • AskUserQuestion
    • TaskCreate
    • TaskUpdate
    • WebFetch

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 10 files in scripts/ (Shell, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • bash
    • gh
    • git
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

OpenDesign Contribution Flow loads about 3.5k tokens when it runs, and up to ~5.8k if it reads all its reference files. Until then it costs about 106 tokens; SKILL.md has 1,477 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~106
When it runs · the whole SKILL.md, loaded when a task matches
~3.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Edit, AskUserQuestion, TaskCreate, TaskUpdate, WebFetch

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from nexu-io/open-design at commit 17e2559, republished under its Apache-2.0 licence (© nexu-io). 1,477 words, ~3,509 tokens.

Download SKILL.mdSave it as .claude/skills/od-contribute/SKILL.md (or your agent's skills folder). This skill also uses 22 other files; get the full folder from GitHub.
name
od-contribute
description
One-click contribution flow for OpenDesign (nexu-io/open-design) — even for non-coders. Pick one of four cards (ship a Skill or Design System you made with OD; translate docs; fix a typo / write a blog; report a bug), the agent validates and opens a PR (or issue) for you. Trigger words contribute to open design, ship my OD skill, ship my OD design system, translate OD docs, report an OD bug, od-contribute.
allowed-tools
Bash, Read, Write, Edit, AskUserQuestion, TaskCreate, TaskUpdate, WebFetch

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:

bash
source "$(dirname "$0")/config.sh"

SKILL_DIR below = the directory that contains this SKILL.md.


Step 1 — Prereq check (always first)

bash
bash "$SKILL_DIR/scripts/check-prereqs.sh"
  • Exit 0: capture GH_USER=<login> from stdout. Default TARGET_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.

  1. 🎨 Ship something I made with OD — a Skill, Design System, HyperFrame, or template I want to contribute upstream → branch 3a
  2. 🌍 Translate OD docs — README / QUICKSTART / CONTRIBUTING into a new language → branch 3b
  3. 📝 Fix docs / write a blog / fix a typo — typo fix, dead link, use-case writeup → branch 3c
  4. 🐛 Report a bug — something broke; I'll help turn it into a high-quality issue → branch 3d (issue path, no PR)

Each branch below is self-contained. Steps 7–8 (preview + push) are shared across branches 3a/3b/3c. Branch 3d skips them entirely.


Step 3a — OD product submission (Skill / Design System)

3a.1 Ask user: "What's the local path to the artifact you want to ship?" (single free-text, translated into the user's chat language). Common: a folder path (Skill) or a single DESIGN.md file (Design System).

3a.2 Sniff type:

bash
# Skill: folder containing SKILL.md with frontmatter.
# Design System: file matching DESIGN.md anatomy.

If ambiguous, ask the user to confirm.

3a.3 Run setup:

bash
bash "$SKILL_DIR/scripts/setup-workspace.sh" skill <slug>
# or
bash "$SKILL_DIR/scripts/setup-workspace.sh" design-system <slug>

<slug> is od::slugify of the Skill name frontmatter field or of the brand name. Capture WORKDIR from stdout.

3a.4 Copy artifact into workspace at the right target dir:

  • Skill → $WORKDIR/skills/<slug>/
  • Design System → $WORKDIR/design-systems/<brand-slug>/DESIGN.md (+ any sibling assets in the same folder)

3a.5 Validate:

bash
bash "$SKILL_DIR/scripts/validate-skill-submission.sh" "$WORKDIR/skills/<slug>"
# or, with 1-2 reference DESIGN.md files passed in:
bash "$SKILL_DIR/scripts/validate-design-system.sh" \
  "$WORKDIR/design-systems/<slug>/DESIGN.md" \
  --reference "$WORKDIR/design-systems/airbnb/DESIGN.md" \
  --reference "$WORKDIR/design-systems/apple/DESIGN.md"

If validation fails, surface the FAIL lines verbatim, ask the user to fix, retry. Never push a failing artifact.

3a.6 Ask 3 short questions via AskUserQuestion (translate the labels into the user's chat language):

  • "What name should we credit you under in the PR?" — free-text
  • "One-line pitch for this Skill / Design System?" — free-text
  • "Path to a screenshot (optional)?" — free-text

3a.7 Render templates/PR-BODY-skill.md (or PR-BODY-design-system.md) with substitutions:

  • {{SKILL_NAME}}, {{SKILL_SLUG}} (or {{BRAND_NAME}}, {{BRAND_SLUG}})
  • {{PITCH}} (the one-line)
  • {{MOTIVATION}} (free-text — agent can offer to draft this from the skill body, but user confirms)
  • {{TRY_PROMPT}} (a prompt they recommend trying — agent suggests a default, user confirms)
  • {{SCREENSHOT_BLOCK}} (Markdown image block if a screenshot path was given, else empty)
  • {{DISCORD_INVITE}} from $OD_DISCORD_INVITE

Write to $WORKDIR/.od-contrib/PR-BODY.md.

→ Jump to Step 7.


Step 3b — i18n translation

3b.1 Setup workspace (slug = translate-<doc>-<lang> if known, else translate):

bash
bash "$SKILL_DIR/scripts/setup-workspace.sh" i18n translate
# capture WORKDIR

3b.2 Discover gaps:

bash
bash "$SKILL_DIR/scripts/discover-i18n-gaps.sh" "$WORKDIR" > /tmp/od-i18n-gaps.json

Each line is JSON. Rank by:

  • status: "missing" first (missing language is highest leverage)
  • then status: "stale" ordered by english_commits_since_translation desc
  • README family before QUICKSTART before CONTRIBUTING

3b.3 Take the top 3–4 gaps and present via AskUserQuestion (header: "Translation target"). Each option label like: README → 한국어 (Korean) / QUICKSTART (zh-CN) refresh — 12 commits behind. Translate the header text into the user's chat language but keep the option labels descriptive (the language names belong in their native script).

3b.4 Once user picks, rename branch to be specific:

bash
git -C "$WORKDIR" branch -m "od-contrib/i18n/<doc>-<lang>-<date>"

(or pre-set the slug in step 3b.1 if the user confirmed earlier.)

3b.5 Translate. Read the English source. Translate structure-preserving:

  • Code blocks: leave untranslated
  • Brand / product names: leave untranslated
  • Filenames in inline code: leave untranslated
  • Image / link targets: leave untranslated; if a localized version of a linked doc exists, swap the link to the localized file
  • Headings: translate, keep the heading depth identical
  • Tables: translate cell text only, keep alignment / pipes

Write the result to $WORKDIR/<TRANSLATED_PATH> (e.g. QUICKSTART.es.md). Show user a unified diff vs. the English source for visual sanity-check (line-count delta within ±15% is a healthy signal).

3b.6 Validate the translated file against the English source. The --reference flag tells the validator to ignore relative refs that were already broken in the source — OD docs frequently link to website route slugs (e.g. skills/blog-post/) that aren't files on disk; we don't want a structure-preserving translation to fail because of pre-existing dead refs.

bash
bash "$SKILL_DIR/scripts/validate-markdown.sh" \
  "$WORKDIR/<TRANSLATED_PATH>" \
  --reference "$WORKDIR/<ENGLISH_PATH>"

If FAIL → surface verbatim, fix, retry.

3b.7 Render templates/PR-BODY-i18n.md with {{DOC_NAME}}, {{LANG_DISPLAY_NAME}}, {{LANG_CODE}}, {{TRANSLATED_PATH}}, {{ENGLISH_PATH}}, {{STATUS}}, {{TRANSLATION_NOTES}} (one paragraph from the agent: anything tricky, untranslated terms it kept, etc.), {{DISCORD_INVITE}}.

→ Step 7.


Show full SKILL.md (678 more words)Show less
Step 3c — Docs / blog / typo

3c.1 Setup workspace (slug docs):

bash
bash "$SKILL_DIR/scripts/setup-workspace.sh" docs <slug>

3c.2 Ask user (one AskUserQuestion):

  1. Auto-discover small fixes (run discover-doc-gaps, pick something)
  2. I have a specific fix in mind (free-text)
  3. I want to write a blog / case study (free-text — what's the use case?)

3c.3 (Auto-discover branch) Run:

bash
bash "$SKILL_DIR/scripts/discover-doc-gaps.sh" "$WORKDIR" > /tmp/od-doc-gaps.json

Group by kind (typo / deadlink / todo). Show the user up to 6 candidates via AskUserQuestion. Once picked, apply the fix in code (typo: replace word; deadlink: ask user for the new URL; todo: that's a proper task, ask user to write the missing prose).

3c.4 (Specific-fix branch) Read the file, apply user's described change. Confirm via diff.

3c.5 (Blog branch) First check whether OD has a blog directory:

bash
ls "$WORKDIR/docs" 2>/dev/null

If a docs/blog/ or similar exists, place the new post there. If not, ask the user where it should live, defaulting to docs/<slug>.md. Generate an outline → user fills in user-specific bits (their use case, screenshots, the prompt they used, the rendered output) → agent stitches into a final Markdown.

3c.6 Validate every changed/added file. For files that already exist in the repo (typo fix, dead-link fix, doc edit), pass --reference pointing at HEAD's version so we only fail on relative refs the user introduced, not on pre-existing route slugs:

bash
# For modifications to existing files:
git -C "$WORKDIR" show "HEAD:<path>" > "/tmp/od-contrib-orig-<basename>" 2>/dev/null
bash "$SKILL_DIR/scripts/validate-markdown.sh" \
  "$WORKDIR/<changed-path>" \
  --reference "/tmp/od-contrib-orig-<basename>"

# For brand-new files (e.g. a blog post the user is creating from scratch),
# omit --reference. The validator will skip the relative-ref check entirely
# (since it can't tell route slugs from real paths in isolation).

3c.7 Render templates/PR-BODY-docs.md with {{ONE_LINE_SUMMARY}}, {{DETAILS}}, {{FILES_LIST}}, {{DISCORD_INVITE}}.

→ Step 7.


Step 3d — Bug report (issue path, no PR)

3d.1 Read OD's actual schema at runtime to make sure we mirror it:

bash
gh api "repos/${TARGET_REPO}/contents/.github/ISSUE_TEMPLATE/bug-report.yml" --jq .content | base64 -d > /tmp/od-bug-report.yml

If the schema has drifted from the template (templates/ISSUE-BODY-bug.md), regenerate the body to match.

3d.2 Ask the user via AskUserQuestion, one structured prompt per critical field. Use plain language, not the YAML field names:

Bug-report fieldPrompt to user
description"What went wrong? One sentence is fine."
steps"How can I reproduce it? Walk me through step by step."
expected"What did you expect to happen?"
version"Which OD version are you running? (About menu, or od --version)"
platformdropdown: macOS (Apple Silicon) / macOS (Intel) / Windows / Linux / Other
logs"Any error logs you can paste? Skip if you don't have them."
screenshots"Path to a screenshot? Skip if you don't have one."

Translate every prompt above into the user's chat language at runtime.

3d.3 Auto-collect what we can (these don't need to ask the user):

  • OS family from uname
  • Node version from node -v if relevant

3d.4 Dedupe: extract 3–5 keywords from the description, run:

bash
gh search issues "<keywords>" --repo "$TARGET_REPO" --state open --limit 5 --json number,title,url

If matches exist, present them to the user via AskUserQuestion (translate to user's language): "These existing issues look related. Do you want to: (a) comment on an existing one, (b) open a new issue anyway, (c) cancel?"

3d.5 If proceeding with new issue, render templates/ISSUE-BODY-bug.md and submit:

bash
bash "$SKILL_DIR/scripts/create-issue.sh" \
  --title "$TITLE" \
  --body-file "$WORKDIR_OR_TMP/.od-contrib/ISSUE-BODY.md" \
  --dedupe-keywords "<keywords>"

3d.6 Print the issue URL on its own line. Do not push branches or open PRs from this branch.


Step 7 — Preview + confirm (shared, PR branches only)

Show the user a clean summary:

text
About to commit:
  Branch:  od-contrib/<type>/<slug>-<date>
  Files:
    + skills/foo/SKILL.md            (1.2 KB)
    + skills/foo/preview.png         (54 KB)
  Push to:  <fork or upstream>
  Open PR:  nexu-io/open-design:main ← <fork>:<branch>

Then git -C "$WORKDIR" diff --stat and a head -40 of the rendered PR body for visual sanity.

Required AskUserQuestion confirmation (translate to user's language): "Push this PR?" with three options:

  • Ship it — proceed to Step 8
  • Let me revise — return to the relevant Step 3 sub-step
  • Cancel — leave the workspace on disk, tell the user the path so they can return later, exit

Never push without an explicit "Ship it".

Step 8 — Push & open PR

bash
bash "$SKILL_DIR/scripts/create-pr.sh" \
  --workdir "$WORKDIR" \
  --type "<skill|design-system|i18n|docs>" \
  --title "<PR title from references/newcomer-tone.md>" \
  --body-file "$WORKDIR/.od-contrib/PR-BODY.md"

Print the PR URL on its own line. Done.


Safety rails (mandatory)

  • Never push to main / master / develop. The push scripts refuse.
  • Never --force push. Just don't.
  • All workspace activity stays under $OD_WORK_ROOT (default $HOME/od-contrib-work). od::assert_in_workroot enforces this.
  • Bug-report path always runs the dedupe search before gh issue create.
  • Honor user memory: skip GitHub user xxiaoxiong from any contributor lookup ([[feedback_no_outreach_xxiaoxiong]]).

When NOT to use this skill

  • The user wants to fix a daemon / web bug or add a feature with code changes → use auto-github-contributor instead (it has the TDD loop). This skill deliberately doesn't run lint/typecheck/tests because content paths don't need them.
  • The user wants to generate a Skill / Design System from scratch → that's OpenDesign itself. Run OD first, get an artifact, then come back here to ship it.

© nexu-io, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 22 other files (scripts, references) in .claude/skills/od-contribute of nexu-io/open-design.

  • SKILL.md
  • agents/openai.yaml
  • install.sh
  • references/design-system-anatomy.md
  • references/newcomer-tone.md
  • references/od-repo-map.md
  • references/skill-anatomy.md
  • scripts/check-prereqs.sh
  • scripts/config.sh
  • scripts/create-issue.sh
  • scripts/create-pr.sh
  • scripts/discover-doc-gaps.sh
  • scripts/discover-i18n-gaps.sh
  • scripts/setup-workspace.sh
  • scripts/validate-design-system.sh
  • scripts/validate-markdown.sh
  • scripts/validate-skill-submission.sh
  • templates
  • … and 5 more

Open the folder on GitHubat commit 17e2559

Compare with similar skills

OpenDesign Contribution Flow next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

OpenDesign Contribution Flow compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
OpenDesign Contribution Flow this skillnexu-io/open-design100k—~3.5kAutomated safety check: NotesApache-2.0
Qiaomu Meta Skilljoeseesun/qiaomu-meta-skill383—~2.8kAutomated safety check: PassMIT
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Pre-Release PR Triagejamiepine/voicebox57k—~3.1kAutomated safety check: PassMIT
Verdaccio PR Reviewverdaccio/verdaccio18k—~1.7kAutomated safety check: PassMIT
Ansible Backport Creatoransible/ansible71k—~1.2kAutomated safety check: PassGPL-3.0

Similar skills

  • Qiaomu Meta Skill

    joeseesun/qiaomu-meta-skill

    Research, create, improve, migrate, evaluate, package, install-check, govern, and safely publish qiaomu-flavored agent skills from workflows, prompts, transcripts, docs, SOPs, runbooks, scripts, or…

    383 GitHub stars~2.8k tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.

    16k GitHub starsUsed in 1 repo~847 tokens
    DevelopmentAuto-check passed
  • Pre-Release PR Triage

    jamiepine/voicebox

    Sorts a backlog of open pull requests into must-merge, candidate, superseded and deferred, writes a triage doc and works the merge loop before a release.

    57k GitHub stars~3.1k tokensUpdated 4 days ago
    DevelopmentAuto-check passed
  • Verdaccio PR Review

    verdaccio/verdaccio

    Reviews an existing verdaccio/verdaccio pull request end to end, verifies each finding and reports whether it is mergeable, optionally fixing it on the PR branch.

    18k GitHub stars~1.7k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Creates backports of a merged Ansible devel pull request onto the right stable branches by cherry-picking its merge commit onto new backport branches.

    71k GitHub stars~1.2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Codewhale Landing Workflow

    codewhale-hq/Codewhale

    Decides how verified work should reach main, directly, in a worktree or on an integration branch, while keeping contributor credit and respecting merge gates.

    41k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed

More from nexu-io/open-design

All 245 skills in this repo
  • Humanize PPT

    nexu-io/open-design

    Turns raw notes into a talk-ready slide outline with per-page image, diagram or video decisions, then checks the rendered deck against that outline.

    100k GitHub stars~4k tokensUpdated today
    Auto-check passed
  • Last 30 Days Trend Research

    nexu-io/open-design

    Produces a cited Markdown briefing on recent community sentiment and social reaction to a topic, labeling every source it could not actually check.

    100k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Turns a chat transcript or screenshot into a configurable animated chat clip, rendered as a Remotion bundle with optional transparency.

    100k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Team-management dashboard skill in the FlowAI aesthetic — three tabs (Team Members, Team Details, Activity Log), KPI stat row, member table, role distribution bar chart, online presence and activity…

    100k GitHub stars~865 tokensUpdated today
    Auto-check passed
  • Hatch Pet

    nexu-io/open-design

    Create, repair, validate, preview, and package Codex-compatible animated pet spritesheets from character art, screenshots, generated images, or visual references.

    100k GitHub stars~6k tokensUpdated today
    Auto-check passed
  • HTML PPT Studio

    nexu-io/open-design

    Builds slide decks as static HTML files from a token-based design system, with themes, layouts, animations and a presenter mode.

    100k GitHub stars~3.8k tokensUpdated today
    Auto-check passed

Works with

Questions about OpenDesign Contribution Flow

What does OpenDesign Contribution Flow do?

Helps newcomers contribute to OpenDesign: ship a skill or design system, translate docs, fix docs or report a bug, ending in a pull request or issue. Locked to the nexu-io/open-design repository, the skill asks one multiple-choice question to pick a contribution type, then follows a route for each: shipping a Skill, Design System, HyperFrame or template you made, translating the README, QUICKSTART or CONTRIBUTING docs into a new language, fixing a typo or dead link or writing a blog or use-case piece, or reporting a bug as an issue with no PR. It is designed so that someone with no coding background can submit a real pull request.

When should I use OpenDesign Contribution Flow?

OpenDesign Contribution Flow fits situations like: contributing a skill or design system you built with OpenDesign upstream; translating the OpenDesign docs into another language; fixing a typo or dead link in the docs, or writing a blog post; reporting an OpenDesign bug as a well-formed issue.

How do I install OpenDesign Contribution Flow in Claude Code?

Run `npx skills add nexu-io/open-design --skill od-contribute -a claude-code`. Or copy the skill folder (.claude/skills/od-contribute in nexu-io/open-design) into .claude/skills/od-contribute in your project. Claude Code loads it when a task matches its description.

How do I install OpenDesign Contribution Flow in Codex?

Run `npx skills add nexu-io/open-design --skill od-contribute -a codex`. Or copy the skill folder (.claude/skills/od-contribute in nexu-io/open-design) into .agents/skills/od-contribute in your project. Codex loads it when a task matches its description.

Can I use OpenDesign Contribution Flow in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nexu-io/open-design --skill od-contribute -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/od-contribute, .gemini/skills/od-contribute, .github/skills/od-contribute and .opencode/skills/od-contribute in your project.

What does OpenDesign Contribution Flow need to run?

Going by SKILL.md and its folder, OpenDesign Contribution Flow needs a shell for the scripts in its folder and the command-line tools its instructions call (bash, gh, git and node). Our summary lists: The GitHub CLI (`gh`), signed in; A fork of nexu-io/open-design, which the skill can create; Bash to run the helper scripts. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, AskUserQuestion, TaskCreate, TaskUpdate, WebFetch.

Does OpenDesign Contribution Flow access the network?

SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is OpenDesign Contribution Flow safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does OpenDesign Contribution Flow use?

OpenDesign Contribution Flow is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does OpenDesign Contribution Flow use?

About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.3k tokens, read only when the agent opens those files.

What are the alternatives to OpenDesign Contribution Flow?

Skills that share tags, products or a category with OpenDesign Contribution Flow: Qiaomu Meta Skill (joeseesun/qiaomu-meta-skill, 383 stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars), Pre-Release PR Triage (jamiepine/voicebox, 57k stars) and Verdaccio PR Review (verdaccio/verdaccio, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains OpenDesign Contribution Flow?

nexu-io (a GitHub organization) maintains it in nexu-io/open-design, which has 100,280 GitHub stars. The repository holds 245 skills in this directory. The repository was last updated on October 10, 2026.

Source: nexu-io/open-design on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.