@12ui/design 0.2.14 → 0.2.16

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.
Files changed (108) hide show
  1. package/README.md +21 -1
  2. package/dist/bounded-concurrency.d.ts +13 -0
  3. package/dist/bounded-concurrency.d.ts.map +1 -0
  4. package/dist/bounded-concurrency.js +43 -0
  5. package/dist/bounded-concurrency.js.map +1 -0
  6. package/dist/branch-downloads.d.ts +10 -0
  7. package/dist/branch-downloads.d.ts.map +1 -1
  8. package/dist/branch-downloads.js +20 -0
  9. package/dist/branch-downloads.js.map +1 -1
  10. package/dist/branch-execution.d.ts +7 -0
  11. package/dist/branch-execution.d.ts.map +1 -1
  12. package/dist/branch-execution.js +175 -38
  13. package/dist/branch-execution.js.map +1 -1
  14. package/dist/branch-materialize.d.ts +23 -12
  15. package/dist/branch-materialize.d.ts.map +1 -1
  16. package/dist/branch-materialize.js +55 -38
  17. package/dist/branch-materialize.js.map +1 -1
  18. package/dist/branch-page-conversion.d.ts +109 -5
  19. package/dist/branch-page-conversion.d.ts.map +1 -1
  20. package/dist/branch-page-conversion.js +375 -179
  21. package/dist/branch-page-conversion.js.map +1 -1
  22. package/dist/branch-progress.d.ts +24 -0
  23. package/dist/branch-progress.d.ts.map +1 -1
  24. package/dist/branch-progress.js +35 -6
  25. package/dist/branch-progress.js.map +1 -1
  26. package/dist/branch-run-record.d.ts +14 -0
  27. package/dist/branch-run-record.d.ts.map +1 -1
  28. package/dist/branch-run-record.js.map +1 -1
  29. package/dist/branch-status.d.ts.map +1 -1
  30. package/dist/branch-status.js +3 -0
  31. package/dist/branch-status.js.map +1 -1
  32. package/dist/cli-arguments.d.ts.map +1 -1
  33. package/dist/cli-arguments.js +1 -0
  34. package/dist/cli-arguments.js.map +1 -1
  35. package/dist/cli-branch-command.d.ts +10 -1
  36. package/dist/cli-branch-command.d.ts.map +1 -1
  37. package/dist/cli-branch-command.js +60 -11
  38. package/dist/cli-branch-command.js.map +1 -1
  39. package/dist/cli-capabilities.d.ts +35 -2
  40. package/dist/cli-capabilities.d.ts.map +1 -1
  41. package/dist/cli-capabilities.js +38 -1
  42. package/dist/cli-capabilities.js.map +1 -1
  43. package/dist/cli-draft-command.d.ts +2 -0
  44. package/dist/cli-draft-command.d.ts.map +1 -1
  45. package/dist/cli-draft-command.js +22 -4
  46. package/dist/cli-draft-command.js.map +1 -1
  47. package/dist/cli-package-command.d.ts +13 -0
  48. package/dist/cli-package-command.d.ts.map +1 -1
  49. package/dist/cli-package-command.js +35 -8
  50. package/dist/cli-package-command.js.map +1 -1
  51. package/dist/cli-progress.d.ts +81 -5
  52. package/dist/cli-progress.d.ts.map +1 -1
  53. package/dist/cli-progress.js +108 -5
  54. package/dist/cli-progress.js.map +1 -1
  55. package/dist/cli-skill-command.d.ts.map +1 -1
  56. package/dist/cli-skill-command.js +27 -12
  57. package/dist/cli-skill-command.js.map +1 -1
  58. package/dist/cli.js +20 -10
  59. package/dist/cli.js.map +1 -1
  60. package/dist/conversion-receipt-store.d.ts +75 -0
  61. package/dist/conversion-receipt-store.d.ts.map +1 -0
  62. package/dist/conversion-receipt-store.js +143 -0
  63. package/dist/conversion-receipt-store.js.map +1 -0
  64. package/dist/conversion-receipt.d.ts +223 -0
  65. package/dist/conversion-receipt.d.ts.map +1 -0
  66. package/dist/conversion-receipt.js +352 -0
  67. package/dist/conversion-receipt.js.map +1 -0
  68. package/dist/draft-adoption.d.ts +48 -0
  69. package/dist/draft-adoption.d.ts.map +1 -0
  70. package/dist/draft-adoption.js +237 -0
  71. package/dist/draft-adoption.js.map +1 -0
  72. package/dist/draft-run.d.ts +10 -0
  73. package/dist/draft-run.d.ts.map +1 -1
  74. package/dist/draft-run.js +16 -4
  75. package/dist/draft-run.js.map +1 -1
  76. package/dist/index.d.ts +1 -1
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +1 -1
  79. package/dist/index.js.map +1 -1
  80. package/dist/legacy-skill-catalog.d.ts.map +1 -1
  81. package/dist/legacy-skill-catalog.js +65 -0
  82. package/dist/legacy-skill-catalog.js.map +1 -1
  83. package/dist/package-client.d.ts +28 -0
  84. package/dist/package-client.d.ts.map +1 -1
  85. package/dist/package-client.js +21 -1
  86. package/dist/package-client.js.map +1 -1
  87. package/dist/package-source-refusal.d.ts +17 -0
  88. package/dist/package-source-refusal.d.ts.map +1 -0
  89. package/dist/package-source-refusal.js +61 -0
  90. package/dist/package-source-refusal.js.map +1 -0
  91. package/dist/package-submission.d.ts +43 -1
  92. package/dist/package-submission.d.ts.map +1 -1
  93. package/dist/package-submission.js +32 -7
  94. package/dist/package-submission.js.map +1 -1
  95. package/dist/skill-clients.d.ts +39 -0
  96. package/dist/skill-clients.d.ts.map +1 -0
  97. package/dist/skill-clients.js +156 -0
  98. package/dist/skill-clients.js.map +1 -0
  99. package/dist/skill-installer.d.ts +2 -3
  100. package/dist/skill-installer.d.ts.map +1 -1
  101. package/dist/skill-installer.js +9 -101
  102. package/dist/skill-installer.js.map +1 -1
  103. package/package.json +1 -1
  104. package/skills/design/SKILL.md +6 -3
  105. package/skills/design-branch/SKILL.md +6 -5
  106. package/skills/design-convert/SKILL.md +3 -3
  107. package/skills/design-draft/SKILL.md +3 -3
  108. package/skills/design-search/SKILL.md +3 -3
