@animaapp/cli 0.5.0 → 0.5.1
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.
- package/README.md +42 -42
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,11 +21,11 @@ directly.
|
|
|
21
21
|
> `api.agentgrid.io`.
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
npx @animaapp/cli login
|
|
25
|
-
npx @animaapp/cli create -t p2c -p "SaaS dashboard with sidebar and analytics"
|
|
24
|
+
npx @animaapp/cli@latest login
|
|
25
|
+
npx @animaapp/cli@latest create -t p2c -p "SaaS dashboard with sidebar and analytics"
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
> Examples use `npx @animaapp/cli <command>`. If you install the package globally
|
|
28
|
+
> Examples use `npx @animaapp/cli@latest <command>`. If you install the package globally
|
|
29
29
|
> (`npm i -g @animaapp/cli`), the same commands are available as `anima <command>` —
|
|
30
30
|
> the shorthand used in prose below.
|
|
31
31
|
|
|
@@ -51,7 +51,7 @@ identity (renewal is just logging in again).
|
|
|
51
51
|
**Interactive agent (Claude Code, Cursor, a dev at a terminal):**
|
|
52
52
|
|
|
53
53
|
```bash
|
|
54
|
-
npx @animaapp/cli login
|
|
54
|
+
npx @animaapp/cli@latest login
|
|
55
55
|
```
|
|
56
56
|
|
|
57
57
|
In a terminal it also tries to open the verification page for you (disable with
|
|
@@ -62,7 +62,7 @@ and relay the verification step. The CLI emits a `verification_required` event t
|
|
|
62
62
|
**stderr** so your agent can surface it to its human while stdout stays clean:
|
|
63
63
|
|
|
64
64
|
```bash
|
|
65
|
-
npx @animaapp/cli login --json
|
|
65
|
+
npx @animaapp/cli@latest login --json
|
|
66
66
|
# stderr:
|
|
67
67
|
# {"event":"verification_required","verificationUri":"https://.../device",
|
|
68
68
|
# "verificationUriComplete":"https://.../device?user_code=ABCD-1234",
|
|
@@ -101,20 +101,20 @@ Resolution priority: `ANIMA_API_TOKEN` env var → stored credentials file → e
|
|
|
101
101
|
|
|
102
102
|
```bash
|
|
103
103
|
# 1. Connect (once)
|
|
104
|
-
npx @animaapp/cli login
|
|
104
|
+
npx @animaapp/cli@latest login
|
|
105
105
|
|
|
106
106
|
# 2. Create from a prompt / URL / Figma
|
|
107
|
-
npx @animaapp/cli create -t p2c -p "E-commerce product page with cart"
|
|
108
|
-
npx @animaapp/cli create -t l2c -u https://linear.app
|
|
109
|
-
npx @animaapp/cli create -t f2c --file-key <key> --nodes 42:15
|
|
107
|
+
npx @animaapp/cli@latest create -t p2c -p "E-commerce product page with cart"
|
|
108
|
+
npx @animaapp/cli@latest create -t l2c -u https://linear.app
|
|
109
|
+
npx @animaapp/cli@latest create -t f2c --file-key <key> --nodes 42:15
|
|
110
110
|
|
|
111
111
|
# 3. Or bring YOUR OWN code: import it in one step -> publish
|
|
112
|
-
npx @animaapp/cli create -t import --from ./my-project
|
|
113
|
-
npx @animaapp/cli publish <sessionId>
|
|
112
|
+
npx @animaapp/cli@latest create -t import --from ./my-project
|
|
113
|
+
npx @animaapp/cli@latest publish <sessionId>
|
|
114
114
|
|
|
115
115
|
# ...or start empty and push over git
|
|
116
|
-
npx @animaapp/cli create -t empty --framework react --name "My project"
|
|
117
|
-
npx @animaapp/cli get-git-token <sessionId> # then: git clone <url>, add code, git push
|
|
116
|
+
npx @animaapp/cli@latest create -t empty --framework react --name "My project"
|
|
117
|
+
npx @animaapp/cli@latest get-git-token <sessionId> # then: git clone <url>, add code, git push
|
|
118
118
|
```
|
|
119
119
|
|
|
120
120
|
---
|
|
@@ -124,11 +124,11 @@ npx @animaapp/cli get-git-token <sessionId> # then: git clone <url>, add code,
|
|
|
124
124
|
### `login` — connect this machine
|
|
125
125
|
|
|
126
126
|
```bash
|
|
127
|
-
npx @animaapp/cli login
|
|
128
|
-
npx @animaapp/cli login --client-name "My CI Agent" # label on the consent screen
|
|
129
|
-
npx @animaapp/cli login --no-open # don't auto-open the browser
|
|
130
|
-
npx @animaapp/cli login --print-mcp-config # also emit an MCP server config
|
|
131
|
-
npx @animaapp/cli login --invite <url-or-code> # redeem a pre-approved invite — no approval step
|
|
127
|
+
npx @animaapp/cli@latest login
|
|
128
|
+
npx @animaapp/cli@latest login --client-name "My CI Agent" # label on the consent screen
|
|
129
|
+
npx @animaapp/cli@latest login --no-open # don't auto-open the browser
|
|
130
|
+
npx @animaapp/cli@latest login --print-mcp-config # also emit an MCP server config
|
|
131
|
+
npx @animaapp/cli@latest login --invite <url-or-code> # redeem a pre-approved invite — no approval step
|
|
132
132
|
```
|
|
133
133
|
|
|
134
134
|
| Option | Description | Default |
|
|
@@ -141,7 +141,7 @@ npx @animaapp/cli login --invite <url-or-code> # redeem a pre-approved i
|
|
|
141
141
|
### `mcp-config` — print your MCP server config (no new login)
|
|
142
142
|
|
|
143
143
|
```bash
|
|
144
|
-
npx @animaapp/cli mcp-config
|
|
144
|
+
npx @animaapp/cli@latest mcp-config
|
|
145
145
|
```
|
|
146
146
|
|
|
147
147
|
Prints a ready-to-paste remote MCP server entry (points at `/v1/mcp` with a
|
|
@@ -158,11 +158,11 @@ by `mcp-config` and `--print-mcp-config`.
|
|
|
158
158
|
### `create` — a playground for your code, or AI-generated
|
|
159
159
|
|
|
160
160
|
```bash
|
|
161
|
-
npx @animaapp/cli create -t import --from ./my-project # import YOUR code (instant)
|
|
162
|
-
npx @animaapp/cli create -t empty --framework react --name "My project" # empty repo you push to (instant)
|
|
163
|
-
npx @animaapp/cli create -t p2c -p "Analytics dashboard with a sidebar"
|
|
164
|
-
npx @animaapp/cli create -t l2c -u https://stripe.com
|
|
165
|
-
npx @animaapp/cli create -t f2c --file-key <key> --nodes 42:15
|
|
161
|
+
npx @animaapp/cli@latest create -t import --from ./my-project # import YOUR code (instant)
|
|
162
|
+
npx @animaapp/cli@latest create -t empty --framework react --name "My project" # empty repo you push to (instant)
|
|
163
|
+
npx @animaapp/cli@latest create -t p2c -p "Analytics dashboard with a sidebar"
|
|
164
|
+
npx @animaapp/cli@latest create -t l2c -u https://stripe.com
|
|
165
|
+
npx @animaapp/cli@latest create -t f2c --file-key <key> --nodes 42:15
|
|
166
166
|
```
|
|
167
167
|
|
|
168
168
|
`-t import` is the one-step upload path: your folder (or .zip) becomes the
|
|
@@ -194,7 +194,7 @@ returns a clear error for unsupported combinations.
|
|
|
194
194
|
### `codegen` — Figma to local files (no playground)
|
|
195
195
|
|
|
196
196
|
```bash
|
|
197
|
-
npx @animaapp/cli codegen --file-key <key-or-url> --nodes 42:15 -o ./components
|
|
197
|
+
npx @animaapp/cli@latest codegen --file-key <key-or-url> --nodes 42:15 -o ./components
|
|
198
198
|
```
|
|
199
199
|
|
|
200
200
|
| Option | Values | Default |
|
|
@@ -216,8 +216,8 @@ doesn't need it — the playground is already visible at its `playgroundUrl`.
|
|
|
216
216
|
otherwise share the playground URL and offer publishing as a follow-up.
|
|
217
217
|
|
|
218
218
|
```bash
|
|
219
|
-
npx @animaapp/cli publish <sessionId>
|
|
220
|
-
npx @animaapp/cli publish <sessionId> --mode designSystem --package-name my-ds
|
|
219
|
+
npx @animaapp/cli@latest publish <sessionId>
|
|
220
|
+
npx @animaapp/cli@latest publish <sessionId> --mode designSystem --package-name my-ds
|
|
221
221
|
```
|
|
222
222
|
|
|
223
223
|
| Option | Values | Default |
|
|
@@ -229,7 +229,7 @@ npx @animaapp/cli publish <sessionId> --mode designSystem --package-name my-ds
|
|
|
229
229
|
### `unpublish` — take a published playground offline
|
|
230
230
|
|
|
231
231
|
```bash
|
|
232
|
-
npx @animaapp/cli unpublish <sessionId>
|
|
232
|
+
npx @animaapp/cli@latest unpublish <sessionId>
|
|
233
233
|
```
|
|
234
234
|
|
|
235
235
|
The inverse of `publish`: clears the live URL so the deployed site stops being
|
|
@@ -239,9 +239,9 @@ again reuses the same subdomain.
|
|
|
239
239
|
### `update` — rename or change visibility (metadata only)
|
|
240
240
|
|
|
241
241
|
```bash
|
|
242
|
-
npx @animaapp/cli update <sessionId> --name "New name"
|
|
243
|
-
npx @animaapp/cli update <sessionId> --privacy public # anyone with the link
|
|
244
|
-
npx @animaapp/cli update <sessionId> --privacy private # team only
|
|
242
|
+
npx @animaapp/cli@latest update <sessionId> --name "New name"
|
|
243
|
+
npx @animaapp/cli@latest update <sessionId> --privacy public # anyone with the link
|
|
244
|
+
npx @animaapp/cli@latest update <sessionId> --privacy private # team only
|
|
245
245
|
```
|
|
246
246
|
|
|
247
247
|
Never touches code or content — that's the git flow (`get-git-token`).
|
|
@@ -249,7 +249,7 @@ Never touches code or content — that's the git flow (`get-git-token`).
|
|
|
249
249
|
### `get-git-token` — read/edit a playground's code over git
|
|
250
250
|
|
|
251
251
|
```bash
|
|
252
|
-
npx @animaapp/cli get-git-token https://dev.animaapp.com/chat/<sessionId>
|
|
252
|
+
npx @animaapp/cli@latest get-git-token https://dev.animaapp.com/chat/<sessionId>
|
|
253
253
|
```
|
|
254
254
|
|
|
255
255
|
A playground **is** a git repository, and git is the only way to read or edit
|
|
@@ -269,7 +269,7 @@ secret, and re-mint rather than store it.
|
|
|
269
269
|
### `logout` — disconnect this machine
|
|
270
270
|
|
|
271
271
|
```bash
|
|
272
|
-
npx @animaapp/cli logout
|
|
272
|
+
npx @animaapp/cli@latest logout
|
|
273
273
|
```
|
|
274
274
|
|
|
275
275
|
A full local reset: clears **all** stored credentials (AgentGrid token, Figma
|
|
@@ -286,10 +286,10 @@ Note: `logout` removes this file too (full machine reset); `login --invite`
|
|
|
286
286
|
writes `api-url` automatically from the invite URL's origin.
|
|
287
287
|
|
|
288
288
|
```bash
|
|
289
|
-
npx @animaapp/cli config set api-url http://localhost:3789
|
|
290
|
-
npx @animaapp/cli config get api-url
|
|
291
|
-
npx @animaapp/cli config list
|
|
292
|
-
npx @animaapp/cli config unset api-url
|
|
289
|
+
npx @animaapp/cli@latest config set api-url http://localhost:3789
|
|
290
|
+
npx @animaapp/cli@latest config get api-url
|
|
291
|
+
npx @animaapp/cli@latest config list
|
|
292
|
+
npx @animaapp/cli@latest config unset api-url
|
|
293
293
|
```
|
|
294
294
|
|
|
295
295
|
The API URL resolves in this order: **`--api-url` flag → `ANIMA_API_URL` env →
|
|
@@ -298,9 +298,9 @@ The API URL resolves in this order: **`--api-url` flag → `ANIMA_API_URL` env
|
|
|
298
298
|
### `auth` — inspect or manage credentials
|
|
299
299
|
|
|
300
300
|
```bash
|
|
301
|
-
npx @animaapp/cli auth --status # token type + expiry
|
|
302
|
-
npx @animaapp/cli auth --figma-token <T> # save a Figma token for codegen / f2c
|
|
303
|
-
npx @animaapp/cli auth --logout # alias for `anima logout`
|
|
301
|
+
npx @animaapp/cli@latest auth --status # token type + expiry
|
|
302
|
+
npx @animaapp/cli@latest auth --figma-token <T> # save a Figma token for codegen / f2c
|
|
303
|
+
npx @animaapp/cli@latest auth --logout # alias for `anima logout`
|
|
304
304
|
```
|
|
305
305
|
|
|
306
306
|
---
|
|
@@ -334,7 +334,7 @@ default. Set it once with `config` instead of passing `--api-url` every time.
|
|
|
334
334
|
a clean, parseable result.
|
|
335
335
|
|
|
336
336
|
```bash
|
|
337
|
-
npx @animaapp/cli create -t p2c -p "dashboard" --json 2>/dev/null | jq .playgroundUrl
|
|
337
|
+
npx @animaapp/cli@latest create -t p2c -p "dashboard" --json 2>/dev/null | jq .playgroundUrl
|
|
338
338
|
```
|
|
339
339
|
|
|
340
340
|
---
|
|
@@ -346,7 +346,7 @@ HTTP requests/responses, MCP connect and tool calls, and errors — to a file yo
|
|
|
346
346
|
can inspect or share. Tokens and auth headers are redacted.
|
|
347
347
|
|
|
348
348
|
```bash
|
|
349
|
-
npx @animaapp/cli login --log-file ./anima-debug.log
|
|
349
|
+
npx @animaapp/cli@latest login --log-file ./anima-debug.log
|
|
350
350
|
```
|
|
351
351
|
|
|
352
352
|
**`HTTP 404` on `login`** means the API at `--api-url` doesn't have the device
|