@meterapp/car-image 1.7.5 → 1.7.6

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
@@ -25,7 +25,7 @@ car-image get --vehicle veh_395yw8tn73ff8 --color 1a2b3c # by stable vehi
25
25
  car-image url --make BMW --model M3 --year 2022 --ttl 86400 # signed, key-free URL for a web page
26
26
  car-image resolve red 2024 porsche 911 side view # free text → parameters + ready command
27
27
  car-image vin 1HGCM82633A004352 # decode a VIN (free) → the catalog vehicle and its id
28
- car-image 3d create --make Toyota --model Camry --year 2025 --color red --wait --out ./models # 100 credits
28
+ car-image 3d create --make Porsche --model 911 --year 2024 --color red --wait --out ./models # 100 credits
29
29
  car-image agent-config --host claude-code # MCP setup for agents
30
30
  car-image request vehicle Toyota Sienna --year 2024 # catalog missing a car? ask for it (free)
31
31
  ```
@@ -57,7 +57,7 @@ car-image request vehicle Toyota Sienna --year 2024 # catalog missing
57
57
  | `request show <id>` · `request upvote <id>` · `request comment <id> "<text>"` | Read one request with its comments, add your vote (idempotent), or comment. |
58
58
  | `about building "<what you are building>"` | Tells the team what you are building. Private: only the Car Image team sees it. |
59
59
  | `about referral <search\|ai_assistant\|github\|npm\|twitter_x\|linkedin\|reddit\|hacker_news\|youtube\|friend_or_colleague\|blog_or_article\|other> [--detail "…"]` | Tells the team how you found the API. Private. |
60
- | `billing [--plan pro\|business [--yearly]] [--credits 500\|1000\|2500\|10000] [--portal] [--no-browser]` | Opens hosted Stripe Checkout for a plan or extra credits, or the billing portal. An account already on a plan is switched in place. The CLI never touches card data. |
60
+ | `billing [--plan pro\|business [--yearly]] [--credits 100\|500\|1000\|2500\|10000] [--portal] [--no-browser]` | Opens hosted Stripe Checkout for a plan or extra credits, or the billing portal. An account already on a plan is switched in place. The CLI never touches card data. |
61
61
  | `mcp [--toolset core\|all]` | Runs the stdio MCP server (see below). `core` (default) is the twelve image, VIN and 3D tools; `all` adds the request board. |
62
62
  | `agent-config [--host claude-code\|claude-desktop\|cursor\|chatgpt\|generic] [--remote] [--json]` | Ready-to-paste MCP configuration. |
63
63
  | `update [--check]` | Compares with the npm registry and updates via npm/pnpm/bun (detected). |
@@ -182,3 +182,7 @@ Revoke keys any time at https://carimage.dev/dashboard?ref=npm-cli#keys.
182
182
  ## License
183
183
 
184
184
  MIT © Meter
185
+
186
+ ### Request attribution
187
+
188
+ The CLI identifies requests with `X-CarImage-Integration: cli` (or `mcp-stdio` when running its MCP bridge). Set `CAR_IMAGE_HOST` to `claude`, `claude-code`, `chatgpt`, `codex`, or `cursor` to declare the calling host. This is usage analytics, not authentication; no prompts or conversation text are sent.
@@ -7,15 +7,17 @@ export function mcpUrl(baseUrl) {
7
7
  return `${baseUrl.replace(/\/+$/, "")}/api/mcp`;
8
8
  }
9
9
  /** Stdio server entry for `mcpServers` maps (Claude Desktop, Cursor, Claude Code). */
10
- export function stdioServerConfig(baseUrl) {
10
+ export function stdioServerConfig(baseUrl, host) {
11
11
  const env = { CAR_IMAGE_API_KEY: KEY_PLACEHOLDER };
12
+ if (host)
13
+ env.CAR_IMAGE_HOST = host;
12
14
  if (baseUrl.replace(/\/+$/, "") !== DEFAULT_BASE_URL)
13
15
  env.CAR_IMAGE_API_URL = baseUrl;
14
16
  return { command: "npx", args: ["-y", PACKAGE_NAME, "mcp"], env };
15
17
  }
16
18
  /** Remote Streamable HTTP entry with the key in a header (never in the URL). */
17
- export function remoteServerConfig(baseUrl) {
18
- return { type: "http", url: mcpUrl(baseUrl), headers: { Authorization: `Bearer ${KEY_PLACEHOLDER}` } };
19
+ export function remoteServerConfig(baseUrl, host) {
20
+ return { type: "http", url: mcpUrl(baseUrl), headers: { Authorization: `Bearer ${KEY_PLACEHOLDER}`, ...(host ? { "X-CarImage-Host": host } : {}) } };
19
21
  }
20
22
  function json(value) {
21
23
  return JSON.stringify(value, null, 2);
@@ -30,14 +32,15 @@ export const CORE_TOOLS_NOTE = `Tools (core): ${MCP_TOOLSETS.core.join(", ")}`;
30
32
  export function toolsetNote(baseUrl) {
31
33
  return `Request board (list_requests, request_vehicle, request_feature, get_request, upvote_request, comment_on_request, share_building, share_referral): append ?toolset=all to the URL (${mcpUrl(baseUrl)}?toolset=all), or run \`car-image mcp --toolset all\` for the stdio server.`;
