@buoy-design/cli 0.1.30 → 0.2.0

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 (135) hide show
  1. package/assets/commands/contribution-loop.md +195 -0
  2. package/dist/bin.js +0 -0
  3. package/dist/cloud/config.d.ts +8 -0
  4. package/dist/cloud/config.d.ts.map +1 -1
  5. package/dist/cloud/config.js +10 -0
  6. package/dist/cloud/config.js.map +1 -1
  7. package/dist/cloud/feature-gate.d.ts +30 -0
  8. package/dist/cloud/feature-gate.d.ts.map +1 -0
  9. package/dist/cloud/feature-gate.js +138 -0
  10. package/dist/cloud/feature-gate.js.map +1 -0
  11. package/dist/cloud/index.d.ts +1 -0
  12. package/dist/cloud/index.d.ts.map +1 -1
  13. package/dist/cloud/index.js +1 -0
  14. package/dist/cloud/index.js.map +1 -1
  15. package/dist/commands/anchor.js +1 -1
  16. package/dist/commands/anchor.js.map +1 -1
  17. package/dist/commands/begin.d.ts.map +1 -1
  18. package/dist/commands/begin.js +118 -5
  19. package/dist/commands/begin.js.map +1 -1
  20. package/dist/commands/billing.d.ts +1 -1
  21. package/dist/commands/billing.js +22 -18
  22. package/dist/commands/billing.js.map +1 -1
  23. package/dist/commands/bot.d.ts +9 -0
  24. package/dist/commands/bot.d.ts.map +1 -0
  25. package/dist/commands/bot.js +258 -0
  26. package/dist/commands/bot.js.map +1 -0
  27. package/dist/commands/check.d.ts.map +1 -1
  28. package/dist/commands/check.js +16 -2
  29. package/dist/commands/check.js.map +1 -1
  30. package/dist/commands/cloud.d.ts +15 -0
  31. package/dist/commands/cloud.d.ts.map +1 -0
  32. package/dist/commands/cloud.js +36 -0
  33. package/dist/commands/cloud.js.map +1 -0
  34. package/dist/commands/commands.d.ts +8 -0
  35. package/dist/commands/commands.d.ts.map +1 -0
  36. package/dist/commands/commands.js +148 -0
  37. package/dist/commands/commands.js.map +1 -0
  38. package/dist/commands/components-query.d.ts +13 -0
  39. package/dist/commands/components-query.d.ts.map +1 -0
  40. package/dist/commands/components-query.js +263 -0
  41. package/dist/commands/components-query.js.map +1 -0
  42. package/dist/commands/components.d.ts +8 -0
  43. package/dist/commands/components.d.ts.map +1 -0
  44. package/dist/commands/components.js +14 -0
  45. package/dist/commands/components.js.map +1 -0
  46. package/dist/commands/dock.d.ts +13 -0
  47. package/dist/commands/dock.d.ts.map +1 -1
  48. package/dist/commands/dock.js +594 -832
  49. package/dist/commands/dock.js.map +1 -1
  50. package/dist/commands/drift.d.ts.map +1 -1
  51. package/dist/commands/drift.js +4 -13
  52. package/dist/commands/drift.js.map +1 -1
  53. package/dist/commands/fix.js +1 -1
  54. package/dist/commands/fix.js.map +1 -1
  55. package/dist/commands/github.d.ts.map +1 -1
  56. package/dist/commands/github.js +8 -6
  57. package/dist/commands/github.js.map +1 -1
  58. package/dist/commands/history.js +2 -2
  59. package/dist/commands/history.js.map +1 -1
  60. package/dist/commands/import.js +1 -1
  61. package/dist/commands/import.js.map +1 -1
  62. package/dist/commands/index.d.ts +2 -22
  63. package/dist/commands/index.d.ts.map +1 -1
  64. package/dist/commands/index.js +3 -23
  65. package/dist/commands/index.js.map +1 -1
  66. package/dist/commands/learn.d.ts +9 -0
  67. package/dist/commands/learn.d.ts.map +1 -0
  68. package/dist/commands/learn.js +244 -0
  69. package/dist/commands/learn.js.map +1 -0
  70. package/dist/commands/link.js +2 -2
  71. package/dist/commands/link.js.map +1 -1
  72. package/dist/commands/login.d.ts.map +1 -1
  73. package/dist/commands/login.js +12 -3
  74. package/dist/commands/login.js.map +1 -1
  75. package/dist/commands/onboard.d.ts.map +1 -1
  76. package/dist/commands/onboard.js +64 -1
  77. package/dist/commands/onboard.js.map +1 -1
  78. package/dist/commands/plans.d.ts +9 -0
  79. package/dist/commands/plans.d.ts.map +1 -0
  80. package/dist/commands/plans.js +140 -0
  81. package/dist/commands/plans.js.map +1 -0
  82. package/dist/commands/ship.d.ts +14 -0
  83. package/dist/commands/ship.d.ts.map +1 -0
  84. package/dist/commands/ship.js +342 -0
  85. package/dist/commands/ship.js.map +1 -0
  86. package/dist/commands/show.d.ts +3 -0
  87. package/dist/commands/show.d.ts.map +1 -0
  88. package/dist/commands/show.js +340 -0
  89. package/dist/commands/show.js.map +1 -0
  90. package/dist/commands/status.d.ts.map +1 -1
  91. package/dist/commands/status.js +13 -0
  92. package/dist/commands/status.js.map +1 -1
  93. package/dist/commands/sync.js +1 -1
  94. package/dist/commands/sync.js.map +1 -1
  95. package/dist/commands/tokens-lookup.d.ts +14 -0
  96. package/dist/commands/tokens-lookup.d.ts.map +1 -0
  97. package/dist/commands/tokens-lookup.js +300 -0
  98. package/dist/commands/tokens-lookup.js.map +1 -0
  99. package/dist/commands/tokens.d.ts.map +1 -1
  100. package/dist/commands/tokens.js +6 -1
  101. package/dist/commands/tokens.js.map +1 -1
  102. package/dist/commands/whoami.d.ts.map +1 -1
  103. package/dist/commands/whoami.js +60 -3
  104. package/dist/commands/whoami.js.map +1 -1
  105. package/dist/config/schema.d.ts +132 -132
  106. package/dist/fix/applier.js +1 -1
  107. package/dist/fix/applier.js.map +1 -1
  108. package/dist/hooks/index.d.ts +2 -1
  109. package/dist/hooks/index.d.ts.map +1 -1
  110. package/dist/hooks/index.js +31 -3
  111. package/dist/hooks/index.js.map +1 -1
  112. package/dist/index.d.ts.map +1 -1
  113. package/dist/index.js +19 -43
  114. package/dist/index.js.map +1 -1
  115. package/dist/insights/project-insights.d.ts.map +1 -1
  116. package/dist/insights/project-insights.js +0 -8
  117. package/dist/insights/project-insights.js.map +1 -1
  118. package/dist/output/fix-formatters.d.ts.map +1 -1
  119. package/dist/output/fix-formatters.js +10 -2
  120. package/dist/output/fix-formatters.js.map +1 -1
  121. package/dist/services/context-generator.js +2 -2
  122. package/dist/services/context-generator.js.map +1 -1
  123. package/dist/services/skill-export.d.ts.map +1 -1
  124. package/dist/services/skill-export.js +39 -4
  125. package/dist/services/skill-export.js.map +1 -1
  126. package/dist/wizard/ai-guardrails-generator.js +1 -1
  127. package/package.json +16 -15
  128. package/LICENSE +0 -21
  129. package/dist/commands/explain.d.ts +0 -3
  130. package/dist/commands/explain.js +0 -224
  131. package/dist/commands/explain.js.map +0 -1
  132. package/dist/explain/agents.d.ts +0 -31
  133. package/dist/explain/agents.d.ts.map +0 -1
  134. package/dist/explain/agents.js +0 -507
  135. package/dist/explain/agents.js.map +0 -1
