magicpath-ai 1.3.0-beta.4 → 1.3.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,7 +16,7 @@ export function registerWhoamiCommand(program) {
16
16
  headers = getAuthHeaders();
17
17
  }
18
18
  catch {
19
- throw new MagicPathError('Not authenticated. Set MAGICPATH_TOKEN or run `magicpath-ai login`.');
19
+ throw new MagicPathError('Not authenticated. Set MAGICPATH_TOKEN or run `magicpath-ai login`.', { code: 'NOT_AUTHENTICATED', suggestion: 'Run `magicpath-ai login` or set the MAGICPATH_TOKEN environment variable.' });
20
20
  }
21
21
  const spinner = json
22
22
  ? null
@@ -37,7 +37,7 @@ export function registerWhoamiCommand(program) {
37
37
  spinner?.fail('Failed to fetch user info');
38
38
  if (axios.isAxiosError(err)) {
39
39
  if (err.response?.status === 401) {
40
- throw new MagicPathError('Token is invalid or expired. Run `magicpath-ai login` to re-authenticate.');
40
+ throw new MagicPathError('Token is invalid or expired. Run `magicpath-ai login` to re-authenticate.', { code: 'TOKEN_EXPIRED', suggestion: 'Run `magicpath-ai login` to re-authenticate.' });
41
41
  }
42
42
  throw new MagicPathError(`API error: ${err.response?.status} ${err.response?.statusText}`);
43
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEtE,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,IAAI,OAA+B,CAAC;YACpC,IAAI,CAAC;gBACH,OAAO,GAAG,cAAc,EAAE,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,cAAc,CACtB,qEAAqE,CACtE,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,IAAI;gBAClB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;YAElD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC5D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC;gBACjD,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;gBAElC,IAAI,IAAI,EAAE,CAAC;oBACT,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;gBAC/C,IAAI,IAAI,CAAC,EAAE;oBAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAClD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;gBAC3C,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC5B,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;wBACjC,MAAM,IAAI,cAAc,CACtB,2EAA2E,CAC5E,CAAC;oBACJ,CAAC;oBACD,MAAM,IAAI,cAAc,CACtB,cAAc,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,CACjE,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,IAAI;gBAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"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"}
@@ -202,10 +202,10 @@ export async function fetchComponent(generatedName) {
202
202
  throw new AuthRequiredError();
203
203
  }
204
204
  if (error.response?.status === 403) {
205
- throw new MagicPathError('A Pro subscription is required to install components. Visit https://www.magicpath.ai/documentation/help/plans to see the plans available.');
205
+ throw new MagicPathError('A Pro subscription is required to install components. Visit https://www.magicpath.ai/documentation/help/plans to see the plans available.', { code: 'FORBIDDEN', suggestion: 'Upgrade to a Pro subscription at https://www.magicpath.ai/documentation/help/plans' });
206
206
  }
207
207
  if (error.response?.status === 404) {
208
- throw new MagicPathError(`Component "${generatedName}" not found. Please check the name and try again.`);
208
+ throw new MagicPathError(`Component "${generatedName}" not found. Please check the name and try again.`, { code: 'NOT_FOUND', suggestion: 'Run `magicpath-ai search <query>` to find available components.' });
209
209
  }
210
210
  throw new MagicPathError(`Failed to fetch component: ${error.message}`);
211
211
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/util/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/util/component.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
+ export interface MagicPathErrorOptions {
2
+ code?: string;
3
+ suggestion?: string;
4
+ }
1
5
  export declare class MagicPathError extends Error {
2
- constructor(message: string);
6
+ code?: string;
7
+ suggestion?: string;
8
+ constructor(message: string, options?: MagicPathErrorOptions);
3
9
  }
@@ -1,6 +1,10 @@
1
1
  export class MagicPathError extends Error {
2
- constructor(message) {
2
+ code;
3
+ suggestion;
4
+ constructor(message, options) {
3
5
  super(message);
6
+ this.code = options?.code;
7
+ this.suggestion = options?.suggestion;
4
8
  }
5
9
  }
6
10
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/util/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/util/error.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,IAAI,CAAU;IACd,UAAU,CAAU;IAEpB,YAAY,OAAe,EAAE,OAA+B;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IACxC,CAAC;CACF"}
@@ -10,5 +10,6 @@ export declare function isJsonMode(): boolean;
10
10
  export declare function jsonResult(data: unknown): never;
11
11
  /**
12
12
  * Print a JSON error to stderr and exit with code 1.
13
+ * Includes `code` and `suggestion` fields when the error is a MagicPathError.
13
14
  */
14
15
  export declare function jsonError(err: unknown): never;
@@ -2,6 +2,7 @@
2
2
  * Output context for controlling JSON vs human-friendly output.
3
3
  * When JSON mode is active, spinners and interactive prompts are suppressed.
4
4
  */
5
+ import { MagicPathError } from './error.js';
5
6
  let jsonMode = false;
6
7
  export function setJsonMode(enabled) {
7
8
  jsonMode = enabled;
@@ -18,10 +19,18 @@ export function jsonResult(data) {
18
19
  }
19
20
  /**
20
21
  * Print a JSON error to stderr and exit with code 1.
22
+ * Includes `code` and `suggestion` fields when the error is a MagicPathError.
21
23
  */
22
24
  export function jsonError(err) {
23
25
  const message = err instanceof Error ? err.message : String(err);
24
- console.error(JSON.stringify({ error: message }, null, 2));
26
+ const payload = { error: message };
27
+ if (err instanceof MagicPathError) {
28
+ if (err.code)
29
+ payload.code = err.code;
30
+ if (err.suggestion)
31
+ payload.suggestion = err.suggestion;
32
+ }
33
+ console.error(JSON.stringify(payload, null, 2));
25
34
  process.exit(1);
26
35
  }
27
36
  //# sourceMappingURL=output.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/util/output.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,QAAQ,GAAG,OAAO,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,GAAY;IACpC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/util/output.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,QAAQ,GAAG,OAAO,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,GAAY;IACpC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,OAAO,GAA2B,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAE3D,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtC,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;IAC1D,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "magicpath-ai",
3
- "version": "1.3.0-beta.4",
3
+ "version": "1.3.0-beta.6",
4
4
  "description": "Node CLI for MagicPath",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,145 @@
1
+ # MagicPath CLI Reference
2
+
3
+ > **IMPORTANT:** Always pass `-y` to skip interactive prompts when running from an agent context. Use `-o json` for structured output.
4
+
5
+ ## Commands
6
+
7
+ ### `info` — Project and auth context
8
+
9
+ ```bash
10
+ magicpath-ai info # human-readable
11
+ magicpath-ai info -o json # structured JSON
12
+ ```
13
+
14
+ Returns auth status, user info, projects, and CLI version.
15
+
16
+ ### `login` — Authenticate
17
+
18
+ ```bash
19
+ magicpath-ai login # one-click browser login (auto-completes)
20
+ magicpath-ai login --code <code> # exchange auth code directly (headless fallback)
21
+ ```
22
+
23
+ Opens the browser and completes login automatically when the user authorizes.
24
+
25
+ | Flag | Description |
26
+ |------|-------------|
27
+ | `--code <code>` | Exchange a browser authorization code directly (headless fallback) |
28
+
29
+ ### `whoami` — Check authentication
30
+
31
+ ```bash
32
+ magicpath-ai whoami
33
+ magicpath-ai whoami -o json
34
+ ```
35
+
36
+ ### `search` — Search components across all projects
37
+
38
+ ```bash
39
+ magicpath-ai search "input"
40
+ magicpath-ai search "button" -o json
41
+ magicpath-ai search "card" --limit 5
42
+ ```
43
+
44
+ Fuzzy searches component names across all projects. Returns matches with project context.
45
+
46
+ | Flag | Description | Default |
47
+ |------|-------------|---------|
48
+ | `--limit <n>` | Max results | 20 |
49
+
50
+ ### `list-projects` — List all projects
51
+
52
+ ```bash
53
+ magicpath-ai list-projects
54
+ magicpath-ai list-projects -o json
55
+ magicpath-ai list-projects -o json --limit 10
56
+ ```
57
+
58
+ | Flag | Description | Default |
59
+ |------|-------------|---------|
60
+ | `--limit <n>` | Max results | all |
61
+ | `--offset <n>` | Skip first N results | 0 |
62
+
63
+ JSON output: `{ projects, pagination: { total, limit, offset, hasMore } }`
64
+
65
+ ### `list-components` — List components in a project
66
+
67
+ ```bash
68
+ magicpath-ai list-components <projectId>
69
+ magicpath-ai list-components <projectId> -o json
70
+ magicpath-ai list-components <projectId> -o json --limit 20
71
+ magicpath-ai list-components <projectId> -o json --after <lastId>
72
+ ```
73
+
74
+ Uses cursor-based pagination. To get the next page, pass `pagination.lastId` as `--after`.
75
+
76
+ | Flag | Description | Default |
77
+ |------|-------------|---------|
78
+ | `--limit <n>` | Max results per page | 100 |
79
+ | `--after <id>` | Cursor: fetch after this component ID | none |
80
+ | `--sort-by <field>` | Sort by `name` or `createdAt` | name |
81
+ | `--order <dir>` | Sort direction: `asc` or `desc` | asc |
82
+
83
+ JSON output: `{ components, pagination: { limit, hasNext, lastId } }`
84
+
85
+ ### `view` — Preview a component
86
+
87
+ ```bash
88
+ magicpath-ai view <generatedName>
89
+ magicpath-ai view-component <generatedName> # alias
90
+ ```
91
+
92
+ Opens the component preview URL in the default browser. In JSON mode, returns the URL without opening.
93
+
94
+ ### `add` — Add a component to your project
95
+
96
+ > **IMPORTANT:** Only use `add` when you intend to import the component afterward. To inspect source code without installing, use `add --inspect`. After adding, always import and use the component — never add and then manually replicate its styles.
97
+
98
+ ```bash
99
+ magicpath-ai add <generatedName>
100
+ magicpath-ai add <generatedName> -y # skip prompts
101
+ magicpath-ai add <generatedName> --inspect # show source code (no install)
102
+ magicpath-ai add <generatedName> --dry-run # preview file list only
103
+ magicpath-ai add <generatedName> -y --overwrite # replace existing
104
+ ```
105
+
106
+ | Flag | Short | Description | Default |
107
+ |------|-------|-------------|---------|
108
+ | `--yes` | `-y` | Skip confirmation prompts | false |
109
+ | `--overwrite` | `-o` | Overwrite existing files | false |
110
+ | `--path <path>` | `-p` | Custom component path | src/components/magicpath |
111
+ | `--dry-run` | | Preview file list without writing | false |
112
+ | `--inspect` | | Show full source code without installing (implies --dry-run) | false |
113
+ | `--debug` | `-d` | Enable debug logging | false |
114
+
115
+ **`--inspect` vs `--dry-run`:** `--dry-run` shows file paths and dependencies. `--inspect` also shows the full source code of each file. Use `--inspect` when deciding whether a component fits your needs. In JSON mode, both include file contents.
116
+
117
+ **JSON output** (`-o json`) automatically implies `-y` (no prompts).
118
+
119
+ ### `integrate` — AI-powered component integration
120
+
121
+ ```bash
122
+ magicpath-ai integrate <generatedName> --target <file> --no-review -o json
123
+ magicpath-ai integrate <generatedName> --target <file> --dry-run -o json
124
+ ```
125
+
126
+ Uses AI to integrate a component into a target file. Returns modified file contents — does NOT write files directly. The agent must write each `modifiedFiles[].content` to its `path`.
127
+
128
+ | Flag | Short | Description |
129
+ |------|-------|-------------|
130
+ | `--target <file>` | `-t` | Target file to integrate into (required in JSON mode) |
131
+ | `--no-review` | | Apply without interactive review |
132
+ | `--dry-run` | | Preview without writing |
133
+
134
+ ### `init` — Set up for AI agents
135
+
136
+ ```bash
137
+ magicpath-ai init # writes rules for Claude Code, Cursor, and GitHub Copilot
138
+ ```
139
+
140
+ ### `schema` — Output JSON schemas
141
+
142
+ ```bash
143
+ magicpath-ai schema # list available schemas
144
+ magicpath-ai schema add # schema for add command
145
+ ```
@@ -0,0 +1,63 @@
1
+ # MagicPath
2
+
3
+ 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.
4
+
5
+ ## Getting Started
6
+
7
+ Run `magicpath-ai info` to check auth status and project context.
8
+
9
+ **If not authenticated, follow this flow:**
10
+
11
+ 1. Run `magicpath-ai login` — this opens the browser for one-click auth (auto-completes if already signed in)
12
+ 2. Login completes automatically when the user authorizes in the browser
13
+ 3. Verify with `magicpath-ai whoami`
14
+
15
+ ## Workflow
16
+
17
+ 1. **Check auth** — run `magicpath-ai whoami` to verify authentication.
18
+ 2. **Find components** — use `magicpath-ai search <query>` to search across all projects, or `list-projects` then `list-components <projectId>` to browse.
19
+ 3. **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 `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 to steps 4-7 until the user explicitly confirms.** Do not run `add` or `add --inspect` yet.
20
+ 4. **Inspect source** — only after the user confirms in step 3, use `magicpath-ai add <generatedName> --inspect` to see the component's source code without installing. Decide how it needs to be adapted (props to add, behavior to wire up).
21
+ 5. **Add to project** — use `magicpath-ai add <generatedName> -y` to install component files. Always pass `-y` in non-interactive contexts.
22
+ 6. **Use the component** — after adding, import the component from `@/components/magicpath/<name>/` using the `importStatement` from the add output. Edit the component file to add props as needed, then render it from the parent.
23
+ 7. **Integrate** — use the `integrate` CLI command to wire a component into an existing file via AI.
24
+
25
+ ## Critical Rules
26
+
27
+ - **`add` means install-to-use.** Only run `add` when you intend to import and render the installed component. If you just want to read the source code, use `add --inspect` instead.
28
+ - **After `add`, always import the component.** The whole point of `add` is to get source files you then import. Never add a component and then copy its styles/markup into another file — import and render the component directly.
29
+ - **MagicPath components are source code you own.** After `add`, the component files live in your project at `src/components/magicpath/<name>/`. You can and should edit them directly to add props, change behavior, adjust styles, or integrate with your app's state. This is the intended workflow — not copying code out of them.
30
+ - **When a component needs integration:** (1) `add` the component, (2) edit the component file to accept the props you need (e.g., `onSubmit`, `placeholder`, `className`), (3) import it from the parent and pass those props. Do NOT copy the component's JSX/styles into the parent file.
31
+ - **`add --inspect` for read-only inspection.** Shows full source code without writing any files. Use this when deciding whether a component fits your needs before committing to install.
32
+ - **Never run `view` commands in parallel.** The `view` command opens a browser window for the user to look at. Only open one preview at a time, and always tell the user what you're opening before running the command.
33
+
34
+ ## Quick Reference
35
+
36
+ ```bash
37
+ # Auth
38
+ magicpath-ai login # one-click browser login
39
+ magicpath-ai whoami # check auth status
40
+ magicpath-ai info # full project context
41
+
42
+ # Find components
43
+ magicpath-ai search "input box" -o json # search across all projects
44
+ magicpath-ai list-projects # list all projects
45
+ magicpath-ai list-components <id> # list components in a project
46
+
47
+ # Inspect components
48
+ magicpath-ai view <generatedName> # preview in browser
49
+ magicpath-ai add <generatedName> --inspect # show source code (no install)
50
+ magicpath-ai add <generatedName> --dry-run # show what would be installed
51
+
52
+ # Install and use components
53
+ magicpath-ai add <generatedName> -y # add to project (no prompts)
54
+ magicpath-ai integrate <generatedName> --target <file> -o json # AI-powered integration
55
+ ```
56
+
57
+ ## Key Concepts
58
+
59
+ - Each component has a **generatedName** (e.g., `wispy-river-5234`) — this is the identifier for all operations
60
+ - Components are added as source code to `src/components/magicpath/<name>/`
61
+ - The `add` command returns `importStatement` and `usage` — use these in code
62
+ - The `integrate` command returns modified file contents but does NOT write them — the agent must write the files
63
+ - Use `add --inspect` to inspect source code without installing — don't use `add` just to read code
@@ -10,7 +10,10 @@ Add a MagicPath component to the current project.
10
10
  ## Usage
11
11
 
12
12
  ```bash
13
- # Preview what will be added
13
+ # Inspect source code without installing (read-only)
14
+ magicpath-ai add <generatedName> --output json --yes --inspect
15
+
16
+ # Preview what will be added (file list only)
14
17
  magicpath-ai add <generatedName> --output json --yes --dry-run
15
18
 
16
19
  # Actually add the component
@@ -25,10 +28,13 @@ magicpath-ai add <generatedName> --output json --yes
25
28
  | `--yes` | Recommended | Skip confirmation prompts |
26
29
  | `--overwrite` | No | Overwrite existing files |
27
30
  | `--path <path>` | No | Custom component path (default: `src/components/magicpath`) |
28
- | `--dry-run` | No | Preview without writing files |
31
+ | `--inspect` | No | Show full source code without installing (implies `--dry-run`). In JSON mode, returns file contents inline. |
32
+ | `--dry-run` | No | Preview file list without writing |
29
33
 
30
34
  ## Output (JSON)
31
35
 
36
+ **After install** (`--yes`, no `--dry-run`/`--inspect`):
37
+
32
38
  ```json
33
39
  {
34
40
  "component": "ComponentName",
@@ -41,6 +47,23 @@ magicpath-ai add <generatedName> --output json --yes
41
47
  }
42
48
  ```
43
49
 
50
+ **With `--inspect` or `--dry-run`** (no files written — includes source code inline):
51
+
52
+ ```json
53
+ {
54
+ "component": "ComponentName",
55
+ "generatedName": "wispy-river-5234",
56
+ "filesWritten": ["src/components/magicpath/component-name/Component.tsx"],
57
+ "files": [
58
+ { "path": "src/components/magicpath/component-name/Component.tsx", "name": "Component.tsx", "content": "// full source code" }
59
+ ],
60
+ "dependenciesInstalled": ["lucide-react"],
61
+ "importStatement": "import { Component } from '@/components/magicpath/component-name/Component';",
62
+ "usage": "<Component />",
63
+ "dryRun": true
64
+ }
65
+ ```
66
+
44
67
  ## Workflow
45
68
 
46
69
  1. Run `magicpath-ai list-projects --output json` to find your project
@@ -18,17 +18,62 @@ magicpath-ai whoami --output json
18
18
 
19
19
  ```bash
20
20
  magicpath-ai list-projects --output json
21
+ magicpath-ai list-projects --output json --limit 10
21
22
  ```
22
23
 
23
- Returns an array of projects with `id`, `name`, and `componentCount`.
24
+ Returns `{ projects, pagination }`. Each project has `id`, `name`, and `componentCount`.
25
+
26
+ | Parameter | Description | Default |
27
+ |-----------|-------------|---------|
28
+ | `--limit <n>` | Max results | all |
29
+ | `--offset <n>` | Skip first N results | 0 |
24
30
 
25
31
  ### List components in a project
26
32
 
27
33
  ```bash
28
34
  magicpath-ai list-components <projectId> --output json
35
+ magicpath-ai list-components <projectId> --output json --limit 20
36
+ magicpath-ai list-components <projectId> --output json --after <lastId>
37
+ ```
38
+
39
+ Returns `{ components, pagination }`. Each component has `id`, `name`, and `generatedName`. Pagination uses cursor-based paging: pass `pagination.lastId` as `--after` to get the next page.
40
+
41
+ | Parameter | Description | Default |
42
+ |-----------|-------------|---------|
43
+ | `--limit <n>` | Max results per page | 100 |
44
+ | `--after <id>` | Cursor: fetch after this component ID | none |
45
+ | `--sort-by <field>` | Sort by `name` or `createdAt` | name |
46
+ | `--order <dir>` | Sort direction: `asc` or `desc` | asc |
47
+
48
+ ## Output (JSON)
49
+
50
+ ### list-projects
51
+
52
+ ```json
53
+ {
54
+ "projects": [{ "id": "...", "name": "...", "componentCount": 5 }],
55
+ "pagination": { "total": 3, "limit": 100, "offset": 0, "hasMore": false }
56
+ }
57
+ ```
58
+
59
+ ### list-components
60
+
61
+ ```json
62
+ {
63
+ "components": [{ "id": "...", "name": "...", "generatedName": "wispy-river-5234" }],
64
+ "pagination": { "limit": 100, "hasNext": false, "lastId": null }
65
+ }
29
66
  ```
30
67
 
31
- Returns an array of components with `id`, `name`, and `generatedName`.
68
+ When `hasNext` is `true`, pass `lastId` as `--after` to fetch the next page.
69
+
70
+ ## Error Codes
71
+
72
+ | Code | Meaning | Suggestion |
73
+ |------|---------|------------|
74
+ | `NOT_AUTHENTICATED` | Not logged in | Run `magicpath-ai login` |
75
+ | `TOKEN_EXPIRED` | Token invalid | Run `magicpath-ai login` |
76
+ | `NOT_FOUND` | Project not found | Run `magicpath-ai list-projects` |
32
77
 
33
78
  ## Workflow
34
79