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 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 human@example.com --agent-name creative-agent --runtime openclaw --save --json
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
@@ -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.2";
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 invalid(
180
+ return failure(
177
181
  "image-skill signup",
178
- "signup requires --human-email, --agent-name, and --runtime",
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 | Stable links |
823
- | ---------------------------------- | ---------- | ----------- | ---------------------------------------------------------------- | ------------------------------------------------------- |
824
- | `job.completed` | `job` | create/edit | A hosted create or edit job reaches a terminal state. | `job_id`, `asset_ids`, `usage_event_id` |
825
- | `asset.created` | `asset` | create/edit | A hosted create or edit produces an output asset. | `job_id`, `asset_ids`, `usage_event_id` |
826
- | `asset.uploaded` | `asset` | upload | A public edit workflow uploads or imports input media. | `job_id`, `asset_ids`, `usage_event_id` |
827
- | `usage.credit_consumed` | `usage` | usage | A creative operation records a preview-credit entry. | `job_id`, `usage_event_id` |
828
- | `feedback.created` | `feedback` | feedback | Hosted agent feedback is accepted into product memory. | `feedback_id` |
829
- | `payment.checkout_session.created` | `payment` | payment | A Stripe Checkout session is created and awaits external action. | `quote_id`, `payment_attempt_id`, `checkout_session_id` |
830
- | `credits.payment_backed_granted` | `credit` | credits | Verified payment or fake-payment proof grants paid credits. | `quote_id`, `receipt_id`, `credit_event_id` |
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; 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.
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, payment.checkout_session.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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "image-skill",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "Thin hosted CLI for Image Skill, a creative runtime for agents.",
5
5
  "type": "module",
6
6
  "private": false,
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 a human sponsor email. Future
77
- payment-backed and agent-contact-backed signup paths are planned so capable
78
- agents can become bounded paying users without making human claim the only
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