@@ -16,9 +16,29 @@ const parseOperation = (value) => {
16
16
  throw new Error('Package operation is missing pages');
17
17
  return record;
18
18
  };
19
+ /**
20
+ * A refusal from the package routes, kept whole.
21
+ *
22
+ * Every one of them is RFC7807 problem+json whose machine-readable field is
23
+ * `code` — `detail` carries the sentence (`workers/api/src/conversion/problem.ts`,
24
+ * `buildConversionProblem`). A caller that reduces the answer to a sentence
25
+ * cannot tell one refusal from another, and telling them apart is what lets a
26
+ * disproven attachment cost one retry instead of a page. The message stays the
27
+ * detail line, so everything that only reports it reads exactly as before.
28
+ */
29
+ export class ConversionPackageRequestError extends Error {
30
+ status;
31
+ problem;
32
+ constructor(message, status, problem) {
33
+ super(message);
34
+ this.status = status;
35
+ this.problem = problem;
36
+ this.name = 'ConversionPackageRequestError';
37
+ }
38
+ }
19
39
  const problemFor = async (response) => {
20
40
  const payload = await response.json().catch(() => null);
21
- return new Error(payload?.detail || payload?.title || `${response.status} ${response.statusText}`);
41
+ return new ConversionPackageRequestError(payload?.detail || payload?.title || `${response.status} ${response.statusText}`, response.status, payload ?? {});
22
42
  };
