codebuff 1.0.291 → 1.0.294

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 (122) hide show
  1. package/dist/background-process-manager.js +3 -3
  2. package/dist/browser-runner.js +4 -4
  3. package/dist/chat-storage.js +1 -1
  4. package/dist/checkpoints/checkpoint-manager.js +1 -1
  5. package/dist/cli-handlers/api-key.js +1 -1
  6. package/dist/cli-handlers/inititalization-flow.js +1 -1
  7. package/dist/cli.js +2 -2
  8. package/dist/client.d.ts +7 -7
  9. package/dist/client.js +9 -9
  10. package/dist/common/actions.d.ts +32 -32
  11. package/dist/common/constants/tools.d.ts +1 -1
  12. package/dist/common/constants/tools.js +1 -1
  13. package/dist/common/constants/tools.js.map +1 -1
  14. package/dist/common/constants.d.ts +8 -6
  15. package/dist/common/constants.js +2 -1
  16. package/dist/common/constants.js.map +1 -1
  17. package/dist/common/util/saxy.d.ts +1 -1
  18. package/dist/common/util/saxy.js +2 -2
  19. package/dist/common/util/saxy.js.map +1 -1
  20. package/dist/common/util/string.d.ts +1 -0
  21. package/dist/common/util/string.js +9 -0
  22. package/dist/common/util/string.js.map +1 -1
  23. package/dist/common/websockets/websocket-schema.d.ts +68 -68
  24. package/dist/credentials.js +2 -2
  25. package/dist/dev-process-manager.js +1 -1
  26. package/dist/index.js +2 -20
  27. package/dist/project-files.d.ts +3 -2
  28. package/dist/project-files.js +18 -5
  29. package/dist/project-files.js.map +1 -1
  30. package/dist/tool-handlers.d.ts +2 -2
  31. package/dist/tool-handlers.js +4 -4
  32. package/dist/update-codebuff.js +1 -1
  33. package/dist/utils/__tests__/tool-renderers.test.js +2 -2
  34. package/dist/utils/__tests__/xml-stream-parser.test.js +1 -1
  35. package/dist/utils/logger.js +1 -1
  36. package/dist/utils/terminal.js +4 -6
  37. package/dist/utils/terminal.js.map +1 -1
  38. package/dist/utils/tool-renderers.js +6 -2
  39. package/dist/utils/tool-renderers.js.map +1 -1
  40. package/dist/utils/xml-stream-parser.d.ts +1 -1
  41. package/dist/utils/xml-stream-parser.js +2 -2
  42. package/dist/web-scraper.js +1 -1
  43. package/dist/workers/project-context.js +1 -1
  44. package/package.json +1 -1
  45. package/dist/background-process-manager.d.ts +0 -50
  46. package/dist/browser-runner.d.ts +0 -35
  47. package/dist/chat-storage.d.ts +0 -2
  48. package/dist/checkpoints/checkpoint-manager.d.ts +0 -94
  49. package/dist/checkpoints/file-manager.d.ts +0 -72
  50. package/dist/checkpoints/file-manager.js +0 -294
  51. package/dist/checkpoints/file-manager.js.map +0 -1
  52. package/dist/cli-definitions.d.ts +0 -9
  53. package/dist/cli-definitions.js +0 -54
  54. package/dist/cli-definitions.js.map +0 -1
  55. package/dist/cli-handlers/api-key.d.ts +0 -25
  56. package/dist/cli-handlers/checkpoint.d.ts +0 -18
  57. package/dist/cli-handlers/diff.d.ts +0 -2
  58. package/dist/cli-handlers/diff.js +0 -31
  59. package/dist/cli-handlers/diff.js.map +0 -1
  60. package/dist/cli-handlers/easter-egg.d.ts +0 -1
  61. package/dist/cli-handlers/easter-egg.js +0 -126
  62. package/dist/cli-handlers/easter-egg.js.map +0 -1
  63. package/dist/cli-handlers/inititalization-flow.d.ts +0 -1
  64. package/dist/cli.d.ts +0 -65
  65. package/dist/common/types/organization.d.ts +0 -102
  66. package/dist/common/types/organization.js +0 -3
  67. package/dist/common/types/organization.js.map +0 -1
  68. package/dist/config.d.ts +0 -4
  69. package/dist/config.js +0 -12
  70. package/dist/config.js.map +0 -1
  71. package/dist/create-template-project.d.ts +0 -1
  72. package/dist/create-template-project.js +0 -107
  73. package/dist/create-template-project.js.map +0 -1
  74. package/dist/credentials.d.ts +0 -4
  75. package/dist/dev-process-manager.d.ts +0 -10
  76. package/dist/display.d.ts +0 -11
  77. package/dist/display.js +0 -85
  78. package/dist/display.js.map +0 -1
  79. package/dist/fingerprint.d.ts +0 -1
  80. package/dist/fingerprint.js +0 -48
  81. package/dist/fingerprint.js.map +0 -1
  82. package/dist/index.d.ts +0 -2
  83. package/dist/menu.d.ts +0 -14
  84. package/dist/menu.js +0 -295
  85. package/dist/menu.js.map +0 -1
  86. package/dist/organization-context.d.ts +0 -33
  87. package/dist/organization-context.js +0 -112
  88. package/dist/organization-context.js.map +0 -1
  89. package/dist/slash-commands.d.ts +0 -7
  90. package/dist/slash-commands.js +0 -21
  91. package/dist/slash-commands.js.map +0 -1
  92. package/dist/startup-process-handler.d.ts +0 -2
  93. package/dist/types.d.ts +0 -15
  94. package/dist/types.js +0 -3
  95. package/dist/types.js.map +0 -1
  96. package/dist/update-codebuff.d.ts +0 -1
  97. package/dist/utils/__tests__/background-process-manager.test.d.ts +0 -1
  98. package/dist/utils/__tests__/background-process-manager.test.js +0 -327
  99. package/dist/utils/__tests__/background-process-manager.test.js.map +0 -1
  100. package/dist/utils/__tests__/tool-renderers.test.d.ts +0 -1
  101. package/dist/utils/__tests__/xml-stream-parser.test.d.ts +0 -1
  102. package/dist/utils/analytics.d.ts +0 -6
  103. package/dist/utils/detect-shell.d.ts +0 -1
  104. package/dist/utils/detect-shell.js +0 -60
  105. package/dist/utils/detect-shell.js.map +0 -1
  106. package/dist/utils/git.d.ts +0 -2
  107. package/dist/utils/git.js +0 -40
  108. package/dist/utils/git.js.map +0 -1
  109. package/dist/utils/logger.d.ts +0 -21
  110. package/dist/utils/spinner.d.ts +0 -12
  111. package/dist/utils/spinner.js +0 -94
  112. package/dist/utils/spinner.js.map +0 -1
  113. package/dist/utils/system-info.d.ts +0 -8
  114. package/dist/utils/system-info.js +0 -22
  115. package/dist/utils/system-info.js.map +0 -1
  116. package/dist/utils/terminal.d.ts +0 -43
  117. package/dist/utils/tool-renderers.d.ts +0 -16
  118. package/dist/web-scraper.d.ts +0 -3
  119. package/dist/workers/checkpoint-worker.d.ts +0 -1
  120. package/dist/workers/checkpoint-worker.js +0 -48
  121. package/dist/workers/checkpoint-worker.js.map +0 -1
  122. package/dist/workers/project-context.d.ts +0 -1