@@ -0,0 +1,258 @@
1
+ /**
2
+ * buoy bot - Manage PR bot integrations
3
+ *
4
+ * buoy bot github - GitHub App integration
5
+ * buoy bot gitlab - GitLab integration (coming soon)
6
+ */
7
+ import { Command } from 'commander';
8
+ import chalk from 'chalk';
9
+ import open from 'open';
10
+ import { isLoggedIn, getApiEndpoint, listGitHubInstallations, revokeGitHubInstallation, getGitHubInstallUrl, requireFeature, } from '../cloud/index.js';
11
+ import { spinner, success, error, info, warning, keyValue, newline, header, } from '../output/reporters.js';
12
+ export function createBotCommand() {
13
+ const cmd = new Command('bot');
14
+ cmd
15
+ .description('Manage PR bot integrations')
16
+ .addCommand(createGitHubCommand())
17
+ .addCommand(createGitLabCommand());
18
+ return cmd;
19
+ }
20
+ // ============================================================================
21
+ // GitHub
22
+ // ============================================================================
23
+ function createGitHubCommand() {
24
+ const cmd = new Command('github');
25
+ cmd
26
+ .description('GitHub App integration')
27
+ .addCommand(createGitHubStatusCommand())
28
+ .addCommand(createGitHubConnectCommand())
29
+ .addCommand(createGitHubDisconnectCommand());
30
+ // Default action shows status
31
+ cmd.action(async () => {
32
+ cmd.commands.find(c => c.name() === 'status')?.parse([], { from: 'user' });
33
+ });
34
+ return cmd;
35
+ }
36
+ function createGitHubStatusCommand() {
37
+ return new Command('status')
38
+ .description('Show GitHub integration status')
39
+ .option('--json', 'Output as JSON')
40
+ .action(async (options) => {
41
+ if (!isLoggedIn()) {
42
+ if (options.json) {
43
+ console.log(JSON.stringify({ error: 'Not logged in' }));
44
+ }
45
+ else {
46
+ error('Not logged in');
47
+ info('Run `buoy login` to sign in');
48
+ }
49
+ process.exit(1);
50
+ }
51
+ const spin = spinner('Checking GitHub integration...').start();
52
+ try {
53
+ const result = await listGitHubInstallations();
54
+ spin.stop();
55
+ if (!result.ok) {
56
+ if (options.json) {
57
+ console.log(JSON.stringify({ error: result.error }));
58
+ }
59
+ else {
60
+ error(result.error || 'Failed to get GitHub status');
61
+ }
62
+ process.exit(1);
63
+ }
64
+ const installations = result.data?.installations || [];
65
+ if (options.json) {
66
+ console.log(JSON.stringify({ installations }, null, 2));
67
+ return;
68
+ }
69
+ header('GitHub Bot Integration');
70
+ newline();
71
+ if (installations.length === 0) {
72
+ info('No GitHub App installed');
73
+ newline();
74
+ info('Run `buoy bot github connect` to install the Buoy GitHub App');
75
+ info('This enables:');
76
+ info(' - PR comments with drift analysis');
77
+ info(' - Check Runs for CI integration');
78
+ info(' - Automatic scanning on push');
79
+ return;
80
+ }
81
+ for (const install of installations) {
82
+ const statusIcon = install.suspended ? chalk.red('suspended') : chalk.green('active');
83
+ console.log(`${chalk.bold(install.accountLogin)} (${install.accountType})`);
84
+ keyValue(' Status', statusIcon);
85
+ keyValue(' Repositories', install.repositorySelection === 'all' ? 'All' : 'Selected');
86
+ keyValue(' Installed', new Date(install.createdAt).toLocaleDateString());
87
+ if (install.suspended && install.suspendedAt) {
88
+ keyValue(' Suspended', new Date(install.suspendedAt).toLocaleDateString());
89
+ }
90
+ newline();
91
+ }
92
+ success(`${installations.length} GitHub installation(s) connected`);
93
+ }
94
+ catch (err) {
95
+ spin.fail('Failed to check GitHub status');
96
+ const message = err instanceof Error ? err.message : String(err);
97
+ error(message);
98
+ process.exit(1);
99
+ }
100
+ });
101
+ }
102
+ function createGitHubConnectCommand() {
103
+ return new Command('connect')
104
+ .description('Install the Buoy GitHub App')
105
+ .action(async () => {
106
+ const allowed = await requireFeature('github-pr-comments');
107
+ if (!allowed) {
108
+ process.exit(1);
109
+ }
110
+ const endpoint = getApiEndpoint();
111
+ const installUrl = getGitHubInstallUrl(endpoint);
112
+ info('Opening browser to install the Buoy GitHub App...');
113
+ newline();
114
+ try {
115
+ await open(installUrl);
116
+ success('Browser opened!');
117
+ newline();
118
+ info('Complete the installation in your browser.');
119
+ info('Choose which repositories Buoy should have access to.');
120
+ newline();
121
+ info('After installation, run `buoy bot github status` to verify.');
122
+ }
123
+ catch (err) {
124
+ error('Failed to open browser');
125
+ newline();
126
+ info('Please visit this URL manually:');
127
+ console.log(chalk.cyan(installUrl));
128
+ }
129
+ });
130
+ }
131
+ function createGitHubDisconnectCommand() {
132
+ return new Command('disconnect')
133
+ .description('Remove a GitHub installation')
134
+ .argument('[account]', 'GitHub account to disconnect (optional)')
135
+ .option('--all', 'Disconnect all installations')
136
+ .option('--json', 'Output as JSON')
137
+ .action(async (account, options) => {
138
+ if (!isLoggedIn()) {
139
+ if (options.json) {
140
+ console.log(JSON.stringify({ error: 'Not logged in' }));
141
+ }
142
+ else {
143
+ error('Not logged in');
144
+ info('Run `buoy login` to sign in');
145
+ }
146
+ process.exit(1);
147
+ }
148
+ const spin = spinner('Getting GitHub installations...').start();
149
+ try {
150
+ const result = await listGitHubInstallations();
151
+ if (!result.ok) {
152
+ spin.fail('Failed to get installations');
153
+ if (options.json) {
154
+ console.log(JSON.stringify({ error: result.error }));
155
+ }
156
+ else {
157
+ error(result.error || 'Failed to get installations');
158
+ }
159
+ process.exit(1);
160
+ }
161
+ const installations = result.data?.installations || [];
162
+ if (installations.length === 0) {
163
+ spin.stop();
164
+ if (options.json) {
165
+ console.log(JSON.stringify({ message: 'No installations to disconnect' }));
166
+ }
167
+ else {
168
+ info('No GitHub installations to disconnect');
169
+ }
170
+ return;
171
+ }
172
+ let toDisconnect = installations;
173
+ if (!options.all && account) {
174
+ toDisconnect = installations.filter((i) => i.accountLogin.toLowerCase() === account.toLowerCase());
175
+ if (toDisconnect.length === 0) {
176
+ spin.stop();
177
+ if (options.json) {
178
+ console.log(JSON.stringify({ error: `No installation found for ${account}` }));
179
+ }
180
+ else {
181
+ error(`No installation found for "${account}"`);
182
+ info('Available installations:');
183
+ for (const i of installations) {
184
+ info(` - ${i.accountLogin}`);
185
+ }
186
+ }
187
+ process.exit(1);
188
+ }
189
+ }
190
+ else if (!options.all && installations.length > 1) {
191
+ spin.stop();
192
+ error('Multiple installations found');
193
+ info('Specify an account name or use --all:');
194
+ for (const i of installations) {
195
+ info(` buoy bot github disconnect ${i.accountLogin}`);
196
+ }
197
+ info(' buoy bot github disconnect --all');
198
+ process.exit(1);
199
+ }
200
+ spin.text = 'Disconnecting...';
201
+ const disconnected = [];
202
+ const failed = [];
203
+ for (const install of toDisconnect) {
204
+ const deleteResult = await revokeGitHubInstallation(install.id);
205
+ if (deleteResult.ok) {
206
+ disconnected.push(install.accountLogin);
207
+ }
208
+ else {
209
+ failed.push(install.accountLogin);
210
+ }
211
+ }
212
+ spin.stop();
213
+ if (options.json) {
214
+ console.log(JSON.stringify({ disconnected, failed }));
215
+ return;
216
+ }
217
+ if (disconnected.length > 0) {
218
+ success(`Disconnected: ${disconnected.join(', ')}`);
219
+ }
220
+ if (failed.length > 0) {
221
+ warning(`Failed to disconnect: ${failed.join(', ')}`);
222
+ }
223
+ newline();
224
+ info('Note: This only removes the connection from Buoy.');
225
+ info('To fully uninstall, visit GitHub Settings > Applications.');
226
+ }
227
+ catch (err) {
228
+ spin.fail('Failed to disconnect');
229
+ const message = err instanceof Error ? err.message : String(err);
230
+ error(message);
231
+ process.exit(1);
232
+ }
233
+ });
234
+ }
235
+ // ============================================================================
236
+ // GitLab
237
+ // ============================================================================
238
+ function createGitLabCommand() {
239
+ const cmd = new Command('gitlab');
240
+ cmd
241
+ .description('GitLab integration (coming soon)')
242
+ .action(() => {
243
+ header('GitLab Integration');
244
+ newline();
245
+ info('GitLab integration is coming soon!');
246
+ newline();
247
+ info('In the meantime, you can use the CLI directly in GitLab CI:');
248
+ newline();
249
+ console.log(chalk.dim(' # .gitlab-ci.yml'));
250
+ console.log(chalk.cyan(' buoy_check:'));
251
+ console.log(chalk.cyan(' script:'));
252
+ console.log(chalk.cyan(' - npx @buoy-design/cli check --json'));
253
+ newline();
254
+ info('Follow updates at: https://buoy.design/roadmap');
255
+ });
256
+ return cmd;
257
+ }
258
+ //# sourceMappingURL=bot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/commands/bot.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,mBAAmB,CAAC;AAQ/D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3D;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1E,MAAM,CAkDR;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAgBzC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA4B9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAgBnF;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAuJ5C"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,mBAAmB,CAAC;AAQ/D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAoB3D;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1E,MAAM,CAyDR;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAgBzC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA4B9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAgBnF;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAuJ5C"}
@@ -3,6 +3,18 @@ import { Command } from "commander";
3
3
  import { loadConfig, getConfigPath } from "../config/loader.js";
