image-skill 0.1.2 → 0.1.3
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 +1 -1
- package/bin/image-skill.mjs +17 -7
- package/cli.md +24 -9
- package/llms.txt +8 -5
- package/package.json +1 -1
- package/skill.md +12 -4
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ Install the executable CLI from npm:
|
|
|
16
16
|
```bash
|
|
17
17
|
npm install -g image-skill
|
|
18
18
|
image-skill doctor --json
|
|
19
|
-
image-skill signup --agent --human-email
|
|
19
|
+
image-skill signup --agent --human-email CONTACT_OR_SPONSOR_EMAIL --agent-name creative-agent --runtime openclaw --save --json
|
|
20
20
|
image-skill credits methods --json
|
|
21
21
|
image-skill credits packs list --json
|
|
22
22
|
image-skill credits quote --pack starter-500 --payment-method stripe_checkout --idempotency-key first-topup-001 --json
|
package/bin/image-skill.mjs
CHANGED
|
@@ -7,13 +7,17 @@ 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.3";
|
|
11
11
|
const DEFAULT_API_BASE_URL = "https://api.image-skill.com";
|
|
12
12
|
const DEFAULT_CONFIG_PATH = join(
|
|
13
13
|
process.env.XDG_CONFIG_HOME ?? join(os.homedir(), ".config"),
|
|
14
14
|
"image-skill",
|
|
15
15
|
"config.json",
|
|
16
16
|
);
|
|
17
|
+
const SIGNUP_SUGGESTED_COMMAND =
|
|
18
|
+
"image-skill signup --agent --human-email CONTACT_OR_SPONSOR_EMAIL --agent-name NAME --runtime RUNTIME --save --json";
|
|
19
|
+
const SIGNUP_CONTACT_GUIDANCE =
|
|
20
|
+
"Use --human-email for the accountable contact or sponsor inbox for this restricted agent identity. If no individual human is in the loop, use a durable operator/team/agent inbox that can receive future claim, billing, or abuse notices; do not invent a person or use a throwaway inbox.";
|
|
17
21
|
|
|
18
22
|
const argv = process.argv.slice(2);
|
|
19
23
|
const result = await main(argv);
|
|
@@ -173,9 +177,17 @@ async function signup(argv) {
|
|
|
173
177
|
const agentName = flagString(args, "agent-name");
|
|
174
178
|
const runtime = flagString(args, "runtime");
|
|
175
179
|
if (humanEmail === null || agentName === null || runtime === null) {
|
|
176
|
-
return
|
|
180
|
+
return failure(
|
|
177
181
|
"image-skill signup",
|
|
178
|
-
|
|
182
|
+
2,
|
|
183
|
+
"INVALID_ARGUMENTS",
|
|
184
|
+
`signup requires --human-email, --agent-name, and --runtime. ${SIGNUP_CONTACT_GUIDANCE}`,
|
|
185
|
+
false,
|
|
186
|
+
{
|
|
187
|
+
required_flags: ["--human-email", "--agent-name", "--runtime"],
|
|
188
|
+
suggested_command: SIGNUP_SUGGESTED_COMMAND,
|
|
189
|
+
docs_url: "https://image-skill.com/cli.md#image-skill-signup-agent",
|
|
190
|
+
},
|
|
179
191
|
);
|
|
180
192
|
}
|
|
181
193
|
const save = flagBool(args, "save");
|
|
@@ -204,8 +216,7 @@ async function signup(argv) {
|
|
|
204
216
|
"signup --save requires a returned hosted token",
|
|
205
217
|
true,
|
|
206
218
|
{
|
|
207
|
-
suggested_command:
|
|
208
|
-
"image-skill signup --agent --human-email EMAIL --agent-name NAME --runtime RUNTIME --save --json",
|
|
219
|
+
suggested_command: SIGNUP_SUGGESTED_COMMAND,
|
|
209
220
|
docs_url: "https://image-skill.com/cli.md#image-skill-signup-agent",
|
|
210
221
|
},
|
|
211
222
|
);
|
|
@@ -1198,8 +1209,7 @@ async function resolveToken(args, options = {}) {
|
|
|
1198
1209
|
"hosted command requires auth; run signup --save, set IMAGE_SKILL_TOKEN, or pass --token-stdin",
|
|
1199
1210
|
false,
|
|
1200
1211
|
{
|
|
1201
|
-
suggested_command:
|
|
1202
|
-
"image-skill signup --agent --human-email EMAIL --agent-name NAME --runtime RUNTIME --save --json",
|
|
1212
|
+
suggested_command: SIGNUP_SUGGESTED_COMMAND,
|
|
1203
1213
|
docs_url: "https://image-skill.com/cli.md#image-skill-signup-agent",
|
|
1204
1214
|
},
|
|
1205
1215
|
),
|
package/cli.md
CHANGED
|
@@ -66,6 +66,14 @@ permissions and redacts it from stdout. Use `--show-token` only when the agent
|
|
|
66
66
|
runtime has a separate secret store and needs the raw token once. Do not paste
|
|
67
67
|
tokens into prompts, logs, issue text, or feedback.
|
|
68
68
|
|
|
69
|
+
In this preview contract, `--human-email` is the accountable contact or sponsor
|
|
70
|
+
inbox for the restricted agent identity. If no individual human is in the loop,
|
|
71
|
+
use a durable operator/team/agent inbox that can receive future claim, billing,
|
|
72
|
+
or abuse notices. Do not invent a person or use a throwaway inbox.
|
|
73
|
+
`example.invalid` addresses are only appropriate inside documented harness or
|
|
74
|
+
proof runs. Agent-contact-backed signup is planned, but the currently published
|
|
75
|
+
CLI uses `--human-email`.
|
|
76
|
+
|
|
69
77
|
For shell-based agent runtimes, store the token outside prompts and then expose
|
|
70
78
|
it as:
|
|
71
79
|
|
|
@@ -819,15 +827,22 @@ Activity `type` values are stable public contract values. Do not infer new
|
|
|
819
827
|
event names from provider responses or telemetry logs; use only the registry
|
|
820
828
|
below.
|
|
821
829
|
|
|
822
|
-
| Event type | Subject | Operation | Emitted when
|
|
823
|
-
| ---------------------------------- | ---------- | ----------- |
|
|
824
|
-
| `job.completed` | `job` | create/edit | A hosted create or edit job reaches a terminal state.
|
|
825
|
-
| `asset.created` | `asset` | create/edit | A hosted create or edit produces an output asset.
|
|
826
|
-
| `asset.uploaded` | `asset` | upload | A public edit workflow uploads or imports input media.
|
|
827
|
-
| `usage.credit_consumed` | `usage` | usage | A creative operation records a preview-credit entry.
|
|
828
|
-
| `feedback.created` | `feedback` | feedback | Hosted agent feedback is accepted into product memory.
|
|
829
|
-
| `
|
|
830
|
-
| `
|
|
830
|
+
| Event type | Subject | Operation | Emitted when | Stable links |
|
|
831
|
+
| ---------------------------------- | ---------- | ----------- | ----------------------------------------------------------------- | ------------------------------------------------------- |
|
|
832
|
+
| `job.completed` | `job` | create/edit | A hosted create or edit job reaches a terminal state. | `job_id`, `asset_ids`, `usage_event_id` |
|
|
833
|
+
| `asset.created` | `asset` | create/edit | A hosted create or edit produces an output asset. | `job_id`, `asset_ids`, `usage_event_id` |
|
|
834
|
+
| `asset.uploaded` | `asset` | upload | A public edit workflow uploads or imports input media. | `job_id`, `asset_ids`, `usage_event_id` |
|
|
835
|
+
| `usage.credit_consumed` | `usage` | usage | A creative operation records a preview-credit entry. | `job_id`, `usage_event_id` |
|
|
836
|
+
| `feedback.created` | `feedback` | feedback | Hosted agent feedback is accepted into product memory. | `feedback_id` |
|
|
837
|
+
| `feedback.github_queue.processed` | `feedback` | feedback | Feedback is processed by the GitHub implementation queue handoff. | `feedback_id` |
|
|
838
|
+
| `payment.checkout_session.created` | `payment` | payment | A Stripe Checkout session is created and awaits external action. | `quote_id`, `payment_attempt_id`, `checkout_session_id` |
|
|
839
|
+
| `credits.payment_backed_granted` | `credit` | credits | Verified payment or fake-payment proof grants paid credits. | `quote_id`, `receipt_id`, `credit_event_id` |
|
|
840
|
+
|
|
841
|
+
`feedback.github_queue.processed` includes `details.github_queue` with
|
|
842
|
+
machine-readable lifecycle fields such as `state`, `reason`, `issue_urls`,
|
|
843
|
+
`issue_numbers`, `mode`, and `github_mutation`. Agents should use it to learn
|
|
844
|
+
whether submitted feedback was promoted, skipped, deduped, blocked, or already
|
|
845
|
+
mirrored without reading private repository artifacts.
|
|
831
846
|
|
|
832
847
|
If a response includes an event type outside this registry, treat it as a
|
|
833
848
|
contract bug and submit `image-skill feedback create --json` with the event ID
|
package/llms.txt
CHANGED
|
@@ -44,7 +44,7 @@ Claim states:
|
|
|
44
44
|
|
|
45
45
|
First-run flow:
|
|
46
46
|
1. image-skill doctor --json
|
|
47
|
-
2. image-skill signup --agent --human-email EMAIL --agent-name NAME --runtime RUNTIME --save --json. The preview hosted signup path currently requires human_email
|
|
47
|
+
2. image-skill signup --agent --human-email EMAIL --agent-name NAME --runtime RUNTIME --save --json. The preview hosted signup path currently requires human_email as the accountable contact or sponsor inbox for the restricted agent identity. If no individual human is in the loop, use a durable operator/team/agent inbox that can receive future claim, billing, or abuse notices; do not invent a person or use a throwaway inbox. example.invalid addresses are only appropriate inside documented harness or proof runs. Future payment-backed and agent-contact-backed signup paths are planned. Use --show-token only when the runtime has a separate secret store and needs the raw token once.
|
|
48
48
|
3. Reuse the saved CLI auth for later commands, or store the returned data.token from --show-token in the agent runtime secret store and expose it as IMAGE_SKILL_TOKEN.
|
|
49
49
|
4. image-skill whoami --json
|
|
50
50
|
5. image-skill usage quota --json
|
|
@@ -98,7 +98,7 @@ Core commands:
|
|
|
98
98
|
- image-skill feedback create --type TYPE --title TITLE --body BODY --command COMMAND --expected EXPECTED --actual ACTUAL --proof-needed PROOF --surface cli,docs --evidence trace:TRACE_ID --severity medium --confidence high --next-state watch --json
|
|
99
99
|
|
|
100
100
|
Hosted API endpoints:
|
|
101
|
-
- POST https://api.image-skill.com/v1/agent-signups creates or rotates a restricted unclaimed agent token. The response returns the token once as data.token. Store it in the agent runtime secret store; never put it in prompts, logs, issue text, or feedback.
|
|
101
|
+
- POST https://api.image-skill.com/v1/agent-signups creates or rotates a restricted unclaimed agent token. Request human_email is the preview contact/sponsor inbox, not a requirement that an autonomous agent stop until a specific human is present. The response returns the token once as data.token. Store it in the agent runtime secret store; never put it in prompts, logs, issue text, or feedback.
|
|
102
102
|
- GET https://api.image-skill.com/v1/whoami returns durable hosted identity for Authorization: Bearer TOKEN.
|
|
103
103
|
- GET https://api.image-skill.com/v1/quota returns durable hosted quota for Authorization: Bearer TOKEN.
|
|
104
104
|
- GET https://api.image-skill.com/v1/payment-methods returns the no-auth payment rail catalog. It tells agents which rails are available, whether live money can move, buyer modes (agent_only, hybrid, human_only), browser requirements, limits, endpoint paths, and recovery commands.
|
|
@@ -116,7 +116,7 @@ Hosted API endpoints:
|
|
|
116
116
|
- GET https://api.image-skill.com/v1/jobs/JOB_ID returns hosted job metadata for Authorization: Bearer TOKEN when the job belongs to the actor organization.
|
|
117
117
|
- GET https://api.image-skill.com/v1/activity returns hosted activity ledger events for Authorization: Bearer TOKEN. Optional query: limit, subject. Activity is for ledger context, not job recovery.
|
|
118
118
|
- GET https://api.image-skill.com/v1/activity/REFERENCE returns hosted activity events related to one event, job, asset, usage, feedback, or trace reference.
|
|
119
|
-
- Public activity event types are: job.completed, asset.created, asset.uploaded, usage.credit_consumed, feedback.created, payment.checkout_session.created, credits.payment_backed_granted. Treat any other activity type as a contract bug and leave feedback with event ID plus trace ID.
|
|
119
|
+
- Public activity event types are: job.completed, asset.created, asset.uploaded, usage.credit_consumed, feedback.created, feedback.github_queue.processed, payment.checkout_session.created, credits.payment_backed_granted. Treat any other activity type as a contract bug and leave feedback with event ID plus trace ID.
|
|
120
120
|
- POST https://api.image-skill.com/v1/cli runs public CLI-compatible commands over JSON argv.
|
|
121
121
|
- GET https://api.image-skill.com/healthz checks API readiness.
|
|
122
122
|
|
|
@@ -205,8 +205,11 @@ trace references. Activity is broader than jobs and can include completed
|
|
|
205
205
|
outputs, uploads, usage events, and feedback. Activity does not replace jobs
|
|
206
206
|
show/wait for polling, recovery, retry judgment, or final job state.
|
|
207
207
|
Current activity event registry: job.completed, asset.created, asset.uploaded,
|
|
208
|
-
usage.credit_consumed, feedback.created,
|
|
209
|
-
credits.payment_backed_granted.
|
|
208
|
+
usage.credit_consumed, feedback.created, feedback.github_queue.processed,
|
|
209
|
+
payment.checkout_session.created, credits.payment_backed_granted.
|
|
210
|
+
Feedback GitHub queue lifecycle events expose `details.github_queue.state`,
|
|
211
|
+
`reason`, and public issue references when available, so agents can tell what
|
|
212
|
+
happened to submitted feedback without inspecting private Actions artifacts.
|
|
210
213
|
|
|
211
214
|
Feedback:
|
|
212
215
|
Use image-skill feedback create --json when the workflow fails, succeeds with friction, reveals confusing behavior, or suggests a missing feature. Feedback should include command, expected behavior, actual behavior, proof needed, surface, evidence, severity, confidence, and next state.
|
package/package.json
CHANGED
package/skill.md
CHANGED
|
@@ -62,6 +62,14 @@ image-skill signup --agent \
|
|
|
62
62
|
permissions and redacts it from stdout. Use `--show-token` only when the agent
|
|
63
63
|
runtime has a separate secret store and needs the raw token once.
|
|
64
64
|
|
|
65
|
+
In the preview contract, `--human-email` means the accountable contact or
|
|
66
|
+
sponsor inbox for the restricted agent identity. If no individual human is in
|
|
67
|
+
the loop, use a durable operator/team/agent inbox that can receive future claim,
|
|
68
|
+
billing, or abuse notices. Do not invent a person or use a throwaway inbox.
|
|
69
|
+
`example.invalid` addresses are only appropriate inside documented harness or
|
|
70
|
+
proof runs. Agent-contact-backed signup is planned, but the currently published
|
|
71
|
+
CLI uses `--human-email`.
|
|
72
|
+
|
|
65
73
|
If the runtime supports stdin secret handoff, prefer `--token-stdin` for
|
|
66
74
|
`whoami`, `usage quota`, `quota`, `create`, and `feedback create` instead of
|
|
67
75
|
placing the token in command args.
|
|
@@ -73,10 +81,10 @@ image-skill whoami --json
|
|
|
73
81
|
image-skill usage quota --json
|
|
74
82
|
```
|
|
75
83
|
|
|
76
|
-
The preview hosted signup path currently uses
|
|
77
|
-
payment-backed and agent-contact-backed signup paths are planned
|
|
78
|
-
agents can become bounded paying users without making human claim the
|
|
79
|
-
path to meaningful usage.
|
|
84
|
+
The preview hosted signup path currently uses the contact/sponsor email field
|
|
85
|
+
above. Future payment-backed and agent-contact-backed signup paths are planned
|
|
86
|
+
so capable agents can become bounded paying users without making human claim the
|
|
87
|
+
only path to meaningful usage.
|
|
80
88
|
|
|
81
89
|
Credit quote and buy flow:
|
|
82
90
|
|