Code import
Skill nexu-io/open-design/plugins/_official/atoms/code-import
π¨ The open-source Claude Design alternative. π₯οΈ Local-first desktop app. πΌοΈ Your coding agent becomes the design engine: prototypes, landing pages, dashboards, slides, images & video β real files, HTML/PDF/PPTX/MP4 export. π€ Claude Code / Codex / Cursor / Gemini / OpenCode / Qwen & 20+ CLIs via BYOK.
npx -y skills add nexu-io/open-design --skill code-importAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Read an existing repository's structure into the project cwd as a normalised snapshot the agent can analyse without re-walking the tree on every turn.
SKILL.md
2.4 KB, as published. Nobody here has run it
Code import
Spec Β§10 / Β§21.3.2: a code-migration / tune-collab run starts from a
real repo (cloned via od project import or a path the user
provided). This atom turns the raw checkout into a normalised
on-disk record that subsequent atoms (design-extract,
rewrite-plan, patch-edit) operate against. The point is to
stop re-walking the tree on every turn β the agent reads
code/index.json once and trusts the snapshot until the next
explicit re-import.
Inputs
| Source | Required | Notes |
|---|---|---|
repoPath | yes | Absolute path to the repo's root, supplied via od project import or an upstream od.context.assets[] reference |
targetStack | yes | { framework, packageManager, styleSystem, componentLibrary } via the matching form GenUI surface |
Output
project-cwd/
βββ code/
βββ index.json # { files: { path, size, language, imports[] }[], packageJson?, lockfileKind, framework, styleSystem }
βββ components.json # detected components with file path + props snapshot
βββ routes.json # detected routing model (next/app, react-router, vite-router, β¦)
βββ meta.json # { repoPath, gitSha, walkedAt, atomDigest, walkBudgetMs }
code/index.json is the input every other Phase 7 atom reads. The
walk respects the runner's budgetMs option (default 60s) so
large monorepos don't burn an entire run on import.
Convergence
The atom completes when code/index.json exists and contains at
least one entry. Empty repos abort with a clear error event so the
user re-imports.
Anti-patterns the prompt fragment forbids
- Walking node_modules / .git / .next / dist / build (record in
code/index.json.skipped[]with reason). - Inferring a framework from a single file; require at least
package.json's declared dep + a build-config presence (next.config.*,vite.config.*, etc.). - Treating commented-out imports as live edges.
Status
Implemented by the daemon runner in
apps/daemon/src/plugins/atoms/code-import.ts. The walker enforces its
exclusions and time budget, detects framework evidence, and writes
code/index.json.