@buoy-design/cli 0.1.13 → 0.1.14

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 (78) hide show
  1. package/LICENSE +21 -0
  2. package/dist/commands/begin.d.ts.map +1 -1
  3. package/dist/commands/begin.js +18 -0
  4. package/dist/commands/begin.js.map +1 -1
  5. package/dist/commands/check.d.ts +10 -0
  6. package/dist/commands/check.d.ts.map +1 -1
  7. package/dist/commands/check.js +75 -1
  8. package/dist/commands/check.js.map +1 -1
  9. package/dist/commands/ci.d.ts.map +1 -1
  10. package/dist/commands/ci.js +29 -3
  11. package/dist/commands/ci.js.map +1 -1
  12. package/dist/commands/ci.logic.d.ts +8 -2
  13. package/dist/commands/ci.logic.d.ts.map +1 -1
  14. package/dist/commands/ci.logic.js +17 -3
  15. package/dist/commands/ci.logic.js.map +1 -1
  16. package/dist/commands/context.d.ts +9 -0
  17. package/dist/commands/context.d.ts.map +1 -0
  18. package/dist/commands/context.js +217 -0
  19. package/dist/commands/context.js.map +1 -0
  20. package/dist/commands/fix.d.ts +8 -0
  21. package/dist/commands/fix.d.ts.map +1 -0
  22. package/dist/commands/fix.js +224 -0
  23. package/dist/commands/fix.js.map +1 -0
  24. package/dist/commands/index.d.ts +3 -0
  25. package/dist/commands/index.d.ts.map +1 -1
  26. package/dist/commands/index.js +3 -0
  27. package/dist/commands/index.js.map +1 -1
  28. package/dist/commands/skill.d.ts +9 -0
  29. package/dist/commands/skill.d.ts.map +1 -0
  30. package/dist/commands/skill.js +190 -0
  31. package/dist/commands/skill.js.map +1 -0
  32. package/dist/commands/tokens.d.ts.map +1 -1
  33. package/dist/commands/tokens.js +169 -2
  34. package/dist/commands/tokens.js.map +1 -1
  35. package/dist/fix/applier.d.ts +25 -0
  36. package/dist/fix/applier.d.ts.map +1 -0
  37. package/dist/fix/applier.js +211 -0
  38. package/dist/fix/applier.js.map +1 -0
  39. package/dist/fix/index.d.ts +10 -0
  40. package/dist/fix/index.d.ts.map +1 -0
  41. package/dist/fix/index.js +8 -0
  42. package/dist/fix/index.js.map +1 -0
  43. package/dist/fix/safety.d.ts +30 -0
  44. package/dist/fix/safety.d.ts.map +1 -0
  45. package/dist/fix/safety.js +168 -0
  46. package/dist/fix/safety.js.map +1 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +59 -13
  49. package/dist/index.js.map +1 -1
  50. package/dist/output/fix-formatters.d.ts +36 -0
  51. package/dist/output/fix-formatters.d.ts.map +1 -0
  52. package/dist/output/fix-formatters.js +247 -0
  53. package/dist/output/fix-formatters.js.map +1 -0
  54. package/dist/output/index.d.ts +1 -0
  55. package/dist/output/index.d.ts.map +1 -1
  56. package/dist/output/index.js +1 -0
  57. package/dist/output/index.js.map +1 -1
  58. package/dist/output/reports.d.ts +154 -0
  59. package/dist/output/reports.d.ts.map +1 -0
  60. package/dist/output/reports.js +392 -0
  61. package/dist/output/reports.js.map +1 -0
  62. package/dist/services/context-generator.d.ts +43 -0
  63. package/dist/services/context-generator.d.ts.map +1 -0
  64. package/dist/services/context-generator.js +252 -0
  65. package/dist/services/context-generator.js.map +1 -0
  66. package/dist/services/skill-export.d.ts +96 -0
  67. package/dist/services/skill-export.d.ts.map +1 -0
  68. package/dist/services/skill-export.js +566 -0
  69. package/dist/services/skill-export.js.map +1 -0
  70. package/dist/wizard/ai-guardrails-generator.d.ts +20 -0
  71. package/dist/wizard/ai-guardrails-generator.d.ts.map +1 -0
  72. package/dist/wizard/ai-guardrails-generator.js +259 -0
  73. package/dist/wizard/ai-guardrails-generator.js.map +1 -0
  74. package/dist/wizard/index.d.ts +1 -0
  75. package/dist/wizard/index.d.ts.map +1 -1
  76. package/dist/wizard/index.js +1 -0
  77. package/dist/wizard/index.js.map +1 -1
  78. package/package.json +15 -15
