@12ui/design 0.2.15 → 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 (66) hide show
  1. package/README.md +21 -1
  2. package/dist/branch-execution.d.ts +5 -0
  3. package/dist/branch-execution.d.ts.map +1 -1
  4. package/dist/branch-execution.js +26 -8
  5. package/dist/branch-execution.js.map +1 -1
  6. package/dist/branch-page-conversion.d.ts +18 -2
  7. package/dist/branch-page-conversion.d.ts.map +1 -1
  8. package/dist/branch-page-conversion.js +36 -16
  9. package/dist/branch-page-conversion.js.map +1 -1
  10. package/dist/branch-run-record.d.ts +3 -0
  11. package/dist/branch-run-record.d.ts.map +1 -1
  12. package/dist/branch-run-record.js.map +1 -1
  13. package/dist/cli-capabilities.d.ts +15 -5
  14. package/dist/cli-capabilities.d.ts.map +1 -1
  15. package/dist/cli-capabilities.js +19 -5
  16. package/dist/cli-capabilities.js.map +1 -1
  17. package/dist/cli-draft-command.d.ts +2 -0
  18. package/dist/cli-draft-command.d.ts.map +1 -1
  19. package/dist/cli-draft-command.js +22 -4
  20. package/dist/cli-draft-command.js.map +1 -1
  21. package/dist/cli-package-command.d.ts +2 -0
  22. package/dist/cli-package-command.d.ts.map +1 -1
  23. package/dist/cli-package-command.js +11 -0
  24. package/dist/cli-package-command.js.map +1 -1
  25. package/dist/cli-skill-command.d.ts.map +1 -1
  26. package/dist/cli-skill-command.js +27 -12
  27. package/dist/cli-skill-command.js.map +1 -1
  28. package/dist/cli.js +7 -7
  29. package/dist/cli.js.map +1 -1
  30. package/dist/conversion-receipt-store.d.ts +75 -0
  31. package/dist/conversion-receipt-store.d.ts.map +1 -0
  32. package/dist/conversion-receipt-store.js +143 -0
  33. package/dist/conversion-receipt-store.js.map +1 -0
  34. package/dist/conversion-receipt.d.ts +139 -43
  35. package/dist/conversion-receipt.d.ts.map +1 -1
  36. package/dist/conversion-receipt.js +241 -73
  37. package/dist/conversion-receipt.js.map +1 -1
  38. package/dist/draft-adoption.d.ts +48 -0
  39. package/dist/draft-adoption.d.ts.map +1 -0
  40. package/dist/draft-adoption.js +237 -0
  41. package/dist/draft-adoption.js.map +1 -0
  42. package/dist/draft-run.d.ts +10 -0
  43. package/dist/draft-run.d.ts.map +1 -1
  44. package/dist/draft-run.js +16 -4
  45. package/dist/draft-run.js.map +1 -1
  46. package/dist/legacy-skill-catalog.d.ts.map +1 -1
  47. package/dist/legacy-skill-catalog.js +40 -0
  48. package/dist/legacy-skill-catalog.js.map +1 -1
  49. package/dist/package-submission.d.ts +12 -1
  50. package/dist/package-submission.d.ts.map +1 -1
  51. package/dist/package-submission.js +2 -0
  52. package/dist/package-submission.js.map +1 -1
  53. package/dist/skill-clients.d.ts +39 -0
  54. package/dist/skill-clients.d.ts.map +1 -0
  55. package/dist/skill-clients.js +156 -0
  56. package/dist/skill-clients.js.map +1 -0
  57. package/dist/skill-installer.d.ts +2 -3
  58. package/dist/skill-installer.d.ts.map +1 -1
  59. package/dist/skill-installer.js +9 -101
  60. package/dist/skill-installer.js.map +1 -1
  61. package/package.json +1 -1
  62. package/skills/design/SKILL.md +2 -2
  63. package/skills/design-branch/SKILL.md +3 -3
  64. package/skills/design-convert/SKILL.md +3 -3
  65. package/skills/design-draft/SKILL.md +3 -3
  66. package/skills/design-search/SKILL.md +3 -3
@@ -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":"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"}
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"}
@@ -1,10 +1,11 @@
1
1
  import { randomUUID } from 'node:crypto';
2
- import { constants } from 'node:fs';
3
- import { access, cp, mkdir, readdir, readFile, rename, rmdir, rm, stat, } from 'node:fs/promises';
2
+ import { cp, mkdir, readdir, readFile, rename, rmdir, rm, stat, } from 'node:fs/promises';
4
3
  import os from 'node:os';
5
4
  import path from 'node:path';
6
5
  import { fileURLToPath } from 'node:url';
7
6
  import { inspectLegacySkillDirectory, inspectRecognizedSkillDirectory, matchingLegacySkillFiles, RETIRED_SKILL_NAMES, } from './legacy-skill-catalog.js';
