image-skill 0.1.25 → 0.1.26
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/CHANGELOG.md +7 -0
- package/bin/image-skill.mjs +326 -42
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,13 @@ provenance; this file is the human- and agent-readable release map.
|
|
|
6
6
|
|
|
7
7
|
## Unreleased
|
|
8
8
|
|
|
9
|
+
## 0.1.26 - 2026-06-02
|
|
10
|
+
|
|
11
|
+
- Fix (activation): public CLI subcommand help flags now return command help
|
|
12
|
+
instead of `INVALID_ARGUMENTS`. Fresh agents can run `signup --help`,
|
|
13
|
+
`credits buy --help`, `models show --help`, or similar discovery commands
|
|
14
|
+
without triggering auth, network, payment, or config validation.
|
|
15
|
+
|
|
9
16
|
## 0.1.25 - 2026-06-02
|
|
10
17
|
|
|
11
18
|
- Fix (activation): `create --guide` now probes whether the public CLI auth
|
package/bin/image-skill.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { Readable } from "node:stream";
|
|
|
7
7
|
import { pipeline } from "node:stream/promises";
|
|
8
8
|
import os from "node:os";
|
|
9
9
|
|
|
10
|
-
const VERSION = "0.1.
|
|
10
|
+
const VERSION = "0.1.26";
|
|
11
11
|
const PACKAGE_NAME = "image-skill";
|
|
12
12
|
const DEFAULT_API_BASE_URL = "https://api.image-skill.com";
|
|
13
13
|
const DEFAULT_DOCS_BASE_URL = "https://image-skill.com";
|
|
@@ -62,47 +62,16 @@ process.exitCode = result.exitCode;
|
|
|
62
62
|
async function main(rawArgv) {
|
|
63
63
|
const [command, ...rest] = rawArgv;
|
|
64
64
|
|
|
65
|
-
if (
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
commands: [
|
|
76
|
-
"doctor",
|
|
77
|
-
"trust",
|
|
78
|
-
"signup --agent --agent-contact --agent-name NAME --runtime RUNTIME",
|
|
79
|
-
"auth status",
|
|
80
|
-
"auth save",
|
|
81
|
-
"auth logout",
|
|
82
|
-
"whoami",
|
|
83
|
-
"usage quota",
|
|
84
|
-
"credits methods",
|
|
85
|
-
"credits packs list",
|
|
86
|
-
"credits quote",
|
|
87
|
-
"credits buy",
|
|
88
|
-
"credits status",
|
|
89
|
-
"models list",
|
|
90
|
-
"models show",
|
|
91
|
-
"create --guide",
|
|
92
|
-
"capabilities list",
|
|
93
|
-
"capabilities show",
|
|
94
|
-
"create",
|
|
95
|
-
"upload",
|
|
96
|
-
"edit",
|
|
97
|
-
"assets show",
|
|
98
|
-
"assets get",
|
|
99
|
-
"jobs show",
|
|
100
|
-
"jobs wait",
|
|
101
|
-
"activity list",
|
|
102
|
-
"activity show",
|
|
103
|
-
"feedback create",
|
|
104
|
-
],
|
|
105
|
-
});
|
|
65
|
+
if (command === undefined || command === "--help" || command === "-h") {
|
|
66
|
+
return publicCliHelp([]);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
if (command === "help") {
|
|
70
|
+
return publicCliHelp(helpTarget(rest));
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
if (hasHelpFlag(rest)) {
|
|
74
|
+
return publicCliHelp(helpTarget([command, ...rest]));
|
|
106
75
|
}
|
|
107
76
|
|
|
108
77
|
if (command === "version" || command === "--version" || command === "-v") {
|
|
@@ -173,6 +142,321 @@ async function main(rawArgv) {
|
|
|
173
142
|
}
|
|
174
143
|
}
|
|
175
144
|
|
|
145
|
+
function publicCliHelp(path) {
|
|
146
|
+
const key = helpKey(path);
|
|
147
|
+
const help =
|
|
148
|
+
commandHelpByKey(key) ?? commandHelpByKey(helpKey(path.slice(0, 1)));
|
|
149
|
+
if (help === undefined) {
|
|
150
|
+
return publicCliHelp([]);
|
|
151
|
+
}
|
|
152
|
+
return success(help.command, help);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function hasHelpFlag(argv) {
|
|
156
|
+
return argv.includes("--help") || argv.includes("-h");
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
function helpTarget(argv) {
|
|
160
|
+
return argv.filter(
|
|
161
|
+
(arg) => arg !== "--help" && arg !== "-h" && arg !== "--json",
|
|
162
|
+
);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
function helpKey(path) {
|
|
166
|
+
const clean = path.filter((arg) => !arg.startsWith("-"));
|
|
167
|
+
if (clean.length >= 2) {
|
|
168
|
+
return `${clean[0]} ${clean[1]}`;
|
|
169
|
+
}
|
|
170
|
+
return clean[0] ?? "";
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
function commandHelpByKey(key) {
|
|
174
|
+
return {
|
|
175
|
+
"": {
|
|
176
|
+
command: "image-skill help",
|
|
177
|
+
usage:
|
|
178
|
+
"image-skill <doctor|trust|signup|auth|whoami|usage|quota|credits|models|capabilities|create|upload|edit|assets|jobs|activity|feedback> --json",
|
|
179
|
+
docs_url: "https://image-skill.com/cli.md",
|
|
180
|
+
commands: [
|
|
181
|
+
"doctor",
|
|
182
|
+
"trust",
|
|
183
|
+
"signup --agent --agent-contact --agent-name NAME --runtime RUNTIME",
|
|
184
|
+
"auth status",
|
|
185
|
+
"auth save",
|
|
186
|
+
"auth logout",
|
|
187
|
+
"whoami",
|
|
188
|
+
"usage quota",
|
|
189
|
+
"credits methods",
|
|
190
|
+
"credits packs list",
|
|
191
|
+
"credits quote",
|
|
192
|
+
"credits buy",
|
|
193
|
+
"credits status",
|
|
194
|
+
"models list",
|
|
195
|
+
"models show",
|
|
196
|
+
"create --guide",
|
|
197
|
+
"capabilities list",
|
|
198
|
+
"capabilities show",
|
|
199
|
+
"create",
|
|
200
|
+
"upload",
|
|
201
|
+
"edit",
|
|
202
|
+
"assets show",
|
|
203
|
+
"assets get",
|
|
204
|
+
"jobs show",
|
|
205
|
+
"jobs wait",
|
|
206
|
+
"activity list",
|
|
207
|
+
"activity show",
|
|
208
|
+
"feedback create",
|
|
209
|
+
],
|
|
210
|
+
},
|
|
211
|
+
doctor: {
|
|
212
|
+
command: "image-skill doctor help",
|
|
213
|
+
usage: "image-skill doctor --json",
|
|
214
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-doctor",
|
|
215
|
+
description:
|
|
216
|
+
"Check hosted API reachability, CLI version, auth state, and health.",
|
|
217
|
+
},
|
|
218
|
+
trust: {
|
|
219
|
+
command: "image-skill trust help",
|
|
220
|
+
usage: "image-skill trust --json",
|
|
221
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-trust",
|
|
222
|
+
description:
|
|
223
|
+
"Return npm provenance, hosted contract hashes, API health, and model availability evidence.",
|
|
224
|
+
},
|
|
225
|
+
signup: {
|
|
226
|
+
command: "image-skill signup help",
|
|
227
|
+
usage:
|
|
228
|
+
"image-skill signup --agent --agent-contact AGENT_OR_OPERATOR_INBOX --agent-name NAME --runtime RUNTIME --json",
|
|
229
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-signup-agent",
|
|
230
|
+
required_flags: [
|
|
231
|
+
"--agent",
|
|
232
|
+
"--agent-contact",
|
|
233
|
+
"--agent-name",
|
|
234
|
+
"--runtime",
|
|
235
|
+
],
|
|
236
|
+
optional_flags: ["--show-token", "--no-save", "--token-stdin"],
|
|
237
|
+
},
|
|
238
|
+
auth: {
|
|
239
|
+
command: "image-skill auth help",
|
|
240
|
+
usage: "image-skill auth <status|save|logout> --json",
|
|
241
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-auth",
|
|
242
|
+
subcommands: ["status", "save", "logout"],
|
|
243
|
+
},
|
|
244
|
+
"auth status": {
|
|
245
|
+
command: "image-skill auth status help",
|
|
246
|
+
usage: "image-skill auth status --json",
|
|
247
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-auth",
|
|
248
|
+
},
|
|
249
|
+
"auth save": {
|
|
250
|
+
command: "image-skill auth save help",
|
|
251
|
+
usage: "image-skill auth save --token-stdin --json",
|
|
252
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-auth",
|
|
253
|
+
},
|
|
254
|
+
"auth logout": {
|
|
255
|
+
command: "image-skill auth logout help",
|
|
256
|
+
usage: "image-skill auth logout --json",
|
|
257
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-auth",
|
|
258
|
+
},
|
|
259
|
+
whoami: {
|
|
260
|
+
command: "image-skill whoami help",
|
|
261
|
+
usage: "image-skill whoami --json",
|
|
262
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-whoami",
|
|
263
|
+
},
|
|
264
|
+
usage: {
|
|
265
|
+
command: "image-skill usage help",
|
|
266
|
+
usage: "image-skill usage quota --json",
|
|
267
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-usage",
|
|
268
|
+
subcommands: ["quota"],
|
|
269
|
+
},
|
|
270
|
+
"usage quota": {
|
|
271
|
+
command: "image-skill usage quota help",
|
|
272
|
+
usage: "image-skill usage quota --json",
|
|
273
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-usage",
|
|
274
|
+
},
|
|
275
|
+
quota: {
|
|
276
|
+
command: "image-skill quota help",
|
|
277
|
+
usage: "image-skill quota --json",
|
|
278
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-quota",
|
|
279
|
+
},
|
|
280
|
+
credits: {
|
|
281
|
+
command: "image-skill credits help",
|
|
282
|
+
usage: "image-skill credits <methods|packs list|quote|buy|status> --json",
|
|
283
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
284
|
+
subcommands: ["methods", "packs list", "quote", "buy", "status"],
|
|
285
|
+
},
|
|
286
|
+
"credits methods": {
|
|
287
|
+
command: "image-skill credits methods help",
|
|
288
|
+
usage: "image-skill credits methods --json",
|
|
289
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
290
|
+
},
|
|
291
|
+
"credits packs": {
|
|
292
|
+
command: "image-skill credits packs help",
|
|
293
|
+
usage: "image-skill credits packs list --json",
|
|
294
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
295
|
+
subcommands: ["list"],
|
|
296
|
+
},
|
|
297
|
+
"credits quote": {
|
|
298
|
+
command: "image-skill credits quote help",
|
|
299
|
+
usage:
|
|
300
|
+
"image-skill credits quote --pack PACK_ID --payment-method stripe_x402.exact.usdc --json",
|
|
301
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
302
|
+
required_flags: ["--pack or --credits"],
|
|
303
|
+
optional_flags: ["--payment-method", "--idempotency-key"],
|
|
304
|
+
},
|
|
305
|
+
"credits buy": {
|
|
306
|
+
command: "image-skill credits buy help",
|
|
307
|
+
usage:
|
|
308
|
+
"image-skill credits buy --provider stripe_x402 --quote-id QUOTE_ID --idempotency-key KEY --json",
|
|
309
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
310
|
+
required_flags: ["--provider", "--quote-id", "--idempotency-key"],
|
|
311
|
+
supported_providers: ["stripe", "stripe_x402"],
|
|
312
|
+
},
|
|
313
|
+
"credits status": {
|
|
314
|
+
command: "image-skill credits status help",
|
|
315
|
+
usage:
|
|
316
|
+
"image-skill credits status --payment-attempt-id PAYMENT_ATTEMPT_ID --json",
|
|
317
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-credits",
|
|
318
|
+
required_flags: ["--payment-attempt-id"],
|
|
319
|
+
},
|
|
320
|
+
models: {
|
|
321
|
+
command: "image-skill models help",
|
|
322
|
+
usage: "image-skill models <list|show> --json",
|
|
323
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-models",
|
|
324
|
+
subcommands: ["list", "show"],
|
|
325
|
+
},
|
|
326
|
+
"models list": {
|
|
327
|
+
command: "image-skill models list help",
|
|
328
|
+
usage:
|
|
329
|
+
"image-skill models list --available --operation image.generate --json",
|
|
330
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-models",
|
|
331
|
+
},
|
|
332
|
+
"models show": {
|
|
333
|
+
command: "image-skill models show help",
|
|
334
|
+
usage: "image-skill models show MODEL_ID --json",
|
|
335
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-models",
|
|
336
|
+
},
|
|
337
|
+
capabilities: {
|
|
338
|
+
command: "image-skill capabilities help",
|
|
339
|
+
usage: "image-skill capabilities <list|show> --json",
|
|
340
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-capabilities",
|
|
341
|
+
subcommands: ["list", "show"],
|
|
342
|
+
},
|
|
343
|
+
"capabilities list": {
|
|
344
|
+
command: "image-skill capabilities list help",
|
|
345
|
+
usage: "image-skill capabilities list --json",
|
|
346
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-capabilities",
|
|
347
|
+
},
|
|
348
|
+
"capabilities show": {
|
|
349
|
+
command: "image-skill capabilities show help",
|
|
350
|
+
usage: "image-skill capabilities show CAPABILITY_ID --json",
|
|
351
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-capabilities",
|
|
352
|
+
},
|
|
353
|
+
create: {
|
|
354
|
+
command: "image-skill create help",
|
|
355
|
+
usage:
|
|
356
|
+
'image-skill create --prompt "..." --intent explore --max-estimated-usd-per-image 0.07 --json',
|
|
357
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-create",
|
|
358
|
+
optional_flags: [
|
|
359
|
+
"--guide",
|
|
360
|
+
"--dry-run",
|
|
361
|
+
"--model",
|
|
362
|
+
"--aspect-ratio",
|
|
363
|
+
"--output-count",
|
|
364
|
+
"--model-parameters-json",
|
|
365
|
+
"--idempotency-key",
|
|
366
|
+
],
|
|
367
|
+
},
|
|
368
|
+
upload: {
|
|
369
|
+
command: "image-skill upload help",
|
|
370
|
+
usage: "image-skill upload PATH_OR_URL --json",
|
|
371
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-upload",
|
|
372
|
+
},
|
|
373
|
+
edit: {
|
|
374
|
+
command: "image-skill edit help",
|
|
375
|
+
usage: 'image-skill edit --input image_... --prompt "..." --json',
|
|
376
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-edit",
|
|
377
|
+
required_flags: ["--input"],
|
|
378
|
+
optional_flags: [
|
|
379
|
+
"--prompt",
|
|
380
|
+
"--model",
|
|
381
|
+
"--mask",
|
|
382
|
+
"--element-reference",
|
|
383
|
+
"--model-parameters-json",
|
|
384
|
+
"--idempotency-key",
|
|
385
|
+
],
|
|
386
|
+
},
|
|
387
|
+
assets: {
|
|
388
|
+
command: "image-skill assets help",
|
|
389
|
+
usage: "image-skill assets <show|get> ASSET_ID_OR_URL --json",
|
|
390
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-assets",
|
|
391
|
+
subcommands: ["show", "get"],
|
|
392
|
+
},
|
|
393
|
+
"assets show": {
|
|
394
|
+
command: "image-skill assets show help",
|
|
395
|
+
usage: "image-skill assets show ASSET_ID_OR_URL --json",
|
|
396
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-assets",
|
|
397
|
+
},
|
|
398
|
+
"assets get": {
|
|
399
|
+
command: "image-skill assets get help",
|
|
400
|
+
usage: "image-skill assets get ASSET_ID_OR_URL --output PATH --json",
|
|
401
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-assets",
|
|
402
|
+
},
|
|
403
|
+
jobs: {
|
|
404
|
+
command: "image-skill jobs help",
|
|
405
|
+
usage: "image-skill jobs <show|wait> JOB_ID --json",
|
|
406
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-jobs",
|
|
407
|
+
subcommands: ["show", "wait"],
|
|
408
|
+
},
|
|
409
|
+
"jobs show": {
|
|
410
|
+
command: "image-skill jobs show help",
|
|
411
|
+
usage: "image-skill jobs show JOB_ID --json",
|
|
412
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-jobs",
|
|
413
|
+
},
|
|
414
|
+
"jobs wait": {
|
|
415
|
+
command: "image-skill jobs wait help",
|
|
416
|
+
usage: "image-skill jobs wait JOB_ID --timeout-ms 30000 --json",
|
|
417
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-jobs",
|
|
418
|
+
},
|
|
419
|
+
activity: {
|
|
420
|
+
command: "image-skill activity help",
|
|
421
|
+
usage: "image-skill activity <list|show> --json",
|
|
422
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-activity",
|
|
423
|
+
subcommands: ["list", "show"],
|
|
424
|
+
},
|
|
425
|
+
"activity list": {
|
|
426
|
+
command: "image-skill activity list help",
|
|
427
|
+
usage: "image-skill activity list --subject JOB_ID --json",
|
|
428
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-activity",
|
|
429
|
+
},
|
|
430
|
+
"activity show": {
|
|
431
|
+
command: "image-skill activity show help",
|
|
432
|
+
usage: "image-skill activity show REFERENCE --json",
|
|
433
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-activity",
|
|
434
|
+
},
|
|
435
|
+
feedback: {
|
|
436
|
+
command: "image-skill feedback help",
|
|
437
|
+
usage: "image-skill feedback create --title TITLE --body BODY --json",
|
|
438
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-feedback",
|
|
439
|
+
subcommands: ["create"],
|
|
440
|
+
},
|
|
441
|
+
"feedback create": {
|
|
442
|
+
command: "image-skill feedback create help",
|
|
443
|
+
usage:
|
|
444
|
+
"image-skill feedback create --title TITLE --body BODY --type user_feedback --json",
|
|
445
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-feedback",
|
|
446
|
+
optional_flags: [
|
|
447
|
+
"--title",
|
|
448
|
+
"--body",
|
|
449
|
+
"--type",
|
|
450
|
+
"--severity",
|
|
451
|
+
"--confidence",
|
|
452
|
+
"--expected",
|
|
453
|
+
"--actual",
|
|
454
|
+
"--command",
|
|
455
|
+
],
|
|
456
|
+
},
|
|
457
|
+
}[key];
|
|
458
|
+
}
|
|
459
|
+
|
|
176
460
|
async function doctor(argv) {
|
|
177
461
|
const args = parseArgs(argv);
|
|
178
462
|
const apiBaseUrl = apiBase(args);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "image-skill",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.26",
|
|
4
4
|
"description": "Zero-setup durable creative-media CLI for agents (image + video + audio + 3D): guide-first creation, model and cost inspection, owned URLs, JSON recovery, payments, reusable assets, and feedback.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": false,
|