@@ -0,0 +1,190 @@
1
+ /**
2
+ * buoy skill - Generate and manage design system skills for AI agents
3
+ *
4
+ * Exports tokens, components, patterns, and anti-patterns as markdown files
5
+ * optimized for progressive disclosure in AI agent workflows.
6
+ */
7
+ import { Command } from 'commander';
8
+ import { existsSync, mkdirSync, writeFileSync } from 'fs';
9
+ import { homedir } from 'os';
10
+ import { dirname, join, resolve } from 'path';
11
+ import { loadConfig, getConfigPath } from '../config/loader.js';
12
+ import { buildAutoConfig } from '../config/auto-detect.js';
13
+ import { ScanOrchestrator } from '../scan/orchestrator.js';
14
+ import { spinner, success, error as errorLog, info, keyValue, newline, setJsonMode, } from '../output/reporters.js';
15
+ import { bulletList } from '../wizard/menu.js';
16
+ import { SkillExportService } from '../services/skill-export.js';
17
+ export function createSkillCommand() {
18
+ const cmd = new Command('skill').description('Generate and manage design system skills for AI agents');
19
+ cmd.addCommand(createExportCommand());
20
+ return cmd;
21
+ }
22
+ function createExportCommand() {
23
+ return new Command('export')
24
+ .description('Export design system as a skill for AI agents')
25
+ .option('-o, --output <path>', 'Output directory', '.claude/skills/design-system')
26
+ .option('--global', 'Export to global skills directory (~/.claude/skills/)')
27
+ .option('--sections <sections>', 'Sections to include (comma-separated)', 'tokens,components,patterns,anti-patterns')
28
+ .option('--dry-run', 'Show what would be created without writing files')
29
+ .option('--json', 'Output result as JSON')
30
+ .action(async (options) => {
31
+ const cwd = process.cwd();
32
+ if (options.json) {
33
+ setJsonMode(true);
34
+ }
35
+ const spin = spinner('Loading configuration...');
36
+ try {
37
+ // Load or auto-detect config
38
+ let config;
39
+ let projectName = 'design-system';
40
+ const configPath = getConfigPath();
41
+ if (configPath) {
42
+ const result = await loadConfig();
43
+ config = result.config;
44
+ projectName = config.project?.name || 'design-system';
45
+ }
46
+ else {
47
+ const autoResult = await buildAutoConfig(cwd);
48
+ config = autoResult.config;
49
+ projectName = config.project?.name || 'design-system';
50
+ }
51
+ // Scan components and tokens
52
+ spin.text = 'Scanning components and tokens...';
53
+ const orchestrator = new ScanOrchestrator(config, cwd);
54
+ const scanResult = await orchestrator.scan({
55
+ onProgress: (msg) => {
56
+ spin.text = msg;
57
+ },
58
+ });
59
+ // Run drift analysis
60
+ spin.text = 'Analyzing for anti-patterns...';
61
+ const { SemanticDiffEngine } = await import('@buoy-design/core/analysis');
62
+ const engine = new SemanticDiffEngine();
63
+ const diffResult = engine.analyzeComponents(scanResult.components, {
64
+ checkDeprecated: true,
65
+ checkNaming: true,
66
+ checkDocumentation: true,
67
+ });
68
+ spin.stop();
69
+ // Determine output path
70
+ let outputPath;
71
+ if (options.global) {
72
+ outputPath = join(homedir(), '.claude', 'skills', 'design-system');
73
+ }
74
+ else {
75
+ outputPath = resolve(cwd, options.output);
76
+ }
77
+ // Parse sections
78
+ const sections = options.sections.split(',').map((s) => s.trim());
79
+ // Generate skill files
80
+ const exportService = new SkillExportService(projectName);
81
+ const result = await exportService.export({
82
+ tokens: scanResult.tokens,
83
+ components: scanResult.components,
84
+ drifts: diffResult.drifts,
85
+ projectName,
86
+ }, {
87
+ sections,
88
+ outputPath,
89
+ });
90
+ // Handle dry-run
91
+ if (options.dryRun) {
92
+ if (options.json) {
93
+ console.log(JSON.stringify({
94
+ dryRun: true,
95
+ outputPath,
96
+ files: result.files.map((f) => f.path),
97
+ stats: result.stats,
98
+ }, null, 2));
99
+ }
100
+ else {
101
+ info('Dry run - files that would be created:');
102
+ newline();
103
+ for (const file of result.files) {
104
+ console.log(` ${file.path}`);
105
+ }
106
+ newline();
107
+ keyValue('Total files', String(result.files.length));
108
+ keyValue('Tokens', String(result.stats.tokens.total));
109
+ keyValue('Components', String(result.stats.components));
110
+ if (result.stats.patterns.length > 0) {
111
+ keyValue('Patterns', result.stats.patterns.join(', '));
112
+ }
113
+ }
114
+ return;
115
+ }
116
+ // Write files
117
+ for (const file of result.files) {
118
+ const dir = dirname(file.path);
119
+ if (!existsSync(dir)) {
120
+ mkdirSync(dir, { recursive: true });
121
+ }
122
+ writeFileSync(file.path, file.content);
123
+ }
124
+ // Output results
125
+ if (options.json) {
126
+ console.log(JSON.stringify({
127
+ success: true,
128
+ outputPath,
129
+ files: result.files.map((f) => f.path),
130
+ stats: result.stats,
131
+ }, null, 2));
132
+ }
133
+ else {
134
+ success(`Created skill at ${outputPath}`);
135
+ newline();
136
+ bulletList([
137
+ `SKILL.md (entry point)`,
138
+ `tokens/ (${result.stats.tokens.total} tokens)`,
139
+ `components/ (${result.stats.components} components)`,
140
+ result.stats.patterns.length > 0
141
+ ? `patterns/ (${result.stats.patterns.join(', ')})`
142
+ : 'patterns/',
143
+ 'anti-patterns/',
144
+ ]);
145
+ // No Dead Ends: Explain empty results and suggest next steps
146
+ if (result.stats.tokens.total === 0 && result.stats.components === 0) {
147
+ newline();
148
+ info('The skill was created but is minimal because:');
149
+ bulletList([
150
+ 'No design tokens were found',
151
+ 'No components were detected',
152
+ ]);
153
+ newline();
154
+ info('To enrich the skill:');
155
+ bulletList([
156
+ 'Run `buoy tokens` to extract tokens from hardcoded values',
157
+ 'Add a design-tokens.json or tokens.css file',
158
+ 'Ensure components are in src/components/ or similar paths',
159
+ ]);
160
+ }
161
+ else if (result.stats.tokens.total === 0) {
162
+ newline();
163
+ info('Note: No tokens found. Run `buoy tokens` to extract from codebase.');
164
+ }
165
+ else if (result.stats.components === 0) {
166
+ newline();
167
+ info('Note: No components found. Ensure component files are in src/.');
168
+ }
169
+ else {
170
+ newline();
171
+ info('AI agents will now:');
172
+ bulletList([
173
+ 'Load your design system skill when building UI',
174
+ 'See token rules in project context',
175
+ 'Get validation feedback from buoy check',
176
+ ]);
177
+ }
178
+ newline();
179
+ info('To update, run: buoy skill export');
180
+ }
181
+ }
182
+ catch (err) {
183
+ spin.stop();
184
+ const message = err instanceof Error ? err.message : String(err);
185
+ errorLog(`Export failed: ${message}`);
186
+ process.exit(1);
187
+ }
188
+ });
189
+ }
190
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,OAAO,EACP,OAAO,EACP,KAAK,IAAI,QAAQ,EACjB,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGjE,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAC1C,wDAAwD,CACzD,CAAC;IAEF,GAAG,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAEtC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;SACzB,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CACL,qBAAqB,EACrB,kBAAkB,EAClB,8BAA8B,CAC/B;SACA,MAAM,CAAC,UAAU,EAAE,uDAAuD,CAAC;SAC3E,MAAM,CACL,uBAAuB,EACvB,uCAAuC,EACvC,0CAA0C,CAC3C;SACA,MAAM,CAAC,WAAW,EAAE,kDAAkD,CAAC;SACvE,MAAM,CAAC,QAAQ,EAAE,uBAAuB,CAAC;SACzC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAEjD,IAAI,CAAC;YACH,6BAA6B;YAC7B,IAAI,MAAkB,CAAC;YACvB,IAAI,WAAW,GAAG,eAAe,CAAC;YAElC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;gBAClC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gBACvB,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,eAAe,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;gBAC9C,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;gBAC3B,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,eAAe,CAAC;YACxD,CAAC;YAED,6BAA6B;YAC7B,IAAI,CAAC,IAAI,GAAG,mCAAmC,CAAC;YAChD,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC;gBACzC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;oBAClB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;gBAClB,CAAC;aACF,CAAC,CAAC;YAEH,qBAAqB;YACrB,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;YAC7C,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;YAC1E,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,UAAU,EAAE;gBACjE,eAAe,EAAE,IAAI;gBACrB,WAAW,EAAE,IAAI;gBACjB,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YAEZ,wBAAwB;YACxB,IAAI,UAAkB,CAAC;YACvB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;YAED,iBAAiB;YACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAE1E,uBAAuB;YACvB,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CACvC;gBACE,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,WAAW;aACZ,EACD;gBACE,QAAQ;gBACR,UAAU;aACX,CACF,CAAC;YAEF,iBAAiB;YACjB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;wBACE,MAAM,EAAE,IAAI;wBACZ,UAAU;wBACV,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;wBACtC,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,wCAAwC,CAAC,CAAC;oBAC/C,OAAO,EAAE,CAAC;oBACV,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBAChC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAChC,CAAC;oBACD,OAAO,EAAE,CAAC;oBACV,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;oBACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACtD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;oBACxD,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;gBACD,OAAO;YACT,CAAC;YAED,cAAc;YACd,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtC,CAAC;gBACD,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;YAED,iBAAiB;YACjB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;oBACE,OAAO,EAAE,IAAI;oBACb,UAAU;oBACV,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oBACtC,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,oBAAoB,UAAU,EAAE,CAAC,CAAC;gBAC1C,OAAO,EAAE,CAAC;gBAEV,UAAU,CAAC;oBACT,wBAAwB;oBACxB,YAAY,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,UAAU;oBAC/C,gBAAgB,MAAM,CAAC,KAAK,CAAC,UAAU,cAAc;oBACrD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAC9B,CAAC,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;wBACnD,CAAC,CAAC,WAAW;oBACf,gBAAgB;iBACjB,CAAC,CAAC;gBAEH,6DAA6D;gBAC7D,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;oBACrE,OAAO,EAAE,CAAC;oBACV,IAAI,CAAC,+CAA+C,CAAC,CAAC;oBACtD,UAAU,CAAC;wBACT,6BAA6B;wBAC7B,6BAA6B;qBAC9B,CAAC,CAAC;oBACH,OAAO,EAAE,CAAC;oBACV,IAAI,CAAC,sBAAsB,CAAC,CAAC;oBAC7B,UAAU,CAAC;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,2DAA2D;qBAC5D,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;oBAC3C,OAAO,EAAE,CAAC;oBACV,IAAI,CAAC,oEAAoE,CAAC,CAAC;gBAC7E,CAAC;qBAAM,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;oBACzC,OAAO,EAAE,CAAC;oBACV,IAAI,CAAC,gEAAgE,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;oBACV,IAAI,CAAC,qBAAqB,CAAC,CAAC;oBAC5B,UAAU,CAAC;wBACT,gDAAgD;wBAChD,oCAAoC;wBACpC,yCAAyC;qBAC1C,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,EAAE,CAAC;gBACV,IAAI,CAAC,mCAAmC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,QAAQ,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,wBAAgB,mBAAmB,IAAI,OAAO,CAmO7C"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,wBAAgB,mBAAmB,IAAI,OAAO,CAyO7C"}
@@ -14,7 +14,7 @@ export function createTokensCommand() {
14
14
  const cmd = new Command('tokens')
15
15
  .description('Generate design tokens from your codebase')
16
16
  .option('-o, --output <path>', 'Output file path (auto-detected if not specified)')
17
- .option('--format <format>', 'Output format: css, json, tailwind (auto-detected if not specified)')
17
+ .option('--format <format>', 'Output format: css, json, tailwind, ai-context (auto-detected if not specified)')
18
18
  .option('--dry-run', 'Preview without writing files')
19
19
  .option('--prefix <prefix>', 'Prefix for CSS custom properties (e.g., "ds-")')
20
20
  .action(async (options) => {
@@ -31,7 +31,9 @@ export function createTokensCommand() {
31
31
  ? 'buoy.tokens.js'
32
32
  : format === 'json'
33
33
  ? 'design-tokens.json'
34
- : 'design-tokens.css';
34
+ : format === 'ai-context'
35
+ ? 'tokens-ai-context.json'
36
+ : 'design-tokens.css';
35
37
  const outputPath = resolve(cwd, options.output || defaultOutput);
36
38
  // Get config (or auto-detect)
37
39
  let config;
@@ -191,6 +193,11 @@ export function createTokensCommand() {
191
193
  console.log(chalk.cyan(` const tokens = require("./${relative(cwd, outputPath)}");`));
192
194
  console.log(chalk.cyan(' // Spread into theme.extend'));
193
195
  }
196
+ else if (format === 'ai-context') {
197
+ info('Next: Use this file for AI agent context:');
198
+ console.log(chalk.cyan(` • Add to .claude/skills/design-system/tokens/`));
199
+ console.log(chalk.cyan(` • Or reference in CLAUDE.md`));
200
+ }
194
201
  else {
195
202
  info('Next: Import tokens in your build system');
196
203
  }
@@ -220,10 +227,170 @@ function getOutput(result, format) {
220
227
  return JSON.stringify(result.json, null, 2);
221
228
  case 'tailwind':
222
229
  return generateTailwindOutput(result);
230
+ case 'ai-context':
231
+ return generateAIContextOutput(result);
223
232
  default:
224
233
  return result.css;
225
234
  }
226
235
  }
236
+ /**
237
+ * Generate AI context format output.
238
+ * This format includes intent metadata to help AI understand token usage.
239
+ */
240
+ function generateAIContextOutput(result) {
241
+ const tokens = {
242
+ color: {},
243
+ spacing: {},
244
+ typography: {},
245
+ radius: {},
246
+ };
247
+ // Color intent mapping based on naming patterns
248
+ const getColorIntent = (name) => {
249
+ const lower = name.toLowerCase();
250
+ if (lower.includes('primary')) {
251
+ return {
252
+ hierarchy: 'primary-action',
253
+ usage: 'Primary CTAs, submit buttons, main actions',
254
+ avoid: 'Decorative elements, backgrounds, secondary text',
255
+ };
256
+ }
257
+ if (lower.includes('secondary')) {
258
+ return {
259
+ hierarchy: 'secondary-action',
260
+ usage: 'Secondary buttons, less prominent actions',
261
+ avoid: 'Primary call-to-action contexts',
262
+ };
263
+ }
264
+ if (lower.includes('error') || lower.includes('danger') || lower.includes('destructive')) {
265
+ return {
266
+ hierarchy: 'destructive',
267
+ usage: 'Error states, delete actions, warnings',
268
+ avoid: 'Success states, neutral information',
269
+ };
270
+ }
271
+ if (lower.includes('success') || lower.includes('positive')) {
272
+ return {
273
+ hierarchy: 'positive-feedback',
274
+ usage: 'Success messages, confirmations, positive states',
275
+ avoid: 'Primary actions, warnings',
276
+ };
277
+ }
278
+ if (lower.includes('warning') || lower.includes('caution')) {
279
+ return {
280
+ hierarchy: 'cautionary',
281
+ usage: 'Warning messages, pending states, caution indicators',
282
+ avoid: 'Success or error states',
283
+ };
284
+ }
285
+ if (lower.includes('muted') || lower.includes('subtle') || lower.includes('disabled')) {
286
+ return {
287
+ hierarchy: 'de-emphasized',
288
+ usage: 'Disabled states, placeholder text, subtle backgrounds',
289
+ avoid: 'Interactive elements, important information',
290
+ };
291
+ }
292
+ return {};
293
+ };
294
+ // Spacing intent mapping
295
+ const getSpacingIntent = (value) => {
296
+ const numericValue = parseFloat(value);
297
+ if (isNaN(numericValue))
298
+ return {};
299
+ if (numericValue <= 4) {
300
+ return {
301
+ relationship: 'tightly-coupled',
302
+ density: 'compact',
303
+ usage: 'Between inline elements, tight groupings',
304
+ };
305
+ }
306
+ if (numericValue <= 8) {
307
+ return {
308
+ relationship: 'related-elements',
309
+ density: 'standard',
310
+ usage: 'Between related form fields, list items',
311
+ };
312
+ }
313
+ if (numericValue <= 16) {
314
+ return {
315
+ relationship: 'grouped-sections',
316
+ density: 'comfortable',
317
+ usage: 'Card padding, section margins',
318
+ };
319
+ }
320
+ if (numericValue <= 32) {
321
+ return {
322
+ relationship: 'distinct-sections',
323
+ density: 'spacious',
324
+ usage: 'Between major page sections',
325
+ };
326
+ }
327
+ return {
328
+ relationship: 'page-level',
329
+ density: 'expansive',
330
+ usage: 'Page margins, major layout gaps',
331
+ };
332
+ };
333
+ for (const token of result.tokens) {
334
+ const category = token.category === 'font-size' ? 'typography' : token.category;
335
+ const targetCategory = tokens[category] || (tokens[category] = {});
336
+ const aiToken = {
337
+ $value: token.value,
338
+ $type: token.category,
339
+ $deprecated: false,
340
+ };
341
+ // Add intent based on category
342
+ if (category === 'color') {
343
+ const intent = getColorIntent(token.name);
344
+ if (intent.hierarchy) {
345
+ aiToken.$intent = { hierarchy: intent.hierarchy };
346
+ }
347
+ if (intent.usage)
348
+ aiToken.$usage = intent.usage;
349
+ if (intent.avoid)
350
+ aiToken.$avoid = intent.avoid;
351
+ aiToken.$examples = [`className="text-${token.name}"`, `style={{ color: tokens.${token.name} }}`];
352
+ }
353
+ else if (category === 'spacing') {
354
+ const intent = getSpacingIntent(token.value);
355
+ if (intent.relationship || intent.density) {
356
+ aiToken.$intent = {
357
+ relationship: intent.relationship,
358
+ density: intent.density,
359
+ };
360
+ }
361
+ if (intent.usage)
362
+ aiToken.$usage = intent.usage;
363
+ aiToken.$examples = [`className="p-${token.name}"`, `style={{ padding: tokens.${token.name} }}`];
364
+ }
365
+ else if (category === 'radius') {
366
+ aiToken.$usage = 'Border radius for rounded corners';
367
+ aiToken.$examples = [`className="rounded-${token.name}"`, `style={{ borderRadius: tokens.${token.name} }}`];
368
+ }
369
+ else if (category === 'typography') {
370
+ aiToken.$usage = 'Font size for text elements';
371
+ aiToken.$examples = [`className="text-${token.name}"`, `style={{ fontSize: tokens.${token.name} }}`];
372
+ }
373
+ targetCategory[token.name] = aiToken;
374
+ }
375
+ const output = {
376
+ $schema: 'https://buoy.design/schemas/ai-context-tokens.json',
377
+ version: '1.0',
378
+ generatedAt: new Date().toISOString(),
379
+ generatedBy: 'buoy tokens --format ai-context',
380
+ tokens,
381
+ rules: {
382
+ colors: 'NEVER hardcode hex colors. Always use color tokens.',
383
+ spacing: 'NEVER use arbitrary pixel values. Use spacing scale tokens.',
384
+ typography: 'NEVER hardcode font sizes. Use typography tokens.',
385
+ radius: 'NEVER hardcode border-radius. Use radius tokens.',
386
+ },
387
+ validation: {
388
+ command: 'buoy check',
389
+ description: 'Run before committing to validate design system compliance',
390
+ },
391
+ };
392
+ return JSON.stringify(output, null, 2);
393
+ }
227
394
  function generateTailwindOutput(result) {
228
395
  const colors = {};
229
396
  const spacing = {};
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Fix Applier
3
+ *
4
+ * Applies fixes to source files by replacing hardcoded values with design tokens.
5
+ */
6
+ import type { Fix, FixResult, FixApplyOptions } from '@buoy-design/core';
7
+ export interface ApplyFixesResult {
8
+ results: FixResult[];
9
+ applied: number;
10
+ skipped: number;
11
+ failed: number;
12
+ }
13
+ /**
14
+ * Apply multiple fixes to source files
15
+ */
16
+ export declare function applyFixes(fixes: Fix[], options?: FixApplyOptions): Promise<ApplyFixesResult>;
17
+ /**
18
+ * Generate a diff preview for a fix
19
+ */
20
+ export declare function generateFixDiff(fix: Fix, _contextLines?: number): string;
21
+ /**
22
+ * Generate a full diff preview by reading the actual file
23
+ */
24
+ export declare function generateFullDiff(fix: Fix, contextLines?: number): Promise<string>;
25
+ //# sourceMappingURL=applier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applier.d.ts","sourceRoot":"","sources":["../../src/fix/applier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,GAAG,EAAE,EACZ,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA2B3B;AAqJD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,MAAU,GAAG,MAAM,CAU3E;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,GAAG,EACR,YAAY,GAAE,MAAU,GACvB,OAAO,CAAC,MAAM,CAAC,CAqCjB"}