4
4
  import { execSync } from "node:child_process";
5
5
  import { DriftAnalysisService, hasDriftsAboveThreshold, calculateDriftSummary, } from "../services/drift-analysis.js";
6
+ /**
7
+ * Generate a copy-paste ready diff snippet for a drift fix
8
+ */
9
+ function generateFixSnippet(file, line, oldValue, newValue) {
10
+ const location = line ? `${file}:${line}` : file;
11
+ const lines = [`// ${location}`];
12
+ if (oldValue) {
13
+ lines.push(`- ${oldValue}`);
14
+ }
15
+ lines.push(`+ ${newValue}`);
16
+ return lines.join("\n");
17
+ }
6
18
  /**
7
19
  * Format drift signals as AI-friendly JSON feedback
8
20
  */
@@ -13,11 +25,13 @@ export function formatAiFeedback(drifts, exitCode, summary) {
13
25
  // Extract fix suggestion from details if available
14
26
  const suggestions = drift.details?.suggestions;
15
27
  const firstSuggestion = suggestions?.[0];
28
+ const oldValue = drift.details?.actual;
16
29
  const fix = firstSuggestion
17
30
  ? {
18
31
  type: "replace",
19
- old: drift.details?.actual,
32
+ old: oldValue,
20
33
  new: firstSuggestion,
34
+ snippet: generateFixSnippet(file || drift.source.entityName, lineStr ? parseInt(lineStr, 10) : undefined, oldValue, firstSuggestion),
21
35
  }
22
36
  : undefined;
23
37
  return {
@@ -224,7 +238,7 @@ export function createCheckCommand() {
224
238
  }
225
239
  }
226
240
  console.log("");
227
- console.log("Run `buoy drift check` for details");
241
+ console.log("Run `buoy drift` for details");
228
242
  }