32
34
  }
33
- function servers(baseUrl, remoteOnly) {
35
+ function servers(baseUrl, remoteOnly, host) {
34
36
  return remoteOnly
35
- ? { "car-image": remoteServerConfig(baseUrl) }
36
- : { "car-image": remoteServerConfig(baseUrl), "car-image-local": stdioServerConfig(baseUrl) };
37
+ ? { "car-image": remoteServerConfig(baseUrl, host) }
38
+ : { "car-image": remoteServerConfig(baseUrl, host), "car-image-local": stdioServerConfig(baseUrl, host) };
37
39
  }
38
40
  export function renderAgentConfig(options) {
39
41
  const { host, remoteOnly, baseUrl } = options;
40
42
  const url = mcpUrl(baseUrl);
43
+ const attributionHost = host === "claude-desktop" ? "claude" : host === "generic" ? undefined : host;
41
44
  const envArg = baseUrl.replace(/\/+$/, "") === DEFAULT_BASE_URL ? "" : ` --env CAR_IMAGE_API_URL=${baseUrl}`;
42
45
  switch (host) {
43
46
  case "claude-code": {
@@ -45,12 +48,12 @@ export function renderAgentConfig(options) {
45
48
  "# Claude Code",
46
49
  "",
47
50
  "# Remote MCP server (recommended; nothing to install):",
48
- `claude mcp add --transport http car-image ${url} --header "Authorization: Bearer ${KEY_PLACEHOLDER}"`,
51
+ `claude mcp add --transport http car-image ${url} --header "Authorization: Bearer ${KEY_PLACEHOLDER}" --header "X-CarImage-Host: claude-code"`,
49
52
  ];
50
53
  if (!remoteOnly) {
51
- lines.push("", "# Local stdio server (runs `car-image mcp` through npx):", `claude mcp add car-image-local --env CAR_IMAGE_API_KEY=${KEY_PLACEHOLDER}${envArg} -- npx -y ${PACKAGE_NAME} mcp`);
54
+ lines.push("", "# Local stdio server (runs `car-image mcp` through npx):", `claude mcp add car-image-local --env CAR_IMAGE_API_KEY=${KEY_PLACEHOLDER} --env CAR_IMAGE_HOST=claude-code${envArg} -- npx -y ${PACKAGE_NAME} mcp`);
52
55
  }
53
- lines.push("", "# Project-scoped alternative: .mcp.json in the repository root", json({ mcpServers: servers(baseUrl, remoteOnly) }), "", `# ${CORE_TOOLS_NOTE}`, `# ${toolsetNote(baseUrl)}`, `# ${KEY_NOTE}`);
56
+ lines.push("", "# Project-scoped alternative: .mcp.json in the repository root", json({ mcpServers: servers(baseUrl, remoteOnly, attributionHost) }), "", `# ${CORE_TOOLS_NOTE}`, `# ${toolsetNote(baseUrl)}`, `# ${KEY_NOTE}`);
54
57
  return lines.join("\n");
55
58
  }
56
59
  case "claude-desktop": {
@@ -63,7 +66,7 @@ export function renderAgentConfig(options) {
63
66
  "# below (or Claude Code with --header) for key-based access.",
64
67
  ];
65
68
  if (!remoteOnly) {
66
- lines.push("", "# Local stdio server: add to claude_desktop_config.json", "# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json", "# Windows: %APPDATA%\\Claude\\claude_desktop_config.json", json({ mcpServers: { "car-image": stdioServerConfig(baseUrl) } }));
69
+ lines.push("", "# Local stdio server: add to claude_desktop_config.json", "# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json", "# Windows: %APPDATA%\\Claude\\claude_desktop_config.json", json({ mcpServers: { "car-image": stdioServerConfig(baseUrl, attributionHost) } }));
67
70
  }
68
71
  lines.push("", `# ${CORE_TOOLS_NOTE}`, `# ${toolsetNote(baseUrl)}`, `# ${KEY_NOTE}`);
69
72
  return lines.join("\n");
@@ -71,7 +74,7 @@ export function renderAgentConfig(options) {
71
74
  case "cursor": {
72
75
  return [
73
76
  "# Cursor — save as .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)",
74
- json({ mcpServers: servers(baseUrl, remoteOnly) }),
77
+ json({ mcpServers: servers(baseUrl, remoteOnly, attributionHost) }),
75
78
  "",
76
79
  `# ${CORE_TOOLS_NOTE}`,
77
80
  `# ${toolsetNote(baseUrl)}`,
@@ -103,9 +106,9 @@ export function renderAgentConfig(options) {
103
106
  "# Generic MCP client configuration",
104
107
  "",
105
108
  "# Remote Streamable HTTP (MCP 2025-06-18 and later):",
106
- json(remoteServerConfig(baseUrl)),
109
+ json(remoteServerConfig(baseUrl, attributionHost)),
107
110
  ]
108
- .concat(remoteOnly ? [] : ["", "# Local stdio:", json(stdioServerConfig(baseUrl))])
111
+ .concat(remoteOnly ? [] : ["", "# Local stdio:", json(stdioServerConfig(baseUrl, attributionHost))])
109
112
  .concat(["", `# ${CORE_TOOLS_NOTE}`, `# ${toolsetNote(baseUrl)}`, `# ${KEY_NOTE}`])
110
113
  .join("\n");
111
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../src/agent-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGtG,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAStD,MAAM,UAAU,MAAM,CAAC,OAAe;IACpC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC;AAClD,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,GAAG,GAA2B,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC;IAC3E,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,gBAAgB;QAAE,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAC;IACtF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;AACpE,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,eAAe,EAAE,EAAE,EAAE,CAAC;AACzG,CAAC;AAED,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,QAAQ,GAAG,gFAAgF,eAAe,qGAAqG,CAAC;AAEtN,iIAAiI;AACjI,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAE/E;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,qLAAqL,MAAM,CAAC,OAAO,CAAC,6EAA6E,CAAC;AAC3R,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,UAAmB;IACnD,OAAO,UAAU;QACf,CAAC,CAAC,EAAE,WAAW,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE;QAC9C,CAAC,CAAC,EAAE,WAAW,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;AAClG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,4BAA4B,OAAO,EAAE,CAAC;IAE7G,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,KAAK,GAAG;gBACZ,eAAe;gBACf,EAAE;gBACF,wDAAwD;gBACxD,6CAA6C,GAAG,oCAAoC,eAAe,GAAG;aACvG,CAAC;YACF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,0DAA0D,EAC1D,0DAA0D,eAAe,GAAG,MAAM,cAAc,YAAY,MAAM,CACnH,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,IAAI,CACR,EAAE,EACF,gEAAgE,EAChE,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,EAClD,EAAE,EACF,KAAK,eAAe,EAAE,EACtB,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,EAC3B,KAAK,QAAQ,EAAE,CAChB,CAAC;YACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG;gBACZ,kBAAkB;gBAClB,EAAE;gBACF,oEAAoE;gBACpE,YAAY,GAAG,EAAE;gBACjB,uGAAuG;gBACvG,gEAAgE;aACjE,CAAC;YACF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,yDAAyD,EACzD,4EAA4E,EAC5E,4DAA4D,EAC5D,IAAI,CAAC,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAClE,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,eAAe,EAAE,EAAE,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,QAAQ,EAAE,CAAC,CAAC;YACrF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO;gBACL,8EAA8E;gBAC9E,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC;gBAClD,EAAE;gBACF,KAAK,eAAe,EAAE;gBACtB,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE;gBAC3B,KAAK,QAAQ,EAAE;aAChB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,OAAO;gBACL,WAAW;gBACX,EAAE;gBACF,2EAA2E;gBAC3E,uBAAuB,GAAG,EAAE;gBAC5B,2GAA2G;gBAC3G,EAAE;gBACF,0CAA0C;gBAC1C,uEAAuE;gBACvE,UAAU,OAAO,eAAe;gBAChC,4EAA4E;gBAC5E,6BAA6B,GAAG,GAAG,OAAO,kBAAkB;gBAC5D,qCAAqC,GAAG,GAAG,OAAO,6BAA6B;gBAC/E,EAAE;gBACF,KAAK,eAAe,EAAE;gBACtB,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE;gBAC3B,KAAK,QAAQ,EAAE;aAChB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO;gBACL,oCAAoC;gBACpC,EAAE;gBACF,sDAAsD;gBACtD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aAClC;iBACE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;iBAClF,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,eAAe,EAAE,EAAE,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,QAAQ,EAAE,CAAC,CAAC;iBAClF,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../src/agent-config.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -31,7 +31,15 @@ export function createClientContext(flags, env, config, options = {}) {
31
31
  apiKey: apiKey ?? "",
32
32
  baseUrl,
33
33
  userAgent: agent,
34
- fetch: options.fetch,
34
+ fetch: (input, init) => {
35
+ const headers = new Headers(init?.headers);
36
+ headers.set("X-CarImage-Integration", options.kind === "mcp" ? "mcp-stdio" : "cli");
37
+ const host = env.CAR_IMAGE_HOST;
38
+ if (host && ["claude", "claude-code", "chatgpt", "codex", "cursor"].includes(host)) {
39
+ headers.set("X-CarImage-Host", host);
40
+ }
41
+ return (options.fetch ?? globalThis.fetch)(input, { ...init, headers });
42
+ },
35
43
  maxRetries: options.maxRetries,
36
44
  });
37
45
  return { baseUrl, apiKey, keySource: source, client, userAgent: agent };
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAkB,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAkB,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,eAAe,EAA4B,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAY3C,kGAAkG;AAClG,MAAM,UAAU,SAAS,CAAC,OAAsB,KAAK;IACnD,OAAO,aAAa,IAAI,IAAI,WAAW,KAAK,OAAO,CAAC,QAAQ,UAAU,OAAO,CAAC,OAAO,GAAG,CAAC;AAC3F,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,cAAc,CAAC,KAAgC,EAAE,GAAQ,EAAE,MAAiB;IAC1F,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvI,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC;AACvD,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,aAAa,CAAC,KAAgC,EAAE,GAAQ,EAAE,MAAiB;IACzF,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;IACtD,IAAI,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAC9C,IAAI,OAAO;QAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACvD,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACtE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,KAAgC,EAChC,GAAQ,EACR,MAAiB,EACjB,UAA4E,EAAE;IAE9E,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;QAChC,MAAM,EAAE,MAAM,IAAI,EAAE;QACpB,OAAO;QACP,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,12 @@ import { flagBoolean, flagChoice, flagInteger } from "../args.js";
3
3
  import { openBrowser } from "../browser.js";
4
4
  import { CliError } from "../errors.js";
5
5
  import { paint, printJson } from "../output.js";
6
- export const CREDIT_PACKS = [500, 1000, 2500, 10000];
6
+ export const CREDIT_PACKS = [100, 500, 1000, 2500, 10000];
7
7
  export const PAID_PLANS = ["pro", "business"];
8
8
  export const billingCommand = {
9
9
  name: "billing",
10
10
  summary: "Open hosted Stripe Checkout for a plan (--plan) or a credit pack, or the billing portal (--portal)",
11
- usage: "car-image billing [--plan pro|business [--yearly]] [--credits 500|1000|2500|10000] [--portal] [--no-browser] [--json]",
11
+ usage: "car-image billing [--plan pro|business [--yearly]] [--credits 100|500|1000|2500|10000] [--portal] [--no-browser] [--json]",
12
12
  async run(ctx) {
13
13
  const { io, clientContext } = ctx;
14
14
  if (!clientContext.apiKey)
@@ -27,7 +27,7 @@ export const billingCommand = {
27
27
  }
28
28
  const plan = flagChoice(ctx.args.flags, "plan", PAID_PLANS);
29
29
  if (ctx.args.flags.plan !== undefined && !plan) {
30
- throw new CliError(`Unknown plan. Choose one of: ${PAID_PLANS.join(", ")} (Enterprise: hello@meterapp.co)`, 2);
30
+ throw new CliError(`Unknown plan. Choose one of: ${PAID_PLANS.join(", ")} (Enterprise: support@carimage.dev)`, 2);
31
31
  }
32
32
  if (plan) {
33
33
  const interval = flagBoolean(ctx.args.flags, "yearly") ? "year" : "month";
@@ -46,7 +46,7 @@ export const billingCommand = {
46
46
  openBrowser(checkout.data.url);
47
47
  return 0;
48
48
  }
49
- const credits = flagInteger(ctx.args.flags, "credits") ?? 500;
49
+ const credits = flagInteger(ctx.args.flags, "credits") ?? CREDIT_PACKS[0];
50
50
  if (!CREDIT_PACKS.includes(credits)) {
51
51
  throw new CliError(`Unknown pack ${credits}. Choose one of: ${CREDIT_PACKS.join(", ")} credits ($${CREDIT_PACKS.map((pack) => pack / CREDITS_PER_DOLLAR).join(", $")})`, 2);
52
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/commands/billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/commands/billing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAU,CAAC;AACnE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,CAAU,CAAC;AAEvD,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,oGAAoG;IAC7G,KAAK,EAAE,2HAA2H;IAClI,KAAK,CAAC,GAAG,CAAC,GAAmB;QAC3B,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC;QAClC,IAAI,CAAC,aAAa,CAAC,MAAM;YAAE,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC,EAAE,yEAAyE,CAAC,CAAC;QAC9I,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC;QAEvD,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC1D,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACZ,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBACtB,OAAO,CAAC,CAAC;YACX,CAAC;YACD,EAAE,CAAC,MAAM,CAAC,4DAA4D,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnH,IAAI,aAAa;gBAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAC5D,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/C,MAAM,IAAI,QAAQ,CAAC,gCAAgC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,qCAAqC,EAAE,CAAC,CAAC,CAAC;QACpH,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1E,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC/E,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACZ,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBACxB,OAAO,CAAC,CAAC;YACX,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,QAAQ,EAAE,CAAC;YAChF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,EAAE,CAAC,MAAM,CAAC,eAAe,IAAI,KAAK,KAAK,yFAAyF,CAAC,CAAC;gBAClI,OAAO,CAAC,CAAC;YACX,CAAC;YACD,EAAE,CAAC,MAAM,CACP,2BAA2B,IAAI,UAAU,KAAK,SAAS,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,yIAAyI,CAC1O,CAAC;YACF,IAAI,aAAa;gBAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAE,YAAkC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,QAAQ,CAAC,gBAAgB,OAAO,oBAAoB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,kBAAkB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC9K,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACpE,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;YACZ,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACxB,OAAO,CAAC,CAAC;QACX,CAAC;QACD,EAAE,CAAC,MAAM,CACP,uBAAuB,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,yHAAyH,CAC7R,CAAC;QACF,IAAI,aAAa;YAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC"}
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Kept in sync with package.json by `src/version.test.ts`. */
2
- export const CLI_VERSION = "1.7.5";
2
+ export const CLI_VERSION = "1.7.6";
3
3
  export const PACKAGE_NAME = "@meterapp/car-image";
4
4
  export const BIN_NAME = "car-image";
5
5
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@meterapp/car-image",
3
- "version": "1.7.5",
3
+ "version": "1.7.6",
4
4
  "description": "CLI and MCP server for the Car Image API by Meter: studio-quality, transparent-background vehicle renders for agents, apps and browsers. Login, fetch images in any paint color, mint signed URLs, decode VINs, build 3D models, request missing vehicles, run diagnostics, configure agents.",
5
5
  "license": "MIT",
6
- "author": "Meter <hello@meterapp.co> (https://meterapp.co)",
6
+ "author": "Meter <support@carimage.dev> (https://meterapp.co)",
7
7
  "homepage": "https://carimage.dev",
8
8
  "bugs": {
9
9
  "url": "https://carimage.dev/docs/feedback?ref=npm-cli",
10
- "email": "hello@meterapp.co"
10
+ "email": "support@carimage.dev"
11
11
  },
12
12
  "keywords": [
13
13
  "car",