MA

A CLI-based tool for discovering and installing UI components from the MagicPath platform.

Install

mkdir -p .claude/skills/magicpath && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13084" && unzip -o skill.zip -d .claude/skills/magicpath && rm skill.zip

Installs to .claude/skills/magicpath

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Search, preview, inspect, and install MagicPath UI components with the magicpath-ai CLI. Use when the user mentions MagicPath, wants to browse or search MagicPath components, preview one, or add one to their project. Also use when the user wants to create a new MagicPath project (workspace for designs/components), including projects inside a team. Also use when the user refers to "designs" — in MagicPath, designs are created and stored as components. Also use when the user mentions themes or theming — MagicPath themes (design systems) contain CSS variables, fonts, and styling instructions. Also use when the user asks about MagicPath teams, members, or who worked on something — MagicPath supports teams with shared projects, team members, and attribution tracking.
772 chars✓ has a “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Intermediate

Key capabilities

  • Search MagicPath UI components
  • Preview MagicPath UI components
  • Inspect MagicPath UI components
  • Install MagicPath UI components to a project
  • Create a new MagicPath project

How it works

The skill uses the `magicpath-ai` CLI to search, preview, inspect, and install MagicPath UI components, and to manage project creation, themes, and team collaboration.

Inputs & outputs

You give it
User query for MagicPath components, project creation request, or theme management
You get back
Search results, component previews, installed source code, or a new MagicPath project

When to use magicpath

  • Installing a specific UI component
  • Searching for design system components
  • Creating a new MagicPath project
  • Updating theme variables

About this skill

MagicPath

A platform for building, sharing, and installing UI components via AI. Components are added as source code to the user's project via the magicpath-ai CLI.

MagicPath canvas components can also be created and edited directly from local code via the npx -y magicpath-ai code ... subcommands — see Edit or create canvas components from code. That path is strict: only src/App.tsx, src/index.css, files under src/components/generated/, and temporary image assets under assets/ in the code working directory are editable.

Terminology: Users often refer to MagicPath components as "designs" — the two terms are interchangeable. When a user says "design," "my designs," or "that design," treat it as meaning a MagicPath component. Search, inspect, and install accordingly.

Users also refer to MagicPath design systems as "themes." When a user says "theme," "my themes," or "use the X theme," they mean a MagicPath design system — a set of CSS variables, fonts, and styling instructions. Use list-themes and get-theme to work with them.

Users may belong to teams (also called "workspaces"). When a user says "the team's designs," "our team's components," or mentions a team name like "Acme Inc," they mean the projects and components owned by that team. Use list-teams, --team, and --personal flags to navigate between personal and team workspaces.

First Step

Run npx -y magicpath-ai info -o json to check auth status and project context. The first invocation may take a few seconds as npx downloads the package; subsequent calls are fast.

  • If auth.authenticated is false, run npx -y magicpath-ai login, wait for browser auth to finish, then verify with npx -y magicpath-ai whoami -o json.

Working with Teams

Users may belong to teams that own shared projects and themes. By default, list-projects and search return results from all workspaces (personal + every team the user belongs to). Use filtering flags to narrow scope.

Discovering Teams

Run npx -y magicpath-ai list-teams -o json to see the user's teams:

{ "teams": [{ "id": "123", "name": "Acme Inc", "role": "ADMIN" }] }

Filtering by Team

  • Default (no flag): list-projects, search include both personal and all team projects — no extra flags needed for broad discovery.
  • --team "Acme Inc" or --team <teamId>: Filter to a specific team. Works on list-projects, search, list-themes, and get-theme.
  • --personal: Show only the user's personal projects/components. Works on list-projects and search.

JSON Output

Projects and search results include ownerType ("personal" or "team") and ownerName (user email or team name). Use these to tell the user where a component lives.

Discovering People

Run npx -y magicpath-ai list-members --team "Acme Inc" -o json to see who's on a team:

{ "team": { "id": "123", "name": "Acme Inc" }, "members": [{ "id": "456", "displayName": "Chloe Smith", "email": "[email protected]", "role": "MEMBER" }] }

Filtering by Person

  • --created-by <userId> on list-components: Filter to components that a specific user has created or edited. Use this after resolving a person's name to their user ID via list-members.
  • createdBy field on projects: Each project in list-projects includes createdBy: { id, displayName } showing who created it.
  • lastEditedBy field on components: Each component in list-components includes lastEditedBy: { id, displayName } showing who last edited it.

Important: You can only see projects that the authenticated user has access to — your own personal projects and team projects you're a member of. You cannot access another user's personal projects. When looking for another person's work, only search team projects (--team), not personal projects. Personal projects are private to their owner unless someone is explicitly invited as a member.

Common Patterns

  • "What was Chloe working on last?"list-members --team "Acme Inc" -o json to find Chloe's user ID → list-projects --team "Acme Inc" -o json to get team projects onlylist-components <projectId> --created-by <chloeId> --sort-by createdAt --order desc -o json for each project. Report the most recent components. Do not search personal projects for another user's work — personal projects are private to their owner.
  • "Show me the team's designs" or "what has Acme Inc created?"list-teams to find the team, then list-projects --team "Acme Inc" -o json, then list-components <projectId> -o json.
  • "Show me the latest design from the team" → same as above, but use --sort-by createdAt --order desc --limit 1 on list-components.
  • "Who created this project/component?" → check the createdBy field on projects or the lastEditedBy field on components from their respective list commands.
  • "My designs" without mentioning a team → the default (all projects) is usually correct. Only use --personal if they explicitly want to exclude team projects.
  • "Use the team's theme"list-themes --team "Acme Inc" -o json, then get-theme <name> --team "Acme Inc" -o json.