7
+ import { discoverClientHomes, isSkillClient, resolveClientHome, SKILL_CLIENTS, } from './skill-clients.js';
8
+ export { isSkillClient, SKILL_CLIENTS };
8
9
  export const TWELVE_UI_SKILL_NAME = 'design';
9
10
  export const TWELVE_UI_SKILL_NAMES = [
10
11
  TWELVE_UI_SKILL_NAME,
@@ -13,7 +14,6 @@ export const TWELVE_UI_SKILL_NAMES = [
13
14
  'design-branch',
14
15
  'design-convert',
15
16
  ];
16
- export const SKILL_CLIENTS = ['codex', 'claude-code'];
17
17
  const skillDefinitions = {
18
18
  design: {
19
19
  clients: SKILL_CLIENTS,
@@ -36,17 +36,6 @@ const skillDefinitions = {
36
36
  requiredScopes: ['design.convert'],
37
37
  },
38
38
  };
39
- const clientDefinitions = {
40
- codex: {
41
- defaultHome: '.codex',
42
- executable: 'codex',
43
- homeEnvironment: 'CODEX_HOME',
44
- },
45
- 'claude-code': {
46
- defaultHome: '.claude',
47
- executable: 'claude',
48
- },
49
- };
50
39
  const exists = async (target) => {
51
40
  try {
52
41
  await stat(target);
@@ -69,12 +58,6 @@ const listFiles = async (root, relative = '') => {
69
58
  }));
70
59
  return files.flat().sort();
71
60
  };
72
- const expandHome = (value, homeDirectory) => (value === '~'
73
- ? homeDirectory
74
- : value.startsWith(`~${path.sep}`)
75
- ? path.join(homeDirectory, value.slice(2))
76
- : value);
77
- export const isSkillClient = (value) => (typeof value === 'string' && SKILL_CLIENTS.includes(value));
78
61
  export const isTwelveUiSkillName = (value) => (typeof value === 'string' && TWELVE_UI_SKILL_NAMES.includes(value));
79
62
  export const skillSupportsClient = (skill, client) => skillDefinitions[skill].clients.includes(client);
80
63
  export const requiredScopesForSkill = (skill) => (skillDefinitions[skill].requiredScopes);
@@ -90,43 +73,6 @@ const skillFromDestination = (destination) => {
90
73
  }
91
74
  return name;
92
75
  };
93
- const resolveClientHome = (args) => {
94
- const definition = clientDefinitions[args.client];
95
- const environmentHome = definition.homeEnvironment
96
- ? args.environment[definition.homeEnvironment]?.trim()
97
- : undefined;
98
- const configuredHome = args.clientHome?.trim()
99
- || environmentHome
100
- || path.join(args.homeDirectory, definition.defaultHome);
101
- return path.resolve(expandHome(configuredHome, args.homeDirectory));
102
- };
103
- const discoverCodexHomes = async (environment, homeDirectory) => {
104
- const configuredHome = environment.CODEX_HOME?.trim();
105
- let entries = [];
106
- try {
107
- entries = await readdir(homeDirectory, { withFileTypes: true });
108
- }
109
- catch (error) {
110
- if (error.code !== 'ENOENT')
111
- throw error;
112
- }
113
- const profileHomes = entries
114
- .filter((entry) => (entry.isDirectory()
115
- && entry.name.startsWith('.codex')))
116
- .map((entry) => path.join(homeDirectory, entry.name))
117
- .sort();
118
- const homes = [...profileHomes];
119
- if (configuredHome) {
120
- const resolvedConfiguredHome = path.resolve(expandHome(configuredHome, homeDirectory));
121
- if (!homes.some((home) => path.resolve(home) === resolvedConfiguredHome)) {
122
- homes.push(resolvedConfiguredHome);
123
- }
124
- }
125
- if (homes.length === 0 && await executableExists('codex', environment)) {
126
- homes.push(path.join(homeDirectory, clientDefinitions.codex.defaultHome));
127
- }
128
- return [...new Set(homes.map((home) => path.resolve(home)))];
129
- };
130
76
  export const resolveSkillDirectory = (args) => {
131
77
  const skill = args.skill ?? TWELVE_UI_SKILL_NAME;
132
78
  if (!skillSupportsClient(skill, args.client)) {
@@ -141,27 +87,6 @@ export const resolveSkillDirectory = (args) => {
141
87
  });
142
88
  return path.join(clientHome, 'skills', skill);
143
89
  };
