image-skill 0.1.38 → 0.1.40

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 CHANGED
@@ -4,6 +4,26 @@ 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.40 - 2026-06-11
8
+
9
+ - Fix (growth): the `IMAGE_SKILL_DISCOVERY_SOURCE` attribution slug now
10
+ survives the guide handoff — guide-emitted fresh-process replay commands
11
+ (including the signup `next_command`) carry the env assignment in their
12
+ shell prefix, the same fresh-process-env treatment as
13
+ `IMAGE_SKILL_CONFIG_PATH`. Without this, a slug provided at
14
+ `create --guide` was lost before signup, so channel attribution read zero
15
+ by construction.
16
+
17
+ ## 0.1.39 - 2026-06-10
18
+
19
+ - Feature (growth): **`signup --discovery-source SLUG`** (or the
20
+ `IMAGE_SKILL_DISCOVERY_SOURCE` environment variable; the flag wins)
21
+ optionally records the channel where the agent discovered Image Skill — a
22
+ short slug such as `clawhub`, `skills-sh`, or `npm` (lowercase
23
+ letters/digits plus `.`/`_`/`-`, max 64 chars). Self-reported and
24
+ first-touch: the first signup that names a channel wins, and a later
25
+ re-signup never relabels it. Never required — omit it rather than guessing.
26
+
7
27
  ## 0.1.38 - 2026-06-09
8
28
 
9
29
  - Feature (auth): **signup is anonymous by default** — `signup --agent
@@ -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.38";
10
+ const VERSION = "0.1.40";
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";
@@ -760,7 +760,7 @@ async function signup(argv) {
760
760
  false,
761
761
  {
762
762
  required_flags: ["--agent-name", "--runtime"],
763
- optional_flags: ["--agent-contact"],
763
+ optional_flags: ["--agent-contact", "--discovery-source"],
764
764
  suggested_command: SIGNUP_SUGGESTED_COMMAND,
765
765
  docs_url: "https://image-skill.com/cli.md#image-skill-signup-agent",
766
766
  },
@@ -778,7 +778,7 @@ async function signup(argv) {
778
778
  false,
779
779
  {
780
780
  required_flags: ["--agent-name", "--runtime"],
781
- optional_flags: ["--agent-contact"],
781
+ optional_flags: ["--agent-contact", "--discovery-source"],
782
782
  accepted_aliases: {
783
783
  "--human-email": "--agent-contact",
784
784
  },
@@ -803,6 +803,13 @@ async function signup(argv) {
803
803
  return configReady.result;
804
804
  }
805
805
  }
806
+ // Discovery-source attribution (#1814): self-reported channel slug from
807
+ // --discovery-source or IMAGE_SKILL_DISCOVERY_SOURCE (flag wins). Omitted
808
+ // entirely when absent — never guessed, never required.
809
+ const discoverySource =
810
+ flagString(args, "discovery-source")?.trim() ||
811
+ process.env.IMAGE_SKILL_DISCOVERY_SOURCE?.trim() ||
812
+ null;
806
813
  const result = await apiRequest({
807
814
  command: "image-skill signup",
808
815
  method: "POST",
@@ -813,6 +820,9 @@ async function signup(argv) {
813
820
  agent_name: agentName,
814
821
  runtime,
815
822
  return_token: shouldSave || showToken,
823
+ ...(discoverySource === null || discoverySource === ""
824
+ ? {}
825
+ : { discovery_source: discoverySource }),
816
826
  },
817
827
  });
818
828
  result.envelope.command = "image-skill signup";
@@ -3088,15 +3098,28 @@ function createGuideCommandPrefix(input = {}) {
3088
3098
  input.configPath === undefined
3089
3099
  ? configuredImageSkillConfigPath()
3090
3100
  : input.configPath;
3101
+ // Discovery-source attribution (#1814) must survive the guide handoff into
3102
+ // the fresh-process replay commands, or the slug dies before signup.
3103
+ const discoverySource = configuredDiscoverySource();
3091
3104
  return renderShellEnvPrefixedCommand(
3092
3105
  {
3093
3106
  npm_config_update_notifier: "false",
3094
3107
  ...(configPath === null ? {} : { IMAGE_SKILL_CONFIG_PATH: configPath }),
3108
+ ...(discoverySource === null
3109
+ ? {}
3110
+ : { IMAGE_SKILL_DISCOVERY_SOURCE: discoverySource }),
3095
3111
  },
3096
3112
  "npx -y image-skill@latest",
3097
3113
  );
3098
3114
  }
3099
3115
 
3116
+ function configuredDiscoverySource() {
3117
+ const value = process.env.IMAGE_SKILL_DISCOVERY_SOURCE;
3118
+ return typeof value === "string" && value.trim().length > 0
3119
+ ? value.trim()
3120
+ : null;
3121
+ }
3122
+
3100
3123
  function configuredImageSkillConfigPath() {
3101
3124
  const configPath = process.env.IMAGE_SKILL_CONFIG_PATH;
3102
3125
  return typeof configPath === "string" && configPath.length > 0
package/cli.md CHANGED
@@ -119,6 +119,13 @@ Anonymous signups mint a fresh agent identity on every call, so re-running
119
119
  signup without a contact creates a new agent instead of returning the existing
120
120
  one; rely on the saved config to reuse the identity you already have.
121
121
 
122
+ `--discovery-source SLUG` (or the `IMAGE_SKILL_DISCOVERY_SOURCE` environment
123
+ variable; the flag wins) optionally records where you discovered Image Skill —
124
+ a short channel slug such as `clawhub`, `skills-sh`, or `npm` (lowercase
125
+ letters/digits plus `.`/`_`/`-`, max 64 chars). It is self-reported,
126
+ first-touch (a later re-signup never relabels it), and never required: omit it
127
+ when you do not know the channel rather than guessing.
128
+
122
129
  ### `image-skill claim request`
123
130
 
124
131
  Attaches an email-shaped durable contact inbox to the authenticated agent —
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "image-skill",
3
- "version": "0.1.38",
3
+ "version": "0.1.40",
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,
@@ -119,6 +119,13 @@ Anonymous signups mint a fresh agent identity on every call, so re-running
119
119
  signup without a contact creates a new agent instead of returning the existing
120
120
  one; rely on the saved config to reuse the identity you already have.
121
121
 
122
+ `--discovery-source SLUG` (or the `IMAGE_SKILL_DISCOVERY_SOURCE` environment
123
+ variable; the flag wins) optionally records where you discovered Image Skill —
124
+ a short channel slug such as `clawhub`, `skills-sh`, or `npm` (lowercase
125
+ letters/digits plus `.`/`_`/`-`, max 64 chars). It is self-reported,
126
+ first-touch (a later re-signup never relabels it), and never required: omit it
127
+ when you do not know the channel rather than guessing.
128
+
122
129
  ### `image-skill claim request`
123
130
 
124
131
  Attaches an email-shaped durable contact inbox to the authenticated agent —