package/dist/menu.js DELETED
@@ -1,295 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.interactiveCommandDetails = void 0;
30
- exports.getSlashCommands = getSlashCommands;
31
- exports.displaySlashCommandHelperMenu = displaySlashCommandHelperMenu;
32
- exports.displayGreeting = displayGreeting;
33
- exports.displayMenu = displayMenu;
34
- const fs = __importStar(require("fs"));
35
- const os_1 = __importDefault(require("os"));
36
- const path_1 = __importDefault(require("path"));
37
- const picocolors_1 = require("picocolors");
38
- const project_files_1 = require("./project-files");
39
- exports.interactiveCommandDetails = [
40
- {
41
- baseCommand: 'help',
42
- description: 'Display help information',
43
- isSlashCommand: true,
44
- commandText: '', // Empty commandText ensures it's not shown in the main interactive list
45
- aliases: ['h'], // Optional: if you want /h to also work for tab completion
46
- },
47
- {
48
- commandText: '"login"',
49
- baseCommand: 'login',
50
- description: 'Authenticate your session',
51
- isSlashCommand: false,
52
- },
53
- {
54
- commandText: '"init"',
55
- baseCommand: 'init',
56
- description: 'Configure project for better results',
57
- isSlashCommand: true,
58
- },
59
- {
60
- commandText: '"diff" or "d"',
61
- baseCommand: 'diff',
62
- aliases: ['d'],
63
- description: 'Show last assistant change diff',
64
- isSlashCommand: true,
65
- },
66
- {
67
- commandText: '"undo" / "redo"',
68
- description: 'Revert or re-apply last change',
69
- // This entry will be expanded into two slash commands: /undo and /redo
70
- },
71
- {
72
- commandText: '"checkpoint <id>"',
73
- baseCommand: 'checkpoint',
74
- params: '<id>',
75
- description: 'Restore to a specific checkpoint',
76
- isSlashCommand: true,
77
- },
78
- {
79
- commandText: '"!<cmd>"',
80
- baseCommand: '!', // Or handle this specially, e.g. baseCommand 'shell'
81
- params: '<cmd>',
82
- description: 'Run shell command directly',
83
- isSlashCommand: false, // e.g. /! <cmd> or /shell <cmd>
84
- },
85
- {
86
- commandText: '"usage" or "credits"',
87
- description: 'View remaining / bonus AI credits',
88
- // This entry will be expanded into two slash commands: /usage and /credits
89
- },
90
- {
91
- commandText: 'ESC key or Ctrl-C',
92
- description: 'Cancel generation',
93
- isSlashCommand: false,
94
- },
95
- {
96
- baseCommand: 'undo',
97
- description: 'Undo last change',
98
- isSlashCommand: true,
99
- commandText: '',
100
- }, // commandText empty as it's covered by "undo / redo" for main menu
101
- {
102
- baseCommand: 'redo',
103
- description: 'Redo last undone change',
104
- isSlashCommand: true,
105
- commandText: '',
106
- },
107
- {
108
- baseCommand: 'usage',
109
- description: 'View AI credits usage',
110
- isSlashCommand: true,
111
- commandText: '',
112
- },
113
- {
114
- baseCommand: 'credits',
115
- description: 'View AI credits balance',
116
- isSlashCommand: false,
117
- commandText: '',
118
- },
119
- {
120
- commandText: '"exit" or Ctrl-C x2',
121
- baseCommand: 'exit',
122
- description: 'Quit Codebuff',
123
- isSlashCommand: true,
124
- },
125
- ];
126
- function getSlashCommands() {
127
- return exports.interactiveCommandDetails
128
- .filter((cmd) => cmd.isSlashCommand && cmd.baseCommand)
129
- .sort((a, b) => a.baseCommand.localeCompare(b.baseCommand));
130
- }
131
- function displaySlashCommandHelperMenu() {
132
- const commands = getSlashCommands();
133
- if (commands.length === 0) {
134
- return;
135
- }
136
- // Calculate the maximum length of command strings for alignment
137
- const maxCommandLength = Math.max(...commands.map((cmd) => {
138
- const commandString = `/${cmd.baseCommand}${cmd.params ? ` ${cmd.params}` : ''}`;
139
- return commandString.length;
140
- }));
141
- // Format each command with its description
142
- const commandLines = commands.map((cmd) => {
143
- const commandString = `/${cmd.baseCommand}${cmd.params ? ` ${cmd.params}` : ''}`;
144
- // Pad with dots to align descriptions
145
- const padding = '.'.repeat(maxCommandLength - commandString.length + 3);
146
- return `${(0, picocolors_1.cyan)(commandString)} ${padding} ${cmd.description}`;
147
- });
148
- // Add the shell command tip at the end
149
- const shellTip = (0, picocolors_1.gray)('(Tip: Type "!" followed by a command to run it in your shell, e.g., !ls)');
150
- // Print with consistent spacing
151
- console.log(`\n\n${commandLines.join('\n')}\n${shellTip}\n`);
152
- }
153
- function displayGreeting(costMode, username) {
154
- // Show extra info only for logged in users
155
- const costModeDescription = {
156
- lite: (0, picocolors_1.bold)((0, picocolors_1.yellow)('Lite mode ✨ enabled')),
157
- normal: '',
158
- max: (0, picocolors_1.bold)((0, picocolors_1.blueBright)('Max mode️ ⚡ enabled')),
159
- experimental: (0, picocolors_1.bold)((0, picocolors_1.magenta)('Experimental mode 🧪 enabled')),
160
- };
161
- if (costModeDescription[costMode]) {
162
- console.log(`${costModeDescription[costMode]}`);
163
- }
164
- if (!path_1.default.relative((0, project_files_1.getProjectRoot)(), os_1.default.homedir()).startsWith('..')) {
165
- console.info(`Welcome! Codebuff is your AI pair programmer that edits your codebase through natural conversation.
166
-
167
- You are currently in "${(0, picocolors_1.green)((0, project_files_1.getProjectRoot)())}".
168
-
169
- To get started:
170
- 1. Navigate to your project (cd your/project/root)
171
- 2. Run "codebuff" there instead
172
- `.trim());
173
- process.exit(0);
174
- }
175
- console.log(`Codebuff will read and write files in "${(0, project_files_1.getProjectRoot)()}". Type "help" for a list of commands.`);
176
- const gitDir = path_1.default.join((0, project_files_1.getProjectRoot)(), '.git');
177
- if (!fs.existsSync(gitDir)) {
178
- console.info((0, picocolors_1.magenta)("Just fyi, this project doesn't contain a .git directory (are you at the top level of your project?). Codebuff works best with a git repo!"));
179
- }
180
- console.log(`\nWelcome${username ? ` back ${username}` : ''}! What would you like to do?`);
181
- }
182
- const getRandomColors = () => {
183
- const allColors = [picocolors_1.red, picocolors_1.green, picocolors_1.yellow, picocolors_1.blue, picocolors_1.blueBright, picocolors_1.magenta, picocolors_1.cyan];
184
- const colors = [];
185
- while (colors.length < 3) {
186
- const color = allColors[Math.floor(Math.random() * allColors.length)];
187
- if (!colors.includes(color)) {
188
- colors.push(color);
189
- }
190
- }
191
- return colors;
192
- };
193
- function displayMenu() {
194
- const terminalWidth = process.stdout.columns || 80;
195
- const dividerLine = '─'.repeat(terminalWidth);
196
- const selectedColors = getRandomColors();
197
- const colorizeRandom = (text) => {
198
- return text
199
- .split('')
200
- .map((char) => {
201
- const colorFn = selectedColors[Math.floor(Math.random() * selectedColors.length)];
202
- return colorFn(char);
203
- })
204
- .join('');
205
- };
206
- console.log(`
207
- ${colorizeRandom(' ')}
208
- ${colorizeRandom('██████╗')}${colorizeRandom(' ██████╗ ')}${colorizeRandom('██████╗ ')}${colorizeRandom('███████╗')}${colorizeRandom('██████╗ ')}${colorizeRandom('██╗ ██╗')}${colorizeRandom('███████╗')}${colorizeRandom('███████╗')}
209
- ${colorizeRandom('██╔════╝')}${colorizeRandom('██╔═══██╗')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██╔════╝')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔════╝')}${colorizeRandom('██╔════╝')}
210
- ${colorizeRandom('██║ ')}${colorizeRandom('██║ ██║')}${colorizeRandom('██║ ██║')}${colorizeRandom('█████╗ ')}${colorizeRandom('██████╔╝')}${colorizeRandom('██║ ██║')}${colorizeRandom('█████╗ ')}${colorizeRandom('█████╗ ')}
211
- ${colorizeRandom('██║ ')}${colorizeRandom('██║ ██║')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔══╝ ')}${colorizeRandom('██╔══██╗')}${colorizeRandom('██║ ██║')}${colorizeRandom('██╔══╝ ')}${colorizeRandom('██╔══╝ ')}
212
- ${colorizeRandom('╚██████╗')}${colorizeRandom('╚██████╔╝')}${colorizeRandom('██████╔╝')}${colorizeRandom('███████╗')}${colorizeRandom('██████╔╝')}${colorizeRandom('╚██████╔╝')}${colorizeRandom('██║ ')}${colorizeRandom('██║ ')}
213
- ${colorizeRandom(' ╚═════╝')}${colorizeRandom(' ╚═════╝ ')}${colorizeRandom('╚═════╝ ')}${colorizeRandom('╚══════╝')}${colorizeRandom('╚═════╝ ')}${colorizeRandom(' ╚═════╝ ')}${colorizeRandom('╚═╝ ')}${colorizeRandom('╚═╝ ')}
214
- `);
215
- console.log(`\n${(0, picocolors_1.bold)('Your AI pair programmer that understands, edits, and improves your codebase through natural conversation.')}`);
216
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('PROJECT SETUP'))}`);
217
- console.log((() => {
218
- const currentDirectoryLine = `${(0, picocolors_1.green)('✅ Current directory:')} ${(0, picocolors_1.bold)((0, picocolors_1.blueBright)((0, project_files_1.getProjectRoot)()))}`;
219
- const hasGitRepo = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), '.git'));
220
- const hasGitIgnore = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), '.gitignore'));
221
- const hasKnowledgeMd = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), 'knowledge.md'));
222
- const hasCodebuffJson = fs.existsSync(path_1.default.join((0, project_files_1.getProjectRoot)(), 'codebuff.json'));
223
- const gitignoreNote = ' (Codebuff never reads files in your .gitignore/.codebuffignore)';
224
- // Condition 1: Git repo found, all files present
225
- if (hasGitRepo && hasGitIgnore && hasKnowledgeMd && hasCodebuffJson) {
226
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
227
- ${(0, picocolors_1.green)('✅ .gitignore: detected')}${gitignoreNote}
228
- ${(0, picocolors_1.green)('✅ knowledge.md: detected')}
229
- ${(0, picocolors_1.green)('✅ codebuff.json: detected')}`;
230
- }
231
- // Condition 2: Git repo not found
232
- if (!hasGitRepo) {
233
- return `${currentDirectoryLine}\n${(0, picocolors_1.yellow)('❌ Git repo: not found')}${' - navigate to a working directory!'}
234
- ${hasGitIgnore ? (0, picocolors_1.green)('✅ .gitignore: detected') : (0, picocolors_1.yellow)('❌ .gitignore: missing')}${gitignoreNote}
235
- ${hasKnowledgeMd ? (0, picocolors_1.green)('✅ knowledge.md: detected') : (0, picocolors_1.yellow)('❌ knowledge.md: missing')}${' — run "init" to fix'}
236
- ${hasCodebuffJson ? (0, picocolors_1.green)('✅ codebuff.json: detected') : (0, picocolors_1.yellow)('❌ codebuff.json: missing')}${' — run "init" to fix'}`;
237
- }
238
- // Condition 3: Missing .gitignore
239
- if (!hasGitIgnore) {
240
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
241
- ${(0, picocolors_1.yellow)('❌ .gitignore: missing - type "generate a reasonable .gitignore"')}${gitignoreNote}
242
- ${hasKnowledgeMd ? (0, picocolors_1.green)('✅ knowledge.md: detected') : (0, picocolors_1.yellow)('❌ knowledge.md: missing')}
243
- ${hasCodebuffJson ? (0, picocolors_1.green)('✅ codebuff.json: detected') : (0, picocolors_1.yellow)('❌ codebuff.json: missing')}`;
244
- }
245
- // Condition 4: Missing knowledge files
246
- return `${currentDirectoryLine}\n${(0, picocolors_1.green)('✅ Git repo: detected')}
247
- ${(0, picocolors_1.green)('✅ .gitignore: detected')}${gitignoreNote}
248
- ${!hasKnowledgeMd && !hasCodebuffJson
249
- ? (0, picocolors_1.yellow)('❌ knowledge.md & codebuff.json: missing - type "init"')
250
- : !hasKnowledgeMd
251
- ? (0, picocolors_1.yellow)('❌ knowledge.md: missing - type "init"')
252
- : !hasCodebuffJson
253
- ? (0, picocolors_1.yellow)('❌ codebuff.json: missing - type "init"')
254
- : (0, picocolors_1.green)('✅ knowledge.md & codebuff.json: detected')}
255
- ${hasKnowledgeMd && !hasCodebuffJson ? `\n${(0, picocolors_1.yellow)('codebuff.json runs deployment scripts for you to test your code and runs configured checks for you by running your dev server.')}` : ''}
256
- ${!hasKnowledgeMd && hasCodebuffJson ? `\n${(0, picocolors_1.yellow)('knowledge.md helps Codebuff understand your project structure and codebase better for better results.')}` : ''}
257
- ${!hasKnowledgeMd && !hasCodebuffJson ? `\n${(0, picocolors_1.yellow)('knowledge.md helps Codebuff understand your project structure and codebase better for better results.')}\n${(0, picocolors_1.yellow)('codebuff.json runs deployment scripts for you to test your code and runs configured checks for you by running your dev server.')}` : ''}`;
258
- })());
259
- // COMMUNITY & FEEDBACK SECTION
260
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('COMMUNITY & FEEDBACK'))}`);
261
- console.log(`Thanks for using Codebuff! DM @brandonkachen or @jahooma on Discord, or email ${(0, picocolors_1.blueBright)('founders@codebuff.com')}`);
262
- console.log(`Join our Discord: ${(0, picocolors_1.blueBright)('https://codebuff.com/discord')} ${(0, picocolors_1.gray)(`(${os_1.default.platform() === 'darwin' ? 'Command' : 'Ctrl'} + Click to open)`)}`);
263
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('EXAMPLE PROMPTS'))}
264
- ${'Code Quality:'}
265
- ${(0, picocolors_1.cyan)(' • "Add error handling to this function"')}
266
- ${(0, picocolors_1.cyan)(' • "Add JSDoc comments to this file"')}
267
- ${(0, picocolors_1.cyan)(' • "Fix the type errors in this component"')}
268
-
269
- ${'Testing & Validation:'}
270
- ${(0, picocolors_1.cyan)(' • "Create a unit test for the auth module"')}
271
- ${(0, picocolors_1.cyan)(' • "Add input validation to this endpoint"')}
272
-
273
- ${'Performance & Architecture:'}
274
- ${(0, picocolors_1.cyan)(' • "Optimize this database query"')}
275
- ${(0, picocolors_1.cyan)(' • "Refactor this to use async/await"')}
276
- ${(0, picocolors_1.cyan)(' • "Add caching to this service"')}
277
-
278
- ${'Features & Infrastructure:'}
279
- ${(0, picocolors_1.cyan)(' • "Create a new API endpoint for users"')}
280
- ${(0, picocolors_1.cyan)(' • "Add logging to these functions"')}
281
- ${(0, picocolors_1.cyan)(' • "Set up CI/CD pipeline config"')}
282
- `);
283
- // INTERACTIVE COMMANDS SECTION
284
- const fixedCommandWidth = 30; // Fixed width for command column
285
- const formatMenuLine = (commandText, description) => {
286
- const paddedCommand = commandText.padEnd(fixedCommandWidth);
287
- return `${paddedCommand}${description}`;
288
- };
289
- const menuLines = exports.interactiveCommandDetails
290
- .filter((cmd) => cmd.commandText) // Filter out slash-only commands like the discrete undo/redo
291
- .map((cmd) => formatMenuLine(cmd.commandText, cmd.description));
292
- console.log(`\n${(0, picocolors_1.bold)((0, picocolors_1.underline)('COMMANDS (type these below)'))}${' '.repeat(fixedCommandWidth - 27)}${(0, picocolors_1.bold)((0, picocolors_1.underline)('DESCRIPTION'))}\n\n${menuLines.join(`\n${dividerLine}`)}\n`);
293
- console.log(`\n↓ Enter your prompt or command below ↓`);
294
- }
295
- //# sourceMappingURL=menu.js.map
package/dist/menu.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["../src/menu.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { Client } from './client';
2
- export interface OrganizationContext {
3
- organizationId?: string;
4
- organizationName?: string;
5
- repositoryUrl?: string;
6
- usingOrganizationCredits: boolean;
7
- organizationBalance?: number;
8
- userBalance?: number;
9
- }
10
- /**
11
- * Determines organization context for the current project
12
- */
13
- export declare function getOrganizationContext(client: Client): Promise<OrganizationContext>;
14
- /**
15
- * Displays organization context information to the user
16
- */
17
- export declare function displayOrganizationContext(context: OrganizationContext): string;
18
- /**
19
- * Formats credit usage information with organization context
20
- */
21
- export declare function formatCreditUsage(creditsUsed: number, context: OrganizationContext): string;
22
- /**
23
- * Checks if user can override organization credit usage
24
- */
25
- export declare function canOverrideOrganizationCredits(context: OrganizationContext): boolean;
26
- /**
27
- * Gets organization-specific CLI commands
28
- */
29
- export declare function getOrganizationCommands(): Array<{
30
- command: string;
31
- description: string;
32
- handler: () => Promise<void>;
33
- }>;
@@ -1,112 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getOrganizationContext = getOrganizationContext;
4
- exports.displayOrganizationContext = displayOrganizationContext;
5
- exports.formatCreditUsage = formatCreditUsage;
6
- exports.canOverrideOrganizationCredits = canOverrideOrganizationCredits;
7
- exports.getOrganizationCommands = getOrganizationCommands;
8
- const logger_1 = require("./utils/logger");
9
- const project_files_1 = require("./project-files");
10
- /**
11
- * Determines organization context for the current project
12
- */
13
- async function getOrganizationContext(client) {
14
- try {
15
- const repositoryUrl = await (0, project_files_1.getCurrentRepositoryUrl)();
16
- if (!repositoryUrl) {
17
- return {
18
- usingOrganizationCredits: false,
19
- };
20
- }
21
- // Check if this repository is associated with an organization
22
- // This would typically be done via an API call to the backend
23
- // For now, we'll implement a placeholder
24
- const context = {
25
- repositoryUrl,
26
- usingOrganizationCredits: false,
27
- };
28
- // TODO: Implement API call to check organization association
29
- // const orgInfo = await client.checkOrganizationForRepository(repositoryUrl)
30
- // if (orgInfo) {
31
- // context.organizationId = orgInfo.id
32
- // context.organizationName = orgInfo.name
33
- // context.usingOrganizationCredits = true
34
- // context.organizationBalance = orgInfo.balance
35
- // }
36
- return context;
37
- }
38
- catch (error) {
39
- logger_1.logger.error({ error }, 'Error getting organization context');
40
- return {
41
- usingOrganizationCredits: false,
42
- };
43
- }
44
- }
45
- /**
46
- * Displays organization context information to the user
47
- */
48
- function displayOrganizationContext(context) {
49
- if (!context.usingOrganizationCredits) {
50
- return 'Using personal credits';
51
- }
52
- const parts = [];
53
- if (context.organizationName) {
54
- parts.push(`Organization: ${context.organizationName}`);
55
- }
56
- if (context.organizationBalance !== undefined) {
57
- parts.push(`Org Credits: ${context.organizationBalance.toLocaleString()}`);
58
- }
59
- if (context.userBalance !== undefined) {
60
- parts.push(`Personal Credits: ${context.userBalance.toLocaleString()}`);
61
- }
62
- return parts.join(' | ');
63
- }
64
- /**
65
- * Formats credit usage information with organization context
66
- */
67
- function formatCreditUsage(creditsUsed, context) {
68
- const baseMessage = `Used ${creditsUsed.toLocaleString()} credits`;
69
- if (context.usingOrganizationCredits && context.organizationName) {
70
- return `${baseMessage} (from ${context.organizationName})`;
71
- }
72
- return `${baseMessage} (personal)`;
73
- }
74
- /**
75
- * Checks if user can override organization credit usage
76
- */
77
- function canOverrideOrganizationCredits(context) {
78
- // Users can always fall back to personal credits if they have them
79
- return context.userBalance !== undefined && context.userBalance > 0;
80
- }
81
- /**
82
- * Gets organization-specific CLI commands
83
- */
84
- function getOrganizationCommands() {
85
- return [
86
- {
87
- command: '/org-status',
88
- description: 'Show organization credit status',
89
- handler: async () => {
90
- // TODO: Implement organization status display
91
- console.log('Organization status not yet implemented');
92
- },
93
- },
94
- {
95
- command: '/org-switch',
96
- description: 'Switch between personal and organization credits',
97
- handler: async () => {
98
- // TODO: Implement organization switching
99
- console.log('Organization switching not yet implemented');
100
- },
101
- },
102
- {
103
- command: '/org-usage',
104
- description: 'Show organization usage breakdown',
105
- handler: async () => {
106
- // TODO: Implement organization usage display
107
- console.log('Organization usage display not yet implemented');
108
- },
109
- },
110
- ];
111
- }
112
- //# sourceMappingURL=organization-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organization-context.js","sourceRoot":"","sources":["../src/organization-context.ts"],"names":[],"mappings":";;AAgBA,wDAmCC;AAKD,gEAoBC;AAKD,8CAWC;AAKD,wEAGC;AAKD,0DA+BC;AAxID,2CAAuC;AACvC,mDAAyE;AAYzE;;GAEG;AACI,KAAK,UAAU,sBAAsB,CAAC,MAAc;IACzD,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,IAAA,uCAAuB,GAAE,CAAA;QAErD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,wBAAwB,EAAE,KAAK;aAChC,CAAA;QACH,CAAC;QAED,8DAA8D;QAC9D,8DAA8D;QAC9D,yCAAyC;QAEzC,MAAM,OAAO,GAAwB;YACnC,aAAa;YACb,wBAAwB,EAAE,KAAK;SAChC,CAAA;QAED,6DAA6D;QAC7D,6EAA6E;QAC7E,iBAAiB;QACjB,wCAAwC;QACxC,4CAA4C;QAC5C,4CAA4C;QAC5C,kDAAkD;QAClD,IAAI;QAEJ,OAAO,OAAO,CAAA;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,oCAAoC,CAAC,CAAA;QAC7D,OAAO;YACL,wBAAwB,EAAE,KAAK;SAChC,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,OAA4B;IACrE,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;QACtC,OAAO,wBAAwB,CAAA;IACjC,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,CAAA;IAEhB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,iBAAiB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,mBAAmB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;IAC5E,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;IACzE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,WAAmB,EACnB,OAA4B;IAE5B,MAAM,WAAW,GAAG,QAAQ,WAAW,CAAC,cAAc,EAAE,UAAU,CAAA;IAElE,IAAI,OAAO,CAAC,wBAAwB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACjE,OAAO,GAAG,WAAW,UAAU,OAAO,CAAC,gBAAgB,GAAG,CAAA;IAC5D,CAAC;IAED,OAAO,GAAG,WAAW,aAAa,CAAA;AACpC,CAAC;AAED;;GAEG;AACH,SAAgB,8BAA8B,CAAC,OAA4B;IACzE,mEAAmE;IACnE,OAAO,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,CAAA;AACrE,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB;IAKrC,OAAO;QACL;YACE,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,8CAA8C;gBAC9C,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;YACxD,CAAC;SACF;QACD;YACE,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,kDAAkD;YAC/D,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,yCAAyC;gBACzC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;YAC3D,CAAC;SACF;QACD;YACE,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,mCAAmC;YAChD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,6CAA6C;gBAC7C,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAA;YAC/D,CAAC;SACF;KACF,CAAA;AACH,CAAC"}
@@ -1,7 +0,0 @@
1
- export interface SlashCommand {
2
- command: string;
3
- description: string;
4
- aliases?: string[];
5
- fullCommand?: string;
6
- }
7
- export declare const slashCommands: SlashCommand[];
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.slashCommands = void 0;
4
- exports.slashCommands = [
5
- { command: '/help', fullCommand: 'help', description: 'Show help menu', aliases: ['/h'] },
6
- { command: '/login', fullCommand: 'login', description: 'Authenticate your session' },
7
- { command: '/logout', fullCommand: 'logout', description: 'Sign out of your session' },
8
- { command: '/init', fullCommand: 'init', description: 'Configure project for better results' },
9
- { command: '/diff', fullCommand: 'diff', description: 'Show last assistant change diff', aliases: ['/d'] },
10
- { command: '/undo', fullCommand: 'undo', description: 'Revert to previous checkpoint', aliases: ['/u'] },
11
- { command: '/redo', fullCommand: 'redo', description: 'Re-apply previously undone checkpoint', aliases: ['/r'] },
12
- { command: '/checkpoint save', fullCommand: 'checkpoint save', description: 'Save current state as a new checkpoint' },
13
- { command: '/checkpoint list', fullCommand: 'checkpoint list', description: 'List all saved checkpoints' },
14
- { command: '/checkpoint clear', fullCommand: 'checkpoint clear', description: 'Clear all checkpoints' },
15
- // For commands like "checkpoint <id>", direct slash command is tricky.
16
- // User would type "/checkpoint restore" then space and the id.
17
- { command: '/checkpoint restore', fullCommand: 'checkpoint restore', description: 'Restore to checkpoint <id> (type ID after)' },
18
- { command: '/usage', fullCommand: 'usage', description: 'View remaining/bonus AI credits', aliases: ['/credits'] },
19
- { command: '/exit', fullCommand: 'exit', description: 'Quit Codebuff', aliases: ['/quit', '/q'] },
20
- ];
21
- //# sourceMappingURL=slash-commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"slash-commands.js","sourceRoot":"","sources":["../src/slash-commands.ts"],"names":[],"mappings":";;;AAOa,QAAA,aAAa,GAAmB;IAC3C,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IACzF,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,2BAA2B,EAAE;IACrF,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACtF,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,sCAAsC,EAAE;IAC9F,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,iCAAiC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IAC1G,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,+BAA+B,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IACxG,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,uCAAuC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IAChH,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,wCAAwC,EAAE;IACtH,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC1G,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IACvG,uEAAuE;IACvE,+DAA+D;IAC/D,EAAE,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,oBAAoB,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAChI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,iCAAiC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE;IAClH,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;CAClG,CAAC"}
@@ -1,2 +0,0 @@
1
- import { CodebuffConfig } from './common/json-config/constants';
2
- export declare function logAndHandleStartup(projectRoot: string, config: CodebuffConfig | null): Promise<any>;
package/dist/types.d.ts DELETED
@@ -1,15 +0,0 @@
1
- import { CostMode } from './common/constants';
2
- export type GitCommand = 'stage' | undefined;
3
- export interface CliOptions {
4
- initialInput?: string;
5
- git: GitCommand;
6
- costMode: CostMode;
7
- runInitFlow?: boolean;
8
- model?: string;
9
- }
10
- /**
11
- * Utility type to make specific properties nullable
12
- */
13
- export type MakeNullable<T, K extends keyof T> = {
14
- [P in keyof T]: P extends K ? T[P] | null : T[P];
15
- };
package/dist/types.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- export declare function updateCodebuff(): Promise<void>;