144
- const executableExists = async (executable, environment) => {
145
- const pathValue = environment.PATH?.trim();
146
- if (!pathValue)
147
- return false;
148
- const extensions = process.platform === 'win32'
149
- ? (environment.PATHEXT ?? '.EXE;.CMD;.BAT;.COM').split(';')
150
- : [''];
151
- const candidates = pathValue
152
- .split(path.delimiter)
153
- .filter(Boolean)
154
- .flatMap((directory) => extensions.map((extension) => (path.join(directory, `${executable}${extension.toLowerCase()}`))));
155
- return (await Promise.all(candidates.map(async (candidate) => {
156
- try {
157
- await access(candidate, process.platform === 'win32' ? constants.F_OK : constants.X_OK);
158
- return true;
159
- }
160
- catch {
161
- return false;
162
- }
163
- }))).some(Boolean);
164
- };
165
90
  export const discoverSkillTargets = async (args = {}) => {
166
91
  const skill = args.skill ?? TWELVE_UI_SKILL_NAME;
167
92
  const environment = args.environment ?? process.env;
@@ -169,29 +94,12 @@ export const discoverSkillTargets = async (args = {}) => {
169
94
  const discovered = await Promise.all(SKILL_CLIENTS.map(async (client) => {
170
95
  if (!skillSupportsClient(skill, client))
171
96
  return [];
172
- if (client === 'codex') {
173
- const homes = await discoverCodexHomes(environment, homeDirectory);
174
- return homes.map((clientHome) => ({
175
- client,
176
- destination: path.join(clientHome, 'skills', skill),
177
- skill,
178
- }));
179
- }
180
- const definition = clientDefinitions[client];
181
- const configuredHome = definition.homeEnvironment
182
- ? environment[definition.homeEnvironment]?.trim()
183
- : undefined;
184
- const clientHome = resolveClientHome({ client, environment, homeDirectory });
185
- const detected = Boolean(configuredHome)
186
- || await exists(clientHome)
187
- || await executableExists(definition.executable, environment);
188
- return detected
189
- ? [{
190
- client,
191
- destination: path.join(clientHome, 'skills', skill),
192
- skill,
193
- }]
194
- : [];
97
+ const homes = await discoverClientHomes({ client, environment, homeDirectory });
98
+ return homes.map((clientHome) => ({
99
+ client,
100
+ destination: path.join(clientHome, 'skills', skill),
101
+ skill,
102
+ }));
195
103
  }));
196
104
  return discovered.flat();
197
105
  };
@@ -1 +1 @@
1
- {"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../src/skill-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../src/skill-installer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@12ui/design",
3
- "version": "0.2.15",
3
+ "version": "0.2.16",
4
4
  "type": "module",
5
5
  "description": "The canonical 12UI CLI, SDK, MCP server, and visual interface design skills",
6
6
  "main": "dist/index.js",
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  name: design
3
3
  description: "Required for non-trivial UI creation and redesign (web, app,
4
- mobile): explores distinctive, corpus-grounded visual directions as images,
5
- then converts the chosen one into production-ready code."
4
+ mobile): explores distinctive, corpus-grounded visual directions as images,
5
+ then converts the chosen one into production-ready code."
6
6
  ---
7
7
 
8
8
  # Design
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  name: design-branch
3
3
  description: "Required whenever the deliverable is more than one viewport — a
4
- full page, a multi-route site, or an app with several states: expands one
5
- approved design into every planned screen and converts each page as one
6
- ordered package. Not for a single above-the-fold screen."
4
+ full page, a multi-route site, or an app with several states: expands one
5
+ approved design into every planned screen and converts each page as one
6
+ ordered package. Not for a single above-the-fold screen."
7
7
  ---
8
8
 
9
9
  # Design branch
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  name: design-convert
3
3
  description: "Required to turn a finished PNG, JPEG, or WebP design into
4
- production output: converts it once into a structured LayerDoc, then derives
5
- responsive HTML, web or native app code, PDF, PSD, PPTX, Sketch, SVG, PNG,
6
- JPEG, or WebP from that one conversion."
4
+ production output: converts it once into a structured LayerDoc, then derives
5
+ responsive HTML, web or native app code, PDF, PSD, PPTX, Sketch, SVG, PNG,
6
+ JPEG, or WebP from that one conversion."
7
7
  ---
8
8
 
9
9
  # Design convert
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  name: design-draft
3
3
  description: "Required to draft candidate interface designs through the
4
- hosted create API when a run needs more slots or per-slot control than
5
- `12ui draft` exposes: claims an idempotent run from a written brief,
6
- generates one candidate per slot, and downloads the images."
4
+ hosted create API when a run needs more slots or per-slot control than
5
+ `12ui draft` exposes: claims an idempotent run from a written brief,
6
+ generates one candidate per slot, and downloads the images."
7
7
  ---
8
8
 
9
9
  # Design draft
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  name: design-search
3
3
  description: "Required when reference imagery is the deliverable: searches
4
- the 12ui design corpus from a rough UI, web, or mobile concept and downloads
5
- a ranked, diverse set of reference images with strong visual quality, sound
6
- UX, and personality."
4
+ the 12ui design corpus from a rough UI, web, or mobile concept and downloads
5
+ a ranked, diverse set of reference images with strong visual quality, sound
6
+ UX, and personality."
7
7
  ---
8
8
 
9
9
  # Design search