229
243
  }
230
244
  process.exit(exitCode);
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * buoy cloud - Manage Buoy Cloud connection
3
+ *
4
+ * buoy cloud login - Authenticate with Buoy Cloud
5
+ * buoy cloud logout - Sign out
6
+ * buoy cloud whoami - Show current user
7
+ * buoy cloud link - Connect project to cloud
8
+ * buoy cloud unlink - Disconnect project
9
+ * buoy cloud sync - Sync queued scans
10
+ * buoy cloud billing - Manage subscription
11
+ * buoy cloud plans - Compare pricing
12
+ */
13
+ import { Command } from 'commander';
14
+ export declare function createCloudCommand(): Command;
15
+ //# sourceMappingURL=cloud.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../src/commands/cloud.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,wBAAgB,kBAAkB,IAAI,OAAO,CAe5C"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * buoy cloud - Manage Buoy Cloud connection
3
+ *
4
+ * buoy cloud login - Authenticate with Buoy Cloud
5
+ * buoy cloud logout - Sign out
6
+ * buoy cloud whoami - Show current user
7
+ * buoy cloud link - Connect project to cloud
8
+ * buoy cloud unlink - Disconnect project
9
+ * buoy cloud sync - Sync queued scans
10
+ * buoy cloud billing - Manage subscription
11
+ * buoy cloud plans - Compare pricing
12
+ */
13
+ import { Command } from 'commander';
14
+ import { createLoginCommand } from './login.js';
15
+ import { createLogoutCommand } from './logout.js';
16
+ import { createWhoamiCommand } from './whoami.js';
17
+ import { createLinkCommand } from './link.js';
18
+ import { createUnlinkCommand } from './unlink.js';
19
+ import { createSyncCommand } from './sync.js';
20
+ import { createBillingCommand } from './billing.js';
21
+ import { createPlansCommand } from './plans.js';
22
+ export function createCloudCommand() {
23
+ const cmd = new Command('cloud');
24
+ cmd
25
+ .description('Manage Buoy Cloud connection')
26
+ .addCommand(createLoginCommand())
27
+ .addCommand(createLogoutCommand())
28
+ .addCommand(createWhoamiCommand())
29
+ .addCommand(createLinkCommand())
30
+ .addCommand(createUnlinkCommand())
31
+ .addCommand(createSyncCommand())
32
+ .addCommand(createBillingCommand())
33
+ .addCommand(createPlansCommand());
34
+ return cmd;
35
+ }
36
+ //# sourceMappingURL=cloud.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloud.js","sourceRoot":"","sources":["../../src/commands/cloud.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEjC,GAAG;SACA,WAAW,CAAC,8BAA8B,CAAC;SAC3C,UAAU,CAAC,kBAAkB,EAAE,CAAC;SAChC,UAAU,CAAC,mBAAmB,EAAE,CAAC;SACjC,UAAU,CAAC,mBAAmB,EAAE,CAAC;SACjC,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,mBAAmB,EAAE,CAAC;SACjC,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,oBAAoB,EAAE,CAAC;SAClC,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEpC,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * buoy commands - Manage Claude Code slash commands
3
+ *
4
+ * Install Buoy's slash commands to ~/.claude/commands/
5
+ */
6
+ import { Command } from 'commander';
7
+ export declare function createCommandsCommand(): Command;
8
+ //# sourceMappingURL=commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/commands/commands.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmEpC,wBAAgB,qBAAqB,IAAI,OAAO,CAqG/C"}
@@ -0,0 +1,148 @@
1
+ /**
2
+ * buoy commands - Manage Claude Code slash commands
3
+ *
4
+ * Install Buoy's slash commands to ~/.claude/commands/
5
+ */
6
+ import { Command } from 'commander';
7
+ import chalk from 'chalk';
8
+ import { existsSync, mkdirSync, copyFileSync, readdirSync } from 'fs';
9
+ import { dirname, join, resolve } from 'path';
10
+ import { homedir } from 'os';
11
+ import { fileURLToPath } from 'url';
12
+ import { setJsonMode } from '../output/reporters.js';
13
+ const __filename = fileURLToPath(import.meta.url);
14
+ const __dirname = dirname(__filename);
15
+ /**
16
+ * Install Buoy's Claude commands to ~/.claude/commands/
17
+ */
18
+ function installClaudeCommands(dryRun = false) {
19
+ const commandsDir = join(homedir(), '.claude', 'commands');
20
+ const assetsDir = resolve(__dirname, '..', '..', 'assets', 'commands');
21
+ const installed = [];
22
+ const alreadyExisted = [];
23
+ const skipped = [];
24
+ // Check if assets directory exists
25
+ if (!existsSync(assetsDir)) {
26
+ return { installed, alreadyExisted, skipped };
27
+ }
28
+ // Create commands directory if needed
29
+ if (!dryRun && !existsSync(commandsDir)) {
30
+ mkdirSync(commandsDir, { recursive: true });
31
+ }
32
+ // Copy each command file
33
+ const commandFiles = readdirSync(assetsDir).filter(f => f.endsWith('.md'));
34
+ for (const file of commandFiles) {
35
+ const srcPath = join(assetsDir, file);
36
+ const destPath = join(commandsDir, file);
37
+ if (existsSync(destPath)) {
38
+ alreadyExisted.push(file.replace('.md', ''));
39
+ }
40
+ else {
41
+ if (!dryRun) {
42
+ copyFileSync(srcPath, destPath);
43
+ }
44
+ installed.push(file.replace('.md', ''));
45
+ }
46
+ }
47
+ return { installed, alreadyExisted, skipped };
48
+ }
49
+ /**
50
+ * List available commands
51
+ */
52
+ function listAvailableCommands() {
53
+ const assetsDir = resolve(__dirname, '..', '..', 'assets', 'commands');
54
+ if (!existsSync(assetsDir)) {
55
+ return [];
56
+ }
57
+ return readdirSync(assetsDir)
58
+ .filter(f => f.endsWith('.md'))
59
+ .map(f => f.replace('.md', ''));
60
+ }
61
+ export function createCommandsCommand() {
62
+ const cmd = new Command('commands')
63
+ .description('Manage Claude Code slash commands');
64
+ // List available commands
65
+ cmd.command('list')
66
+ .description('List available Buoy slash commands')
67
+ .option('--json', 'Output as JSON')
68
+ .action((options) => {
69
+ if (options.json) {
70
+ setJsonMode(true);
71
+ }
72
+ const available = listAvailableCommands();
73
+ const commandsDir = join(homedir(), '.claude', 'commands');
74
+ if (options.json) {
75
+ const result = available.map(cmd => ({
76
+ name: cmd,
77
+ installed: existsSync(join(commandsDir, `${cmd}.md`)),
78
+ }));
79
+ console.log(JSON.stringify(result, null, 2));
80
+ return;
81
+ }
82
+ console.log('');
83
+ console.log(chalk.cyan.bold(' Available Buoy Commands'));
84
+ console.log('');
85
+ if (available.length === 0) {
86
+ console.log(chalk.dim(' No commands available'));
87
+ return;
88
+ }
89
+ for (const cmd of available) {
90
+ const isInstalled = existsSync(join(commandsDir, `${cmd}.md`));
91
+ const status = isInstalled
92
+ ? chalk.green('✓ installed')
93
+ : chalk.dim('not installed');
94
+ console.log(` /${cmd} ${status}`);
95
+ }
96
+ console.log('');
97
+ console.log(chalk.dim(' Run `buoy commands install` to install all commands'));
98
+ console.log('');
99
+ });
100
+ // Install commands
101
+ cmd.command('install')
102
+ .description('Install Buoy slash commands to ~/.claude/commands/')
103
+ .option('--dry-run', 'Show what would be installed')
104
+ .option('--json', 'Output as JSON')
105
+ .action((options) => {
106
+ if (options.json) {
107
+ setJsonMode(true);
108
+ }
109
+ const result = installClaudeCommands(options.dryRun);
110
+ if (options.json) {
111
+ console.log(JSON.stringify(result, null, 2));
112
+ return;
113
+ }
114
+ console.log('');
115
+ if (options.dryRun) {
116
+ console.log(chalk.cyan.bold(' Dry Run - Would install:'));
117
+ console.log('');
118
+ for (const cmd of result.installed) {
119
+ console.log(` ${chalk.green('+')} /${cmd}`);
120
+ }
121
+ for (const cmd of result.alreadyExisted) {
122
+ console.log(` ${chalk.dim('○')} /${cmd} (already exists)`);
123
+ }
124
+ }
125
+ else {
126
+ if (result.installed.length > 0) {
127
+ console.log(chalk.green.bold(' ✓ Installed slash commands:'));
128
+ console.log('');
129
+ for (const cmd of result.installed) {
130
+ console.log(` /${cmd}`);
131
+ }
132
+ }
133
+ if (result.alreadyExisted.length > 0) {
134
+ console.log('');
135
+ console.log(chalk.dim(` Already installed: ${result.alreadyExisted.map(c => `/${c}`).join(', ')}`));
136
+ }
137
+ if (result.installed.length === 0 && result.alreadyExisted.length > 0) {
138
+ console.log(chalk.dim(' All commands already installed'));
139
+ }
140
+ }
141
+ console.log('');
142
+ console.log(chalk.dim(` Commands installed to: ~/.claude/commands/`));
143
+ console.log(chalk.dim(' Restart Claude Code to use them'));
144
+ console.log('');
145
+ });
146
+ return cmd;
147
+ }
148
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/commands/commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * buoy components query - Find and explore components in the codebase
3
+ *
4
+ * Helps AI agents quickly find relevant components when building features.
5
+ *
6
+ * Examples:
7
+ * buoy components query "button" # Find button components
8
+ * buoy components query --prop "onClick" # Find components with onClick
9
+ * buoy components query --pattern "form" # Find form-related components
10
+ */
11
+ import { Command } from 'commander';
12
+ export declare function createComponentsQueryCommand(): Command;
13
+ //# sourceMappingURL=components-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-query.d.ts","sourceRoot":"","sources":["../../src/commands/components-query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsKpC,wBAAgB,4BAA4B,IAAI,OAAO,CA+ItD"}