23
43
  const delay = async (milliseconds, signal) => await new Promise((resolve, reject) => {
24
44
  const timer = setTimeout(resolve, milliseconds);
@@ -1 +1 @@
1
- {"version":3,"file":"package-client.js","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-client.js","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { ConversionPackageRequestError } from './package-client.js';
2
+ export declare const isSourceConversionRefusal: (error: unknown) => error is ConversionPackageRequestError;
3
+ /**
4
+ * The single viewport a refusal is about.
5
+ *
6
+ * The server proves attachments one at a time and throws on the first that
7
+ * fails, and every refusal it can raise opens with the viewport's own id
8
+ * (`Viewport <id> source_conversion_id …`). A refusal therefore disproves
9
+ * exactly ONE attachment and says nothing about the others — they were never
10
+ * reached. Reading the id out is what keeps a stale entry costing one
11
+ * re-bought screen instead of every reuse in the request.
12
+ *
13
+ * Null when the detail names no viewport, which is the caller's signal that it
14
+ * has no better option than dropping every attachment it sent.
15
+ */
16
+ export declare const sourceConversionRefusalViewportId: (error: unknown) => string | null;
17
+ //# sourceMappingURL=package-source-refusal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-source-refusal.d.ts","sourceRoot":"","sources":["../src/package-source-refusal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAuCpE,eAAO,MAAM,yBAAyB,GACpC,OAAO,OAAO,KACb,KAAK,IAAI,6BAKX,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iCAAiC,GAAI,OAAO,OAAO,KAAG,MAAM,GAAG,IAI3E,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { ConversionPackageRequestError } from './package-client.js';
2
+ /**
3
+ * Reading the server refusing an ATTACHED conversion, as distinct from it
4
+ * refusing the request that carried one.
5
+ *
6
+ * A viewport that declares `source_conversion_id` is a claim about an existing
7
+ * conversion, and the server proves every field of that claim against the
8
+ * referenced run's durable admitted evidence before the package row exists
9
+ * (`workers/api/src/conversionPackage/sourceConversionAttachment.ts`). A claim
10
+ * that no longer holds — expired since it was recorded, owned by another
11
+ * account, converted with another model or to another output, or run by a
12
+ * pipeline this one cannot resume — is refused at admission, before anything
13
+ * durable is created. So the refusal disproves the reuse, not the page: the
14
+ * same bytes submitted without the attachment convert normally.
15
+ *
16
+ * This module is the single owner of what that refusal looks like on the wire.
17
+ */
18
+ /**
19
+ * The two codes the attachment proof can raise, both 400
20
+ * (`conversionProblemHttpStatus`): `invalid_request` for evidence that no
21
+ * longer matches, `source_pipeline_stale` for a conversion the current
22
+ * pipeline cannot resume.
23
+ *
24
+ * `invalid_request` alone proves nothing — it is the code for most malformed
25
+ * requests — so the code narrows and the detail decides. `code` is preferred
26
+ * wherever it decides something, and its absence means only that the body did
27
+ * not parse as a problem document, never that a non-refusal may pass.
28
+ */
29
+ const SOURCE_REFUSAL_CODES = new Set([
30
+ 'invalid_request',
31
+ 'source_pipeline_stale',
32
+ ]);
33
+ const refusalDetail = (error) => (error.problem.detail ?? error.message);
34
+ export const isSourceConversionRefusal = (error) => {
35
+ if (!(error instanceof ConversionPackageRequestError) || error.status !== 400)
36
+ return false;
37
+ const { code } = error.problem;
38
+ if (code !== undefined && !SOURCE_REFUSAL_CODES.has(code))
39
+ return false;
40
+ return refusalDetail(error).includes('source_conversion_id');
41
+ };
42
+ /**
43
+ * The single viewport a refusal is about.
44
+ *
45
+ * The server proves attachments one at a time and throws on the first that
46
+ * fails, and every refusal it can raise opens with the viewport's own id
47
+ * (`Viewport <id> source_conversion_id …`). A refusal therefore disproves
48
+ * exactly ONE attachment and says nothing about the others — they were never
49
+ * reached. Reading the id out is what keeps a stale entry costing one
50
+ * re-bought screen instead of every reuse in the request.
51
+ *
52
+ * Null when the detail names no viewport, which is the caller's signal that it
53
+ * has no better option than dropping every attachment it sent.
54
+ */
55
+ export const sourceConversionRefusalViewportId = (error) => {
56
+ if (!isSourceConversionRefusal(error))
57
+ return null;
58
+ return /^Viewport (?<viewportId>\S+) source_conversion_id\s/u
59
+ .exec(refusalDetail(error))?.groups?.viewportId ?? null;
60
+ };
61
+ //# sourceMappingURL=package-source-refusal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-source-refusal.js","sourceRoot":"","sources":["../src/package-source-refusal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IACxD,iBAAiB;IACjB,uBAAuB;CACxB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,KAAoC,EAAU,EAAE,CAAC,CACtE,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,KAAc,EAC0B,EAAE;IAC1C,IAAI,CAAC,CAAC,KAAK,YAAY,6BAA6B,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAC5F,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACxE,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,KAAc,EAAiB,EAAE;IACjF,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,sDAAsD;SAC1D,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,IAAI,IAAI,CAAC;AAC5D,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ConversionModel } from './conversion-models.js';
1
+ import { type ConversionModel } from './conversion-models.js';
2
2
  import { type ConversionOutput } from './conversion-outputs.js';
3
3
  import type { ResponsiveConversionQuality } from './responsive-quality.js';
4
4
  import { TwelveUiConversionPackageClient, type ConversionPackageFile, type ConversionPackageLegacyManifest, type ConversionPackageOperation } from './package-client.js';
@@ -43,6 +43,17 @@ export type PackageSubmission = {
43
43
  pages: PackagePageInput[];
44
44
  idempotencyKey: string;
45
45
  };
46
+ /**
47
+ * One viewport's own child conversion. Carried out of the operation because a
48
+ * viewport conversion is a durable, reusable artifact in its own right — the
49
+ * winner's conversion is the one a later run can attach instead of buying.
50
+ */
51
+ export type PackageViewportResult = {
52
+ id: string;
53
+ ordinal: number;
54
+ status: 'queued' | 'running' | 'succeeded' | 'failed';
55
+ conversionId?: string;
56
+ };
46
57
  export type PackagePageResult = {
47
58
  id: string;
48
59
  ordinal: number;
@@ -54,20 +65,50 @@ export type PackagePageResult = {
54
65
  mediaType?: string;
55
66
  status: 'succeeded' | 'failed';
56
67
  error?: string;
68
+ viewports?: PackageViewportResult[];
57
69
  };
58
70
  export type PackageSubmissionResult = {
59
71
  packageId: string;
60
72
  status: ConversionPackageOperation['status'];
61
73
  output: ConversionOutput;
62
74
  idempotencyKey: string;
75
+ /**
76
+ * The model the server ran, which is NOT necessarily the one the submission
77
+ * asked for: a manifest may name none at all and let the account's default
78
+ * decide. A reused viewport conversion must have run the model the next
79
+ * package declares, so the receipt records what was actually run rather than
80
+ * what was requested. Optional because the operation is forwarded as the
81
+ * server sent it and a server that answers without a recognised model is not
82
+ * a failure — it only means nothing here can prove a viewport conversion
83
+ * would be attachable under a declared model.
84
+ */
85
+ model?: ConversionModel;
86
+ /**
87
+ * When this package and the conversions it bought stop being readable.
88
+ * Optional because a server that answers without it is not a failure — it
89
+ * only means nothing here can prove a viewport conversion is still attachable.
90
+ */
91
+ expiresAt?: string;
63
92
  pages: PackagePageResult[];
64
93
  resultPath?: string;
65
94
  };
95
+ /**
96
+ * Everything the server publishes about a running package, forwarded whole.
97
+ *
98
+ * A caller that polls a percent which has not moved cannot tell slow work from
99
+ * wedged work, and the measured consequence is an agent abandoning paid work.
100
+ * `running` and `stageSince` are the facts that separate them, so the client
101
+ * carries them rather than reducing the poll to a stage and a percent.
102
+ */
66
103
  export type PackageProgressEvent = {
67
104
  stage: string;
68
105
  percent?: number;
69
106
  completed?: number;
70
107
  total?: number;
108
+ running?: number;
109
+ stageSince?: string;
110
+ pagesAvailable?: number;
111
+ bandsAvailable?: number;
71
112
  };
72
113
  /**
73
114
  * The stitch precondition, checked HERE rather than at admission. Composition
@@ -82,6 +123,7 @@ export declare const buildConversionPackageRequest: (submission: PackageSubmissi
82
123
  manifest: ConversionPackageLegacyManifest;
83
124
  screenshots: ConversionPackageFile[];
84
125
  }>;
126
+ export declare const packageProgressEvent: (operation: ConversionPackageOperation) => PackageProgressEvent;
85
127
  /**
86
128
  * Submit, wait, and materialize. The package's own operation record is the
87
129
  * durable identity: a retry under the same derived key replays it rather than
@@ -1 +1 @@
1
- {"version":3,"file":"package-submission.d.ts","sourceRoot":"","sources":["../src/package-submission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-submission.d.ts","sourceRoot":"","sources":["../src/package-submission.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { mkdir, writeFile } from 'node:fs/promises';
3
3
  import path from 'node:path';
4
+ import { isConversionModel } from './conversion-models.js';
4
5
  import { CONVERSION_OUTPUT_EXTENSIONS, } from './conversion-outputs.js';
5
6
  import { readImageDimensions } from './image-dimensions.js';
6
7
  /**
@@ -80,6 +81,24 @@ export const buildConversionPackageRequest = async (submission) => {
80
81
  };
81
82
  return { manifest, screenshots };
82
83
  };
84
+ export const packageProgressEvent = (operation) => {
85
+ const progress = operation.progress;
86
+ return {
87
+ stage: progress?.stage ?? operation.status,
88
+ ...(progress?.percent === undefined ? {} : { percent: progress.percent }),
89
+ ...(progress?.completed === undefined
90
+ ? {}
91
+ : { completed: progress.completed, total: progress.total }),
92
+ ...(progress?.running === undefined ? {} : { running: progress.running }),
93
+ ...(progress?.stage_since === undefined ? {} : { stageSince: progress.stage_since }),
94
+ ...(progress?.pages_available === undefined
95
+ ? {}
96
+ : { pagesAvailable: progress.pages_available }),
97
+ ...(progress?.bands_available === undefined
98
+ ? {}
99
+ : { bandsAvailable: progress.bands_available }),
100
+ };
101
+ };
83
102
  const delay = async (milliseconds, signal) => (new Promise((resolve, reject) => {
84
103
  const timer = setTimeout(resolve, milliseconds);
85
104
  signal?.addEventListener('abort', () => {
@@ -109,13 +128,7 @@ export const submitConversionPackage = async (args) => {
109
128
  throw new Error(`Timed out waiting for package ${created.id}. It is still running server-side; read it`
110
129
  + ` back with GET /api/v1/convert/package/${created.id} rather than submitting again.`);
111
130
  }
112
- args.onProgress?.({
113
- stage: operation.progress?.stage ?? operation.status,
114
- ...(operation.progress?.percent === undefined ? {} : { percent: operation.progress.percent }),
115
- ...(operation.progress?.completed === undefined
116
- ? {}
117
- : { completed: operation.progress.completed, total: operation.progress.total }),
118
- });
131
+ args.onProgress?.(packageProgressEvent(operation));
119
132
  await sleep(args.pollIntervalMs ?? PACKAGE_POLL_INTERVAL_MS, args.signal);
120
133
  operation = await args.client.getPackage(created.id, args.signal);
121
134
  }
@@ -123,6 +136,14 @@ export const submitConversionPackage = async (args) => {
123
136
  await mkdir(args.outDir, { recursive: true });
124
137
  const extension = CONVERSION_OUTPUT_EXTENSIONS[args.submission.output];
125
138
  const pages = [];
139
+ const viewportsOf = (page) => (page.viewports.length === 0 ? {} : {
140
+ viewports: page.viewports.map((viewport) => ({
141
+ id: viewport.id,
142
+ ordinal: viewport.ordinal,
143
+ status: viewport.status,
144
+ ...(viewport.conversion_id ? { conversionId: viewport.conversion_id } : {}),
145
+ })),
146
+ });
126
147
  for (const page of operation.pages) {
127
148
  if (page.status !== 'succeeded' || !page.href) {
128
149
  pages.push({
@@ -131,6 +152,7 @@ export const submitConversionPackage = async (args) => {
131
152
  ...(page.title ? { title: page.title } : {}),
132
153
  status: 'failed',
133
154
  error: operation.error?.detail ?? `Page ${page.id} finished ${page.status}.`,
155
+ ...viewportsOf(page),
134
156
  });
135
157
  continue;
136
158
  }
@@ -147,6 +169,7 @@ export const submitConversionPackage = async (args) => {
147
169
  bytes: downloaded.bytes.byteLength,
148
170
  mediaType: downloaded.mediaType,
149
171
  status: 'succeeded',
172
+ ...viewportsOf(page),
150
173
  });
151
174
  }
152
175
  if (operation.status !== 'succeeded' && pages.every((page) => page.status === 'failed')) {
@@ -158,6 +181,8 @@ export const submitConversionPackage = async (args) => {
158
181
  status: operation.status,
159
182
  output: args.submission.output,
160
183
  idempotencyKey: args.submission.idempotencyKey,
184
+ ...(isConversionModel(operation.model) ? { model: operation.model } : {}),
185
+ ...(operation.expires_at ? { expiresAt: operation.expires_at } : {}),
161
186
  pages,
162
187
  };
163
188
  };
@@ -1 +1 @@
1
- {"version":3,"file":"package-submission.js","sourceRoot":"","sources":["../src/package-submission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-submission.js","sourceRoot":"","sources":["../src/package-submission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Every coding agent whose installed release discovers `SKILL.md` bundles from
3
+ * a user-scoped `skills/` directory. Each entry below was read out of the
4
+ * installed binary or its shipped documentation, never from a blog post:
5
+ *
6
+ * - codex every `~/.codex` profile's `skills/` (plus `CODEX_HOME`)
7
+ * - claude-code `~/.claude/skills/`
8
+ * - grok `~/.grok/skills/` (README "Skill Locations"; `GROK_HOME`)
9
+ * - cursor `~/.cursor/skills/` (bundled `skill-path-utils.ts` roots)
10
+ * - antigravity `~/.gemini/config/skills/` (agy's "Customization Roots")
11
+ * - copilot `~/.copilot/skills/` (`/skills` help: "Personal")
12
+ *
13
+ * One layout serves all six, so the skill bundle is byte-identical everywhere
14
+ * and no client gets its own copy of the model-facing text.
15
+ */
16
+ export declare const SKILL_CLIENTS: readonly ["codex", "claude-code", "grok", "cursor", "antigravity", "copilot"];
17
+ export type SkillClient = typeof SKILL_CLIENTS[number];
18
+ export declare const isSkillClient: (value: unknown) => value is SkillClient;
19
+ export declare const resolveClientHome: (args: {
20
+ client: SkillClient;
21
+ clientHome?: string;
22
+ environment: NodeJS.ProcessEnv;
23
+ homeDirectory: string;
24
+ }) => string;
25
+ export declare const executableExists: (executable: string, environment: NodeJS.ProcessEnv) => Promise<boolean>;
26
+ /**
27
+ * Homes to install into for one client, or an empty list when the client is
28
+ * not on this machine. A CLIENT-SPECIFIC relocating variable counts as proof
29
+ * on its own — the operator pointed that client somewhere deliberately — but
30
+ * a generic one like `XDG_CONFIG_HOME` only says where the home would be:
31
+ * presence still has to be earned by the directory existing or the
32
+ * executable being on PATH.
33
+ */
34
+ export declare const discoverClientHomes: (args: {
35
+ client: SkillClient;
36
+ environment: NodeJS.ProcessEnv;
37
+ homeDirectory: string;
38
+ }) => Promise<string[]>;
39
+ //# sourceMappingURL=skill-clients.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-clients.d.ts","sourceRoot":"","sources":["../src/skill-clients.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,+EAOhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAmDvD,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,WAEvD,CAAC;AAgCF,eAAO,MAAM,iBAAiB,GAAI,MAAM;IACtC,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;CACvB,KAAG,MAOH,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,YAAY,MAAM,EAClB,aAAa,MAAM,CAAC,UAAU,KAC7B,OAAO,CAAC,OAAO,CAoBjB,CAAC;AA+BF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAU,MAAM;IAC9C,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;CACvB,KAAG,OAAO,CAAC,MAAM,EAAE,CASnB,CAAC"}
@@ -0,0 +1,156 @@
1
+ import { constants } from 'node:fs';
2
+ import { access, readdir, stat } from 'node:fs/promises';
3
+ import path from 'node:path';
4
+ /**
5
+ * Every coding agent whose installed release discovers `SKILL.md` bundles from
6
+ * a user-scoped `skills/` directory. Each entry below was read out of the
7
+ * installed binary or its shipped documentation, never from a blog post:
8
+ *
9
+ * - codex every `~/.codex` profile's `skills/` (plus `CODEX_HOME`)
10
+ * - claude-code `~/.claude/skills/`
11
+ * - grok `~/.grok/skills/` (README "Skill Locations"; `GROK_HOME`)
12
+ * - cursor `~/.cursor/skills/` (bundled `skill-path-utils.ts` roots)
13
+ * - antigravity `~/.gemini/config/skills/` (agy's "Customization Roots")
14
+ * - copilot `~/.copilot/skills/` (`/skills` help: "Personal")
15
+ *
16
+ * One layout serves all six, so the skill bundle is byte-identical everywhere
17
+ * and no client gets its own copy of the model-facing text.
18
+ */
19
+ export const SKILL_CLIENTS = [
20
+ 'codex',
21
+ 'claude-code',
22
+ 'grok',
23
+ 'cursor',
24
+ 'antigravity',
25
+ 'copilot',
26
+ ];
27
+ const clientDefinitions = {
28
+ codex: {
29
+ defaultHome: '.codex',
30
+ executable: 'codex',
31
+ homeEnvironment: { name: 'CODEX_HOME', proves: true },
32
+ },
33
+ 'claude-code': {
34
+ defaultHome: '.claude',
35
+ executable: 'claude',
36
+ },
37
+ grok: {
38
+ defaultHome: '.grok',
39
+ executable: 'grok',
40
+ homeEnvironment: { name: 'GROK_HOME', proves: true },
41
+ },
42
+ cursor: {
43
+ defaultHome: '.cursor',
44
+ executable: 'cursor-agent',
45
+ },
46
+ antigravity: {
47
+ defaultHome: path.join('.gemini', 'config'),
48
+ executable: 'agy',
49
+ },
50
+ copilot: {
51
+ defaultHome: '.copilot',
52
+ executable: 'copilot',
53
+ homeEnvironment: { name: 'XDG_CONFIG_HOME', suffix: '.copilot' },
54
+ },
55
+ };
56
+ export const isSkillClient = (value) => (typeof value === 'string' && SKILL_CLIENTS.includes(value));
57
+ const expandHome = (value, homeDirectory) => (value === '~'
58
+ ? homeDirectory
59
+ : value.startsWith(`~${path.sep}`)
60
+ ? path.join(homeDirectory, value.slice(2))
61
+ : value);
62
+ const exists = async (target) => {
63
+ try {
64
+ await stat(target);
65
+ return true;
66
+ }
67
+ catch (error) {
68
+ if (error.code === 'ENOENT')
69
+ return false;
70
+ throw error;
71
+ }
72
+ };
73
+ const environmentHome = (client, environment, homeDirectory) => {
74
+ const configured = clientDefinitions[client].homeEnvironment;
75
+ const value = configured ? environment[configured.name]?.trim() : undefined;
76
+ if (!value)
77
+ return undefined;
78
+ const expanded = expandHome(value, homeDirectory);
79
+ return configured?.suffix ? path.join(expanded, configured.suffix) : expanded;
80
+ };
81
+ export const resolveClientHome = (args) => {
82
+ const explicitHome = args.clientHome?.trim();
83
+ const configuredHome = explicitHome
84
+ ? expandHome(explicitHome, args.homeDirectory)
85
+ : environmentHome(args.client, args.environment, args.homeDirectory)
86
+ ?? path.join(args.homeDirectory, clientDefinitions[args.client].defaultHome);
87
+ return path.resolve(configuredHome);
88
+ };
89
+ export const executableExists = async (executable, environment) => {
90
+ const pathValue = environment.PATH?.trim();
91
+ if (!pathValue)
92
+ return false;
93
+ const extensions = process.platform === 'win32'
94
+ ? (environment.PATHEXT ?? '.EXE;.CMD;.BAT;.COM').split(';')
95
+ : [''];
96
+ const candidates = pathValue
97
+ .split(path.delimiter)
98
+ .filter(Boolean)
99
+ .flatMap((directory) => extensions.map((extension) => (path.join(directory, `${executable}${extension.toLowerCase()}`))));
100
+ return (await Promise.all(candidates.map(async (candidate) => {
101
+ try {
102
+ await access(candidate, process.platform === 'win32' ? constants.F_OK : constants.X_OK);
103
+ return true;
104
+ }
105
+ catch {
106
+ return false;
107
+ }
108
+ }))).some(Boolean);
109
+ };
110
+ /**
111
+ * Codex is the one client with more than one home per machine: every
112
+ * `~/.codex*` directory is a separate profile with its own skills, and
113
+ * `CODEX_HOME` may point outside that set.
114
+ */
115
+ const discoverCodexHomes = async (environment, homeDirectory) => {
116
+ const configuredHome = environmentHome('codex', environment, homeDirectory);
117
+ let entries = [];
118
+ try {
119
+ entries = await readdir(homeDirectory, { withFileTypes: true });
120
+ }
121
+ catch (error) {
122
+ if (error.code !== 'ENOENT')
123
+ throw error;
124
+ }
125
+ const homes = entries
126
+ .filter((entry) => entry.isDirectory() && entry.name.startsWith('.codex'))
127
+ .map((entry) => path.join(homeDirectory, entry.name))
128
+ .sort();
129
+ if (configuredHome && !homes.some((home) => path.resolve(home) === path.resolve(configuredHome))) {
130
+ homes.push(configuredHome);
131
+ }
132
+ if (homes.length === 0 && await executableExists('codex', environment)) {
133
+ homes.push(path.join(homeDirectory, clientDefinitions.codex.defaultHome));
134
+ }
135
+ return [...new Set(homes.map((home) => path.resolve(home)))];
136
+ };
137
+ /**
138
+ * Homes to install into for one client, or an empty list when the client is
139
+ * not on this machine. A CLIENT-SPECIFIC relocating variable counts as proof
140
+ * on its own — the operator pointed that client somewhere deliberately — but
141
+ * a generic one like `XDG_CONFIG_HOME` only says where the home would be:
142
+ * presence still has to be earned by the directory existing or the
143
+ * executable being on PATH.
144
+ */
145
+ export const discoverClientHomes = async (args) => {
146
+ if (args.client === 'codex')
147
+ return discoverCodexHomes(args.environment, args.homeDirectory);
148
+ const definition = clientDefinitions[args.client];
149
+ const configuredHome = environmentHome(args.client, args.environment, args.homeDirectory);
150
+ const clientHome = resolveClientHome(args);
151
+ const detected = Boolean(configuredHome && definition.homeEnvironment?.proves)
152
+ || await exists(clientHome)
153
+ || await executableExists(definition.executable, args.environment);
154
+ return detected ? [clientHome] : [];
155
+ };
156
+ //# sourceMappingURL=skill-clients.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-clients.js","sourceRoot":"","sources":["../src/skill-clients.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,14 @@
1
+ import { isSkillClient, SKILL_CLIENTS, type SkillClient } from './skill-clients.js';
2
+ export { isSkillClient, SKILL_CLIENTS, type SkillClient };
1
3
  export declare const TWELVE_UI_SKILL_NAME = "design";
2
4
  export declare const TWELVE_UI_SKILL_NAMES: readonly ["design", "design-search", "design-draft", "design-branch", "design-convert"];
3
5
  export type TwelveUiSkillName = typeof TWELVE_UI_SKILL_NAMES[number];
4
- export declare const SKILL_CLIENTS: readonly ["codex", "claude-code"];
5
- export type SkillClient = typeof SKILL_CLIENTS[number];
6
6
  export type SkillInstallStatus = 'not_installed' | 'current' | 'different';
7
7
  export type SkillTarget = {
8
8
  client: SkillClient;
9
9
  destination: string;
10
10
  skill: TwelveUiSkillName;
11
11
  };
12
- export declare const isSkillClient: (value: unknown) => value is SkillClient;
13
12
  export declare const isTwelveUiSkillName: (value: unknown) => value is TwelveUiSkillName;
14
13
  export declare const skillSupportsClient: (skill: TwelveUiSkillName, client: SkillClient) => boolean;
15
14
  export declare const requiredScopesForSkill: (skill: TwelveUiSkillName) => readonly ("design.convert" | "design.corpus.retrieve")[];
@@ -1 +1 @@
1
- {"version":3,"file":"skill-installer.d.ts","sourceRoot":"","sources":["../src/skill-installer.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,qBAAqB,yFAMxB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,aAAa,mCAAoC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AACvD,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,SAAS,GAAG,WAAW,CAAC;AAC3E,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC;AAyEF,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,WAEvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,iBAE7D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,iBAAiB,EACxB,QAAQ,WAAW,KAClB,OAA2D,CAAC;AAE/D,eAAO,MAAM,sBAAsB,GACjC,OAAO,iBAAiB,KACvB,SAAS,CAAC,gBAAgB,GAAG,wBAAwB,CAAC,EAExD,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,QAAQ,SAAS,iBAAiB,EAAE,KACnC,SAAS,CAAC,gBAAgB,GAAG,wBAAwB,CAAC,EAKxD,CAAC;AA6DF,eAAO,MAAM,qBAAqB,GAAI,MAAM;IAC1C,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B,KAAG,MAaH,CAAC;AA2BF,eAAO,MAAM,oBAAoB,GAAU,OAAM;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACtB,KAAG,OAAO,CAAC,WAAW,EAAE,CA+B7B,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,aAAa,MAAM,KAClB,OAAO,CAAC,kBAAkB,CA2B5B,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,MAAM;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,KAAG,OAAO,CAAC,WAAW,GAAG,UAAU,GAAG,iBAAiB,CA8BvD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,iBAAiB,CAAC;CACtD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM;IACnD,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,KAAG,OAAO,CAAC,kBAAkB,EAAE,CA6D/B,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAU,MAAM;IACvD,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,KAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CA6CrD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,OAAO,CAKtE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,QAAO,iBAAwC,KAC9C,OAAO,CAAC,MAAM,CAEhB,CAAC"}
1
+ {"version":3,"file":"skill-installer.d.ts","sourceRoot":"","sources":["../src/skill-installer.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEL,aAAa,EAEb,aAAa,EACb,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,CAAC;AAE1D,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,qBAAqB,yFAMxB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,SAAS,GAAG,WAAW,CAAC;AAC3E,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC;AAiDF,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,iBAE7D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,iBAAiB,EACxB,QAAQ,WAAW,KAClB,OAA2D,CAAC;AAE/D,eAAO,MAAM,sBAAsB,GACjC,OAAO,iBAAiB,KACvB,SAAS,CAAC,gBAAgB,GAAG,wBAAwB,CAAC,EAExD,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,QAAQ,SAAS,iBAAiB,EAAE,KACnC,SAAS,CAAC,gBAAgB,GAAG,wBAAwB,CAAC,EAKxD,CAAC;AAcF,eAAO,MAAM,qBAAqB,GAAI,MAAM;IAC1C,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B,KAAG,MAaH,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,OAAM;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACtB,KAAG,OAAO,CAAC,WAAW,EAAE,CAc7B,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,aAAa,MAAM,KAClB,OAAO,CAAC,kBAAkB,CA2B5B,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,MAAM;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,KAAG,OAAO,CAAC,WAAW,GAAG,UAAU,GAAG,iBAAiB,CA8BvD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,iBAAiB,CAAC;CACtD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAU,MAAM;IACnD,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,KAAG,OAAO,CAAC,kBAAkB,EAAE,CA6D/B,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAU,MAAM;IACvD,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,KAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CA6CrD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,OAAO,CAKtE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,QAAO,iBAAwC,KAC9C,OAAO,CAAC,MAAM,CAEhB,CAAC"}