image-skill 0.1.33 → 0.1.34
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 +8 -0
- package/bin/image-skill.mjs +21 -11
- package/package.json +1 -1
- package/skills/ai-audio-generation/SKILL.md +1 -1
- package/skills/ai-image-generation/SKILL.md +1 -1
- package/skills/ai-video-generation/SKILL.md +1 -1
- package/skills/creative-media/SKILL.md +1 -1
- package/skills/image-edit/SKILL.md +3 -3
- package/skills/image-generation/SKILL.md +1 -1
- package/skills/image-to-3d/SKILL.md +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,14 @@ This changelog tracks the public `image-skill` CLI package and public skill
|
|
|
4
4
|
mirror. The npm package metadata remains the authority for tarball integrity and
|
|
5
5
|
provenance; this file is the human- and agent-readable release map.
|
|
6
6
|
|
|
7
|
+
## 0.1.34 - 2026-06-04
|
|
8
|
+
|
|
9
|
+
- Fix (guide): `create --guide --model openai.gpt-image-2-edit` now returns an
|
|
10
|
+
edit-shaped next command with an input placeholder and prompt instead of
|
|
11
|
+
rejecting the requested edit model as non-create. The `image-edit` and
|
|
12
|
+
`image-to-3d` intent skills now start from the guide-first zero-setup path,
|
|
13
|
+
and their advertised live command caps match current model-priced credits.
|
|
14
|
+
|
|
7
15
|
## 0.1.33 - 2026-06-04
|
|
8
16
|
|
|
9
17
|
- Fix (guide): public `create --guide` replay commands now preserve explicit
|
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.34";
|
|
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";
|
|
@@ -1646,7 +1646,9 @@ async function createGuide(args) {
|
|
|
1646
1646
|
requestedIntent,
|
|
1647
1647
|
)
|
|
1648
1648
|
: createGuideSelectedModelRequiresInputImage(selected)
|
|
1649
|
-
?
|
|
1649
|
+
? selected.modality === "3d"
|
|
1650
|
+
? "requested executable image-to-3D model"
|
|
1651
|
+
: "requested executable input-image edit model"
|
|
1650
1652
|
: "requested executable create model",
|
|
1651
1653
|
},
|
|
1652
1654
|
cost: {
|
|
@@ -1702,15 +1704,14 @@ function selectCreateGuideModel(
|
|
|
1702
1704
|
model?.execution?.model_execution_status === "executable" &&
|
|
1703
1705
|
Array.isArray(model?.supports) &&
|
|
1704
1706
|
model.supports.includes("create");
|
|
1705
|
-
const
|
|
1707
|
+
const isExecutableInputImageEdit = (model) =>
|
|
1706
1708
|
model?.status === "available" &&
|
|
1707
1709
|
model?.execution?.model_execution_status === "executable" &&
|
|
1708
|
-
model?.modality === "3d" &&
|
|
1709
1710
|
Array.isArray(model?.supports) &&
|
|
1710
|
-
model.supports.includes("variation") &&
|
|
1711
|
+
(model.supports.includes("edit") || model.supports.includes("variation")) &&
|
|
1711
1712
|
createGuideSelectedModelRequiresInputImage(model);
|
|
1712
1713
|
const isExecutableGuideModel = (model) =>
|
|
1713
|
-
isExecutableCreate(model) ||
|
|
1714
|
+
isExecutableCreate(model) || isExecutableInputImageEdit(model);
|
|
1714
1715
|
if (requestedModelId !== null) {
|
|
1715
1716
|
const requested = models.find((model) => model.id === requestedModelId);
|
|
1716
1717
|
return requested !== undefined && isExecutableGuideModel(requested)
|
|
@@ -1720,7 +1721,10 @@ function selectCreateGuideModel(
|
|
|
1720
1721
|
const candidates = models.filter(isExecutableCreate);
|
|
1721
1722
|
if (createGuideImplies3d({ prompt, intent })) {
|
|
1722
1723
|
const eligible3d = guideCandidatesWithinBudget({
|
|
1723
|
-
candidates: models.filter(
|
|
1724
|
+
candidates: models.filter(
|
|
1725
|
+
(model) =>
|
|
1726
|
+
model?.modality === "3d" && isExecutableInputImageEdit(model),
|
|
1727
|
+
),
|
|
1724
1728
|
maxEstimatedUsdPerImage,
|
|
1725
1729
|
});
|
|
1726
1730
|
const threeDimensional = eligible3d[0];
|
|
@@ -1859,7 +1863,9 @@ function createGuideSuggestedAspectRatio(model) {
|
|
|
1859
1863
|
|
|
1860
1864
|
function createGuideSelectedModelRequiresInputImage(model) {
|
|
1861
1865
|
return (
|
|
1862
|
-
model?.
|
|
1866
|
+
model?.media?.input?.images?.required === true &&
|
|
1867
|
+
Array.isArray(model?.supports) &&
|
|
1868
|
+
(model.supports.includes("edit") || model.supports.includes("variation"))
|
|
1863
1869
|
);
|
|
1864
1870
|
}
|
|
1865
1871
|
|
|
@@ -2603,8 +2609,9 @@ function createGuideNextCommand(stage, input) {
|
|
|
2603
2609
|
);
|
|
2604
2610
|
}
|
|
2605
2611
|
if (createGuideSelectedModelRequiresInputImage(input.selected)) {
|
|
2606
|
-
return
|
|
2612
|
+
return renderInputImageGuideCommand({
|
|
2607
2613
|
modelId: input.selected.id,
|
|
2614
|
+
prompt: input.prompt,
|
|
2608
2615
|
budgetGuard: input.budgetGuard,
|
|
2609
2616
|
dryRun: false,
|
|
2610
2617
|
idempotencyKey: `edit-guide-${Date.now()}-${randomBytes(4).toString("hex")}`,
|
|
@@ -2654,8 +2661,9 @@ function createGuideEscapeHatches(input) {
|
|
|
2654
2661
|
"create --dry-run --prompt PROMPT --json",
|
|
2655
2662
|
)
|
|
2656
2663
|
: createGuideSelectedModelRequiresInputImage(input.selected)
|
|
2657
|
-
?
|
|
2664
|
+
? renderInputImageGuideCommand({
|
|
2658
2665
|
modelId: input.selected.id,
|
|
2666
|
+
prompt: input.prompt,
|
|
2659
2667
|
budgetGuard: input.budgetGuard,
|
|
2660
2668
|
dryRun: true,
|
|
2661
2669
|
apiBaseUrl: input.apiBaseUrl,
|
|
@@ -2751,7 +2759,8 @@ function guidePaymentCommandByKind(commands, kind, commandPrefix = null) {
|
|
|
2751
2759
|
return renderGuidePrefixedCommand(commandPrefix, command);
|
|
2752
2760
|
}
|
|
2753
2761
|
|
|
2754
|
-
function
|
|
2762
|
+
function renderInputImageGuideCommand(input) {
|
|
2763
|
+
const promptless = PROMPTLESS_EDIT_MODEL_IDS.has(input.modelId);
|
|
2755
2764
|
return [
|
|
2756
2765
|
input.commandPrefix ?? "image-skill",
|
|
2757
2766
|
"edit",
|
|
@@ -2760,6 +2769,7 @@ function renderImageTo3dGuideCommand(input) {
|
|
|
2760
2769
|
"image_...",
|
|
2761
2770
|
"--model",
|
|
2762
2771
|
shellQuote(input.modelId),
|
|
2772
|
+
...(promptless ? [] : ["--prompt", shellQuote(input.prompt)]),
|
|
2763
2773
|
"--max-estimated-usd-per-image",
|
|
2764
2774
|
shellQuote(formatUsd(input.budgetGuard)),
|
|
2765
2775
|
...(input.idempotencyKey === undefined || input.idempotencyKey === null
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "image-skill",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.34",
|
|
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,
|
|
@@ -25,7 +25,7 @@ This is an intent-named Image Skill entry for agents searching for audio generat
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for AI audio generation, text-to-audio, music generation, sound design, ambience, effects, or durable hosted audio output.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
@@ -25,7 +25,7 @@ This is an intent-named Image Skill entry for agents searching for image generat
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for AI image generation, text-to-image, prompt-to-image, generated illustrations, concept art, product images, or any durable agent-created image.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
@@ -25,7 +25,7 @@ This is an intent-named Image Skill entry for agents searching for video generat
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for AI video generation, text-to-video, generated motion, animated concepts, or durable hosted video output.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
@@ -25,7 +25,7 @@ This is an intent-named Image Skill entry for agents searching for creative medi
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for generative media, creative media, generated assets across modalities, or a single agent-facing runtime for image, edit, video, audio, and 3D work.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
@@ -25,18 +25,18 @@ This is an intent-named Image Skill entry for agents searching for image editing
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks to edit, vary, restyle, transform, or repair an existing image, including image-to-image work and model-specific edit parameters.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
npm_config_update_notifier=false npx -y image-skill@latest
|
|
33
|
+
npm_config_update_notifier=false npx -y image-skill@latest create --guide --model openai.gpt-image-2-edit --prompt "replace the background but keep the subject"
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
## Main Runtime Command
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
npm_config_update_notifier=false npx -y image-skill@latest edit --input image_... --model openai.gpt-image-2-edit --prompt "EDIT_PROMPT" --max-estimated-usd-per-image 0.
|
|
39
|
+
npm_config_update_notifier=false npx -y image-skill@latest edit --input image_... --model openai.gpt-image-2-edit --prompt "EDIT_PROMPT" --max-estimated-usd-per-image 0.25 --json
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
## Install This Intent Skill
|
|
@@ -25,7 +25,7 @@ This is an intent-named Image Skill entry for agents searching for image generat
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for image generation, generated images, AI images, text-to-image, prompt-to-image, generated illustrations, concept art, product images, or any durable agent-created image.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
@@ -25,18 +25,18 @@ This is an intent-named Image Skill entry for agents searching for image-to-3D a
|
|
|
25
25
|
|
|
26
26
|
Use this skill when the task asks for image-to-3D, 3D asset generation from an image, glb mesh output, or a durable model asset derived from existing visual input.
|
|
27
27
|
|
|
28
|
-
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend
|
|
28
|
+
Do not bring provider API keys, create provider accounts, run a local model server, or wire a separate billing account for this task. Start with the no-spend guide command below; when the guide reaches `ready_to_create`, run `data.next_command` only if media spend is allowed, otherwise run `data.recommended_no_spend_command` to verify safely. Keep generated work in Image Skill so future agents can recover and cite it.
|
|
29
29
|
|
|
30
30
|
## First Command
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
npm_config_update_notifier=false npx -y image-skill@latest
|
|
33
|
+
npm_config_update_notifier=false npx -y image-skill@latest create --guide --model fal.trellis-image-to-3d --prompt "turn one product photo into a textured 3d mesh"
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
## Main Runtime Command
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
npm_config_update_notifier=false npx -y image-skill@latest edit --input image_... --model fal.trellis-image-to-3d --max-estimated-usd-per-image 0.
|
|
39
|
+
npm_config_update_notifier=false npx -y image-skill@latest edit --input image_... --model fal.trellis-image-to-3d --max-estimated-usd-per-image 0.04 --json
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
## Install This Intent Skill
|