Workflow

Always use -o json for all data-returning commands (search, list-projects, list-components, list-teams, list-themes, get-theme, selection, active-project, info, add, inspect, code). This gives you structured output to work with instead of human-readable tables.

Phase 1: Discover

  1. Check auth — run npx -y magicpath-ai whoami -o json to verify authentication.
  2. Check current selection — if the user references "the selected component," "the selected image," "the design I have selected," or otherwise points at a specific canvas selection, run npx -y magicpath-ai selection -o json. If it returns components, use them directly — skip the search/confirm flow and proceed with the returned generatedName(s). Each returned component also includes selectedRevisionId, the revision currently shown for that component on the canvas. The response can also include selected images; when you subsequently run code start, those selected images are made available under assets/selected/** as described below. When a downstream command accepts a revision (such as code context --revision), pass this value through so the operation targets the version the user is looking at rather than whichever revision happens to be canonical in the database.
  3. Check the active project — if the user references "the project I have open," "this project," "what I'm working on," or otherwise implies a working project context without naming a specific component, run npx -y magicpath-ai active-project -o json. It returns the project(s) the user currently has open in their browser, even when nothing is selected. If it returns one project, treat it as the working project and skip the project picker. If it returns multiple, list them and ask which one. If it returns an empty list, the user has no canvas open — reach for list-projects and ask the user. Pick the right command for what the user said: selection for a referenced component, active-project for a referenced project, list-projects + ask if neither. (Note that selection also returns the active projects in its output, so when the user references a component you already get the project for free — no separate active-project call needed.)
  4. Find components — use npx -y magicpath-ai search <query> -o json to search across all projects, or list-projects -o json then list-components <projectId> -o json to browse. If active-project already gave you a project, scope your search to it via list-components <projectId> -o json instead of searching every workspace.
  5. Understand components visuallysearch and list-components results include a previewImageUrl field. Download and analyze these images to understand what each component looks like before recommending it. Preview images are for your own understanding — use the view command when the user needs to see a component.
  6. Confirm with the user (STOP and wait) — unless the user specified an exact generatedName, tell the user what you found (name, generatedName, project), open a browser preview with npx -y magicpath-ai view <generatedName>, and ask if it's the right component. If multiple matches, list them all and ask which one. This is a STOP point — end your response here and wait for the user to reply. Do NOT proceed until the user explicitly confirms. Do not run add or inspect yet.

Phase 2: Understand the Target Context

This phase is critical. Before installing anything, you MUST understand where the component is going and what it needs to do there. Skipping this leads to components that look right but behave wrong.

  1. Inspect the MagicPath component source — use npx -y magicpath-ai inspect <generatedName> -o json to read the source code. Identify what it renders, what props it expects, and what assumptions it makes about layout (fixed widths, absolute positioning, etc.).
  2. Read the target codebase context — before installing, read the file(s) where the component will live. Understand:
    • Existing functionality: If replacing a component, what does the current one do? What callbacks, state, API calls, navigation, validation, or side effects does it handle? Every piece of existing behavior must be preserved or consciously addressed.
    • Layout context: What is the parent layout? Is it a flex/grid container? What are the responsive breakpoints? How does spacing work? A component that looks perfect in isolation can break a layout if its sizing assumptions don't match.
    • Data flow: What props, context, or state does the surrounding code provide? What does it expect back (callbacks, form data, events)?
    • **Design sys

Content truncated.

When not to use it

  • When working with UI components not from MagicPath
  • When the user does not have Node.js installed

Prerequisites

Node.jsNetwork access to MagicPathBrowser access for login or preview flows

Limitations

  • Requires Node.js for `npx`
  • Requires network access to MagicPath
  • Requires browser access for login or preview flows

How it compares

This skill provides a command-line interface for managing MagicPath UI components and projects, offering structured interaction with the platform compared to manual component integration.

Compared to similar skills

magicpath side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
magicpath (this skill)02moReviewIntermediate
webf-quickstart17moReviewBeginner
hap-view-plugin06moReviewIntermediate
app_runner06moReviewBeginner

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

webf-quickstart

openwebf

Get started with WebF development - setup WebF Go, create a React/Vue/Svelte project with Vite, and load your first app. Use when starting a new WebF project, onboarding new developers, or setting up development environment.

16

hap-view-plugin

garfield-bb

创建和开发明道云 HAP 自定义视图插件的技能。**立即触发条件**:用户提到"HAP 视图插件"、"自定义视图"、"mdye"、"视图开发"、"插件开发"、"初始化视图项目"、"启动视图调试"。提供完整的开发工作流程、API 使用指南和最佳实践。

00

app_runner

k4ilham

A skill to run the backend (Go Fiber) and frontend (React/Vite) applications. It includes pre-run checks to clear the required ports (8080 and 5173) if they are already in use.

00

run-wwtt-website

WanderWave-Travel-and-Tours

Run, start, build, screenshot, or test the WanderWave Travel & Tours website (React/Vite frontend + Node/Express backend). Use when asked to run the app, verify a change works visually, take a screenshot, or check a route.

00

recharts

ihmorol

Build composable, responsive React charts with Recharts library. Use when creating data visualizations including line charts, area charts, bar charts, pie charts, scatter plots, and composed charts. Handles chart customization, responsive sizing, tooltips, legends, axes configuration, performance op

00

design-lab

0xdesign

Conduct design interviews, generate five distinct UI variations in a temporary design lab, collect feedback, and produce implementation plans. Use when the user wants to explore UI design options, redesign existing components, or create new UI with multiple approaches to compare.

735

Search skills

Search the agent skills registry