nexu-io/open-design

library-curator

Search the OD Library (the global asset registry) and apply matching assets into the current project mid-task. Use when the user asks to reuse an image they captured/uploaded earlier, "pull a logo/screenshot from my library", or to find and drop a stored asset into the page being built.

Trending #6157 First seen Jun 25, 2026

Installation

$ npx skills add nexu-io/open-design --skill library-curator

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from nexu-io/open-design · top by installs.

npx skills add nexu-io/open-design

Browse all from nexu-io/open-design

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 94.8K
License LICENSE
Default branch main
Open issues 485
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,301 B
  • docs SUMMARY.md 310 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 672 installs

SKILL.md

library-curator

Reuse assets that already live in the user's OD Library — images captured with the OD Clipper, manual uploads, agent-generated media, and design-system material — without asking the user to re-upload them.

When to use

  • The user references an asset they already have ("the screenshot I clipped",

"my logo", "that hero image from earlier").

  • You need an image for the page you're building and the user prefers their own

library over freshly generated media.

Tools (tool-token track)

Both endpoints authenticate with the run's tool token (ODTOOLTOKEN, injected by the daemon) and operate on the project the run belongs to.

Search

POST /api/tools/library/search

{ "query": "blue hero background", "kind": "image", "limit": 20 }

Returns { "results": [{ "asset": { "id": "...", "kind": "image", "sourceTitle": "...", "width": 1600, "height": 900, "sources": [...] }, "score": 0 }], "semantic": false }.

semantic: false means keyword/metadata matching (no embedding model configured). Filter and rank the results yourself from the asset metadata.

Apply

POST /api/tools/library/apply

{ "assetId": "<id from search>", "dir": "assets" }

Copies the asset into the project (default subdir library/, or the dir you pass) and returns { "relPath": "assets/<hash>.png" }. Reference that relPath from the HTML/CSS you write (e.g. <img src="assets/ab12cd34ef.png">).

Recipe

  1. Search with a tight query for the kind you need.
  2. Pick the best result by dimensions / title / source.
  3. Apply it to get a project-relative path.
  4. Wire that path into the artifact you're editing.

If search returns nothing, fall back to media generation rather than guessing a path — never invent a relPath that apply did not return.