matex-cli 1.2.47 → 1.2.49
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.
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +23 -18
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/study.d.ts.map +1 -1
- package/dist/commands/study.js +23 -19
- package/dist/commands/study.js.map +1 -1
- package/dist/utils/agent-orchestrator.d.ts.map +1 -1
- package/dist/utils/agent-orchestrator.js +1 -2
- package/dist/utils/agent-orchestrator.js.map +1 -1
- package/dist/utils/patcher.d.ts.map +1 -1
- package/dist/utils/patcher.js +22 -28
- package/dist/utils/patcher.js.map +1 -1
- package/dist/utils/tui.d.ts +16 -0
- package/dist/utils/tui.d.ts.map +1 -1
- package/dist/utils/tui.js +97 -75
- package/dist/utils/tui.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/dev.ts +21 -19
- package/src/commands/study.ts +21 -20
- package/src/utils/agent-orchestrator.ts +1 -2
- package/src/utils/patcher.ts +22 -32
- package/src/utils/tui.ts +105 -80
package/dist/utils/tui.js
CHANGED
|
@@ -122,44 +122,97 @@ class TUI {
|
|
|
122
122
|
* Draw a premium glowing code container (turns cyan)
|
|
123
123
|
*/
|
|
124
124
|
static drawGlowingContainer(title, language, content) {
|
|
125
|
-
const width =
|
|
126
|
-
const innerWidth = width -
|
|
127
|
-
// Premium Cyan Glow
|
|
125
|
+
const width = 76;
|
|
126
|
+
const innerWidth = width - 8;
|
|
128
127
|
const glow = chalk_1.default.hex('#06b6d4');
|
|
129
|
-
const
|
|
130
|
-
const
|
|
131
|
-
console.log();
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
const headerText = ` ${title} [${language}] `;
|
|
136
|
-
const headerPad = Math.max(0, innerWidth - headerText.length);
|
|
137
|
-
console.log(glow(' ╭─') + bright.bold.bgHex('#083344')(headerText) + glow('─'.repeat(headerPad - 2)) + glow('╮'));
|
|
138
|
-
// Content
|
|
128
|
+
const border = chalk_1.default.hex('#164e63');
|
|
129
|
+
const shadow = chalk_1.default.hex('#083344');
|
|
130
|
+
console.log('\n' + shadow(` ┌${'─'.repeat(width - 4)}┐`));
|
|
131
|
+
const header = ` ${title.toUpperCase()} • ${language} `;
|
|
132
|
+
const hPad = Math.max(0, width - 8 - header.length);
|
|
133
|
+
console.log(glow(' │ ') + chalk_1.default.bgHex('#164e63').white.bold(header) + border('─'.repeat(hPad)) + glow(' │'));
|
|
139
134
|
const lines = content.split('\n');
|
|
140
|
-
|
|
141
|
-
const displayLines = lines.length > 20 ? lines.slice(0, 18) : lines;
|
|
135
|
+
const displayLines = lines.length > 25 ? lines.slice(0, 23) : lines;
|
|
142
136
|
displayLines.forEach(line => {
|
|
143
|
-
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
console.log(glow(' │ ') + chalk_1.default.white(displayLine) + ' '.repeat(pad) + glow(' │'));
|
|
137
|
+
const displayLine = line.length > innerWidth ? line.substring(0, innerWidth - 3) + '...' : line;
|
|
138
|
+
const pad = Math.max(0, innerWidth - displayLine.length);
|
|
139
|
+
console.log(border(' │ ') + chalk_1.default.white(displayLine) + ' '.repeat(pad) + border(' │'));
|
|
147
140
|
});
|
|
148
|
-
if (lines.length >
|
|
149
|
-
|
|
150
|
-
const pad = Math.max(0, innerWidth - 2 - (`... ${lines.length - 18} more lines ...`).length);
|
|
151
|
-
console.log(glow(' │ ') + hiddenText + ' '.repeat(pad) + glow(' │'));
|
|
141
|
+
if (lines.length > 25) {
|
|
142
|
+
console.log(border(' │ ') + chalk_1.default.italic.gray(`... ${lines.length - 23} more lines ...`).padEnd(innerWidth) + border(' │'));
|
|
152
143
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
144
|
+
console.log(shadow(` └${'─'.repeat(width - 4)}┘\n`));
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Nebula Thinking Box: Starry background effect for deliberation
|
|
148
|
+
*/
|
|
149
|
+
static drawThinkingBox(agent, thought) {
|
|
150
|
+
const width = Math.min(process.stdout.columns || 80, 70);
|
|
151
|
+
const innerWidth = width - 10;
|
|
152
|
+
const starColor = chalk_1.default.hex('#6366f1');
|
|
153
|
+
const nebulaColor = chalk_1.default.hex('#a855f7');
|
|
154
|
+
console.log('\n' + starColor(` ✧ . * . ✧ . * . ✧`));
|
|
155
|
+
console.log(nebulaColor(` ╭${'─'.repeat(width - 4)}╮`));
|
|
156
|
+
console.log(nebulaColor(' │ ') + nebulaColor.bold(`[ ${agent} is deliberating... ]`).padEnd(width - 6) + nebulaColor(' │'));
|
|
157
|
+
console.log(nebulaColor(' ├' + '╌'.repeat(width - 4) + '┤'));
|
|
158
|
+
const words = thought.split(' ');
|
|
159
|
+
let currentLine = '';
|
|
160
|
+
words.forEach(word => {
|
|
161
|
+
if ((currentLine + ' ' + word).trim().length <= innerWidth) {
|
|
162
|
+
currentLine = currentLine ? currentLine + ' ' + word : word;
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
if (currentLine)
|
|
166
|
+
console.log(nebulaColor(' │ ') + chalk_1.default.italic.dim(currentLine.padEnd(innerWidth)) + nebulaColor(' │'));
|
|
167
|
+
currentLine = word;
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
if (currentLine)
|
|
171
|
+
console.log(nebulaColor(' │ ') + chalk_1.default.italic.dim(currentLine.padEnd(innerWidth)) + nebulaColor(' │'));
|
|
172
|
+
console.log(nebulaColor(` ╰${'─'.repeat(width - 4)}╯`));
|
|
173
|
+
console.log(starColor(` * . ✧ . * . ✧ . *`));
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Live Streaming: Start a technical block container
|
|
177
|
+
*/
|
|
178
|
+
static drawStreamingStart(title, language) {
|
|
179
|
+
const width = 76;
|
|
180
|
+
const glow = chalk_1.default.hex('#06b6d4');
|
|
181
|
+
const border = chalk_1.default.hex('#164e63');
|
|
182
|
+
const shadow = chalk_1.default.hex('#083344');
|
|
183
|
+
console.log('\n' + shadow(` ┌${'─'.repeat(width - 4)}┐`));
|
|
184
|
+
const header = ` ${title.toUpperCase()} • ${language} `;
|
|
185
|
+
const hPad = Math.max(0, width - 8 - header.length);
|
|
186
|
+
console.log(glow(' │ ') + chalk_1.default.bgHex('#164e63').white.bold(header) + border('─'.repeat(hPad)) + glow(' │'));
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Live Streaming: Add a line to the active container
|
|
190
|
+
*/
|
|
191
|
+
static drawStreamingLine(content) {
|
|
192
|
+
const width = 76;
|
|
193
|
+
const innerWidth = width - 8;
|
|
194
|
+
const border = chalk_1.default.hex('#164e63');
|
|
195
|
+
// Handle multi-line content if passed
|
|
196
|
+
const lines = content.split('\n');
|
|
197
|
+
lines.forEach(line => {
|
|
198
|
+
const displayLine = line.length > innerWidth ? line.substring(0, innerWidth - 3) + '...' : line;
|
|
199
|
+
const pad = Math.max(0, innerWidth - displayLine.length);
|
|
200
|
+
console.log(border(' │ ') + chalk_1.default.white(displayLine) + ' '.repeat(pad) + border(' │'));
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Live Streaming: Close the container
|
|
205
|
+
*/
|
|
206
|
+
static drawStreamingEnd() {
|
|
207
|
+
const width = 76;
|
|
208
|
+
const shadow = chalk_1.default.hex('#083344');
|
|
209
|
+
console.log(shadow(` └${'─'.repeat(width - 4)}┘\n`));
|
|
157
210
|
}
|
|
158
211
|
/**
|
|
159
212
|
* Draw Ajay Vai's premium summary with a human chat bubble vibe
|
|
160
213
|
*/
|
|
161
214
|
static drawSummaryBox(content) {
|
|
162
|
-
const width =
|
|
215
|
+
const width = 74;
|
|
163
216
|
const innerWidth = width - 6;
|
|
164
217
|
const magenta = chalk_1.default.hex('#ff69b4');
|
|
165
218
|
const pinkBright = chalk_1.default.hex('#ff99cc');
|
|
@@ -232,69 +285,38 @@ class TUI {
|
|
|
232
285
|
agent.includes('Sunil') ? chalk_1.default.blue :
|
|
233
286
|
agent.includes('Sandip') ? chalk_1.default.hex('#FF69B4') :
|
|
234
287
|
agent.includes('Bishal') ? chalk_1.default.yellow :
|
|
235
|
-
agent.includes('
|
|
236
|
-
|
|
237
|
-
agent.includes('Chill') ? chalk_1.default.hex('#22c55e') :
|
|
238
|
-
agent.includes('Lil') ? chalk_1.default.hex('#888888') :
|
|
239
|
-
agent.includes('Narayan') ? chalk_1.default.green :
|
|
240
|
-
chalk_1.default.green;
|
|
241
|
-
// Glow color is a brighter version of the agent color
|
|
242
|
-
const glowColor = isBigBro ? chalk_1.default.hex('#FF9642') :
|
|
243
|
-
agent.includes('Ajay') ? chalk_1.default.hex('#ff77ff') :
|
|
244
|
-
agent.includes('Sunil') ? chalk_1.default.hex('#66aaff') :
|
|
245
|
-
agent.includes('Sandip') ? chalk_1.default.hex('#ff99cc') :
|
|
246
|
-
agent.includes('Bishal') ? chalk_1.default.hex('#ffee66') :
|
|
247
|
-
agent.includes('Hype') ? chalk_1.default.hex('#ffe066') :
|
|
248
|
-
agent.includes('Nerd') ? chalk_1.default.hex('#33ddee') :
|
|
249
|
-
agent.includes('Chill') ? chalk_1.default.hex('#66ff88') :
|
|
250
|
-
agent.includes('Lil') ? chalk_1.default.hex('#aaaaaa') :
|
|
251
|
-
chalk_1.default.hex('#66ff88');
|
|
288
|
+
agent.includes('Narayan') ? chalk_1.default.green : chalk_1.default.cyan;
|
|
289
|
+
const glowColor = isBigBro ? chalk_1.default.hex('#fbbf24') : color;
|
|
252
290
|
const icon = isBigBro ? '🔥' :
|
|
253
291
|
agent.includes('Ajay') ? '🚀' :
|
|
254
292
|
agent.includes('Sunil') ? '🧬' :
|
|
255
293
|
agent.includes('Sandip') ? '🎨' :
|
|
256
294
|
agent.includes('Bishal') ? '🛠️' :
|
|
257
|
-
agent.includes('
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
const
|
|
263
|
-
const
|
|
264
|
-
|
|
265
|
-
console.log(
|
|
266
|
-
//
|
|
267
|
-
console.log(color(` ╔${'═'.repeat(width - 4)}╗`));
|
|
268
|
-
// Header with agent name
|
|
269
|
-
const headerText = `${icon} ${agent}`;
|
|
270
|
-
const pad = Math.max(0, innerWidth - headerText.length);
|
|
271
|
-
console.log(color(' ║ ') + color.bold(headerText) + ' '.repeat(pad) + color(' ║'));
|
|
272
|
-
// Separator with dots for premium feel
|
|
273
|
-
console.log(color(' ╠') + glowColor('·'.repeat(width - 4)) + color('╣'));
|
|
274
|
-
// Content lines with word wrap
|
|
295
|
+
agent.includes('Narayan') ? '🛡️' : '🤖';
|
|
296
|
+
const width = 76;
|
|
297
|
+
const innerWidth = width - 10;
|
|
298
|
+
// Robust Elite Header
|
|
299
|
+
console.log('\n' + color(` ┌${'─'.repeat(width - 4)}┐`));
|
|
300
|
+
const header = ` ${icon} ${agent.toUpperCase()} `;
|
|
301
|
+
const hPad = Math.max(0, width - 8 - header.length);
|
|
302
|
+
console.log(color(' │ ') + chalk_1.default.bgHex('#1a1a1a').white.bold(header) + color('╊'.repeat(hPad)) + color(' │'));
|
|
303
|
+
console.log(color(' │ ') + glowColor('─'.repeat(width - 6)) + color(' │'));
|
|
304
|
+
// Wrapped Content
|
|
275
305
|
const words = message.split(' ');
|
|
276
306
|
let currentLine = '';
|
|
277
|
-
const wrappedLines = [];
|
|
278
307
|
words.forEach(word => {
|
|
279
308
|
if ((currentLine + ' ' + word).trim().length <= innerWidth) {
|
|
280
309
|
currentLine = currentLine ? currentLine + ' ' + word : word;
|
|
281
310
|
}
|
|
282
311
|
else {
|
|
283
312
|
if (currentLine)
|
|
284
|
-
|
|
285
|
-
currentLine = word
|
|
313
|
+
console.log(color(' │ ') + chalk_1.default.white(currentLine.padEnd(innerWidth)) + color(' │'));
|
|
314
|
+
currentLine = word;
|
|
286
315
|
}
|
|
287
316
|
});
|
|
288
317
|
if (currentLine)
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
const linePad = Math.max(0, innerWidth - line.length);
|
|
292
|
-
console.log(color(' ║ ') + chalk_1.default.white(line) + ' '.repeat(linePad) + color(' ║'));
|
|
293
|
-
});
|
|
294
|
-
// Bottom border
|
|
295
|
-
console.log(color(` ╚${'═'.repeat(width - 4)}╝`));
|
|
296
|
-
// Bottom glow shimmer
|
|
297
|
-
console.log(glowColor(` ░${'░'.repeat(width - 4)}░`));
|
|
318
|
+
console.log(color(' │ ') + chalk_1.default.white(currentLine.padEnd(innerWidth)) + color(' │'));
|
|
319
|
+
console.log(color(` └${'─'.repeat(width - 4)}┘\n`));
|
|
298
320
|
}
|
|
299
321
|
/**
|
|
300
322
|
* Simple log with a prefix
|
package/dist/utils/tui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/utils/tui.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/utils/tui.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/commands/dev.ts
CHANGED
|
@@ -246,9 +246,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
246
246
|
for (const line of lines) {
|
|
247
247
|
// 1. Technical Block Detection
|
|
248
248
|
const codeBlockMatch = line.match(/```(\w+)?/);
|
|
249
|
-
const fileStartMatch = line.match(/<file path="([^"]+)">/);
|
|
250
|
-
const patchStartMatch = line.match(/<<<< SEARCH/);
|
|
251
|
-
const summaryStartMatch = line.match(/<summary>/);
|
|
249
|
+
const fileStartMatch = line.match(/<file path="([^"]+)">/i);
|
|
250
|
+
const patchStartMatch = line.match(/<<<< SEARCH/i);
|
|
251
|
+
const summaryStartMatch = line.match(/<summary>/i);
|
|
252
252
|
|
|
253
253
|
if (!technicalType && (codeBlockMatch || fileStartMatch || patchStartMatch || summaryStartMatch)) {
|
|
254
254
|
// Flush pending agent dialogue
|
|
@@ -264,15 +264,15 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
264
264
|
|
|
265
265
|
if (codeBlockMatch) {
|
|
266
266
|
technicalType = 'code';
|
|
267
|
-
codeLang = codeBlockMatch[1] || 'bash';
|
|
268
|
-
|
|
267
|
+
codeLang = (codeBlockMatch[1] || 'bash').toUpperCase();
|
|
268
|
+
TUI.drawStreamingStart('TECHNICAL BLOCK', codeLang);
|
|
269
269
|
} else if (fileStartMatch) {
|
|
270
270
|
technicalType = 'file';
|
|
271
271
|
technicalPath = fileStartMatch[1];
|
|
272
|
-
|
|
272
|
+
TUI.drawStreamingStart('NEW FILE', technicalPath);
|
|
273
273
|
} else if (patchStartMatch) {
|
|
274
274
|
technicalType = 'patch';
|
|
275
|
-
|
|
275
|
+
TUI.drawStreamingStart('PATCH', 'SURGICAL EDIT');
|
|
276
276
|
} else if (summaryStartMatch) {
|
|
277
277
|
technicalType = 'summary';
|
|
278
278
|
process.stdout.write(chalk.magenta('\n [📝] Generating Ajay\'s Work Summary...\n'));
|
|
@@ -281,9 +281,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
281
281
|
}
|
|
282
282
|
|
|
283
283
|
// 2. Technical Block End Detection
|
|
284
|
-
const fileEndMatch = line.match(/<\/file>/);
|
|
285
|
-
const patchEndMatch = line.match(/>>>> REPLACE/);
|
|
286
|
-
const summaryEndMatch = line.match(/<\/summary>/);
|
|
284
|
+
const fileEndMatch = line.match(/<\/file>/i);
|
|
285
|
+
const patchEndMatch = line.match(/>>>> REPLACE/i);
|
|
286
|
+
const summaryEndMatch = line.match(/<\/summary>/i);
|
|
287
287
|
const isCodeEnd = technicalType === 'code' && line.trim() === '```';
|
|
288
288
|
|
|
289
289
|
if (isCodeEnd || fileEndMatch || patchEndMatch || summaryEndMatch) {
|
|
@@ -291,11 +291,7 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
291
291
|
if (technicalType === 'summary' || summaryEndMatch) {
|
|
292
292
|
TUI.drawSummaryBox(displayContent);
|
|
293
293
|
} else {
|
|
294
|
-
|
|
295
|
-
let title = technicalType === 'file' ? `📄 NEW: ${technicalPath || 'Untitled'}` :
|
|
296
|
-
technicalType === 'patch' ? `🔧 PATCH` : `⚡ ${codeLang.toUpperCase()}`;
|
|
297
|
-
|
|
298
|
-
TUI.drawGlowingContainer(title, technicalType === 'code' ? codeLang : 'text', displayContent);
|
|
294
|
+
TUI.drawStreamingEnd();
|
|
299
295
|
}
|
|
300
296
|
technicalBuffer = '';
|
|
301
297
|
technicalType = null;
|
|
@@ -307,6 +303,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
307
303
|
// 3. Content Handling
|
|
308
304
|
if (technicalType) {
|
|
309
305
|
technicalBuffer += line + '\n';
|
|
306
|
+
if (technicalType !== 'summary') {
|
|
307
|
+
TUI.drawStreamingLine(line);
|
|
308
|
+
}
|
|
310
309
|
continue;
|
|
311
310
|
}
|
|
312
311
|
|
|
@@ -356,8 +355,8 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
356
355
|
|
|
357
356
|
// Final flushes
|
|
358
357
|
if (currentAgent && agentBuffer.trim()) {
|
|
359
|
-
if ((currentAgent as string).toLowerCase()
|
|
360
|
-
|
|
358
|
+
if ((currentAgent as string).toLowerCase().includes('ajay vai')) {
|
|
359
|
+
TUI.drawSummaryBox(agentBuffer.trim());
|
|
361
360
|
} else {
|
|
362
361
|
TUI.drawSwarmDialogue(currentAgent as string, agentBuffer.trim());
|
|
363
362
|
}
|
|
@@ -368,9 +367,12 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
368
367
|
if (technicalType === 'summary') {
|
|
369
368
|
TUI.drawSummaryBox(technicalBuffer.trim());
|
|
370
369
|
} else {
|
|
371
|
-
TUI.
|
|
370
|
+
TUI.drawStreamingEnd();
|
|
372
371
|
}
|
|
373
|
-
|
|
372
|
+
} else if (fullResponse.toLowerCase().includes('<summary>') && !fullResponse.toLowerCase().includes('</summary>')) {
|
|
373
|
+
// Emergency fallback for split/unclosed summary tags
|
|
374
|
+
const summaryContent = fullResponse.split(/<summary>/i).pop() || '';
|
|
375
|
+
if (summaryContent.trim()) TUI.drawSummaryBox(summaryContent.trim());
|
|
374
376
|
}
|
|
375
377
|
|
|
376
378
|
console.log();
|
package/src/commands/study.ts
CHANGED
|
@@ -228,9 +228,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
228
228
|
for (const line of lines) {
|
|
229
229
|
// 1. Technical Block Detection
|
|
230
230
|
const codeBlockMatch = line.match(/```(\w+)?/);
|
|
231
|
-
const fileStartMatch = line.match(/<file path="([^"]+)">/);
|
|
232
|
-
const patchStartMatch = line.match(/<<<< SEARCH/);
|
|
233
|
-
const summaryStartMatch = line.match(/<summary>/);
|
|
231
|
+
const fileStartMatch = line.match(/<file path="([^"]+)">/i);
|
|
232
|
+
const patchStartMatch = line.match(/<<<< SEARCH/i);
|
|
233
|
+
const summaryStartMatch = line.match(/<summary>/i);
|
|
234
234
|
|
|
235
235
|
if (!technicalType && (codeBlockMatch || fileStartMatch || patchStartMatch || summaryStartMatch)) {
|
|
236
236
|
// Flush pending agent dialogue
|
|
@@ -246,15 +246,15 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
246
246
|
|
|
247
247
|
if (codeBlockMatch) {
|
|
248
248
|
technicalType = 'code';
|
|
249
|
-
codeLang = codeBlockMatch[1] || 'bash';
|
|
250
|
-
|
|
249
|
+
codeLang = (codeBlockMatch[1] || 'bash').toUpperCase();
|
|
250
|
+
TUI.drawStreamingStart('TECHNICAL BLOCK', codeLang);
|
|
251
251
|
} else if (fileStartMatch) {
|
|
252
252
|
technicalType = 'file';
|
|
253
253
|
technicalPath = fileStartMatch[1];
|
|
254
|
-
|
|
254
|
+
TUI.drawStreamingStart('NEW FILE', technicalPath);
|
|
255
255
|
} else if (patchStartMatch) {
|
|
256
256
|
technicalType = 'patch';
|
|
257
|
-
|
|
257
|
+
TUI.drawStreamingStart('PATCH', 'SURGICAL EDIT');
|
|
258
258
|
} else if (summaryStartMatch) {
|
|
259
259
|
technicalType = 'summary';
|
|
260
260
|
process.stdout.write(chalk.magenta('\n [📝] Generating Ajay\'s Work Summary...\n'));
|
|
@@ -263,9 +263,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
263
263
|
}
|
|
264
264
|
|
|
265
265
|
// 2. Technical Block End Detection
|
|
266
|
-
const fileEndMatch = line.match(/<\/file>/);
|
|
267
|
-
const patchEndMatch = line.match(/>>>> REPLACE/);
|
|
268
|
-
const summaryEndMatch = line.match(/<\/summary>/);
|
|
266
|
+
const fileEndMatch = line.match(/<\/file>/i);
|
|
267
|
+
const patchEndMatch = line.match(/>>>> REPLACE/i);
|
|
268
|
+
const summaryEndMatch = line.match(/<\/summary>/i);
|
|
269
269
|
const isCodeEnd = technicalType === 'code' && line.trim() === '```';
|
|
270
270
|
|
|
271
271
|
if (isCodeEnd || fileEndMatch || patchEndMatch || summaryEndMatch) {
|
|
@@ -273,11 +273,7 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
273
273
|
if (technicalType === 'summary' || summaryEndMatch) {
|
|
274
274
|
TUI.drawSummaryBox(displayContent);
|
|
275
275
|
} else {
|
|
276
|
-
|
|
277
|
-
let title = technicalType === 'file' ? `📄 NEW: ${technicalPath || 'Untitled'}` :
|
|
278
|
-
technicalType === 'patch' ? `🔧 PATCH` : `⚡ ${codeLang.toUpperCase()}`;
|
|
279
|
-
|
|
280
|
-
TUI.drawGlowingContainer(title, technicalType === 'code' ? codeLang : 'text', displayContent);
|
|
276
|
+
TUI.drawStreamingEnd();
|
|
281
277
|
}
|
|
282
278
|
technicalBuffer = '';
|
|
283
279
|
technicalType = null;
|
|
@@ -289,6 +285,9 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
289
285
|
// 3. Content Handling
|
|
290
286
|
if (technicalType) {
|
|
291
287
|
technicalBuffer += line + '\n';
|
|
288
|
+
if (technicalType !== 'summary') {
|
|
289
|
+
TUI.drawStreamingLine(line);
|
|
290
|
+
}
|
|
292
291
|
continue;
|
|
293
292
|
}
|
|
294
293
|
|
|
@@ -338,21 +337,23 @@ If a file is too large to read entirely (e.g., thousands of lines):
|
|
|
338
337
|
|
|
339
338
|
// Final flushes
|
|
340
339
|
if (currentAgent && agentBuffer.trim()) {
|
|
341
|
-
if ((currentAgent as string).toLowerCase()
|
|
342
|
-
|
|
340
|
+
if ((currentAgent as string).toLowerCase().includes('ajay vai')) {
|
|
341
|
+
TUI.drawSummaryBox(agentBuffer.trim());
|
|
343
342
|
} else {
|
|
344
343
|
TUI.drawSwarmDialogue(currentAgent as string, agentBuffer.trim());
|
|
345
344
|
}
|
|
346
345
|
}
|
|
347
346
|
|
|
348
|
-
// Final technical flush
|
|
347
|
+
// Final technical flush (Summary Fallback)
|
|
349
348
|
if (technicalType && technicalBuffer.trim()) {
|
|
350
349
|
if (technicalType === 'summary') {
|
|
351
350
|
TUI.drawSummaryBox(technicalBuffer.trim());
|
|
352
351
|
} else {
|
|
353
|
-
TUI.
|
|
352
|
+
TUI.drawStreamingEnd();
|
|
354
353
|
}
|
|
355
|
-
|
|
354
|
+
} else if (fullResponse.toLowerCase().includes('<summary>') && !fullResponse.toLowerCase().includes('</summary>')) {
|
|
355
|
+
const summaryContent = fullResponse.split(/<summary>/i).pop() || '';
|
|
356
|
+
if (summaryContent.trim()) TUI.drawSummaryBox(summaryContent.trim());
|
|
356
357
|
}
|
|
357
358
|
|
|
358
359
|
console.log();
|
|
@@ -147,8 +147,7 @@ export class AgentOrchestrator {
|
|
|
147
147
|
const cleaned = this.cleanText(thought);
|
|
148
148
|
if (!cleaned) return;
|
|
149
149
|
|
|
150
|
-
TUI.
|
|
151
|
-
console.log(chalk.gray(` 💭 ${chalk.italic(config.name)}: `) + chalk.italic.dim(cleaned));
|
|
150
|
+
TUI.drawThinkingBox(config.name, cleaned);
|
|
152
151
|
}
|
|
153
152
|
|
|
154
153
|
/**
|
package/src/utils/patcher.ts
CHANGED
|
@@ -175,57 +175,47 @@ export class Patcher {
|
|
|
175
175
|
const replaceLines = block.replace.split('\n');
|
|
176
176
|
|
|
177
177
|
const isNewFile = !block.search;
|
|
178
|
-
const isLarge = replaceLines.length >
|
|
178
|
+
const isLarge = replaceLines.length > 12;
|
|
179
179
|
const shouldTruncate = isLarge && !full;
|
|
180
180
|
|
|
181
|
-
const displaySearch = shouldTruncate ? searchLines.slice(0,
|
|
182
|
-
const displayReplace = shouldTruncate ? replaceLines.slice(0,
|
|
181
|
+
const displaySearch = shouldTruncate ? searchLines.slice(0, 8) : searchLines;
|
|
182
|
+
const displayReplace = shouldTruncate ? replaceLines.slice(0, 8) : replaceLines;
|
|
183
183
|
|
|
184
|
-
|
|
184
|
+
const redGlow = chalk.hex('#ef4444');
|
|
185
|
+
const greenGlow = chalk.hex('#22c55e');
|
|
186
|
+
const border = chalk.hex('#334155');
|
|
185
187
|
|
|
186
|
-
|
|
187
|
-
const type = isNewFile ? '🆕 NEW FILE' : '
|
|
188
|
+
console.log('\n' + border(` ┌${'─'.repeat(width - 4)}┐`));
|
|
189
|
+
const type = isNewFile ? '🆕 NEW FILE' : '🔧 PATCH';
|
|
188
190
|
const title = ` ${type}: ${block.filePath} `;
|
|
189
|
-
|
|
191
|
+
console.log(border(' │ ') + chalk.bgHex('#1e293b').cyan.bold(title).padEnd(width - 6) + border(' │'));
|
|
192
|
+
console.log(border(' ├' + '╌'.repeat(width - 4) + '┤'));
|
|
190
193
|
|
|
191
|
-
console.log(chalk.gray('┏' + '━'.repeat(width - 2) + '┓'));
|
|
192
|
-
console.log(chalk.gray('┃ ') + trafficLights + ' ' + chalk.cyan.bold(title).padEnd(width - 10) + chalk.gray(' ┃'));
|
|
193
|
-
console.log(chalk.gray('┣' + '━'.repeat(width - 2) + '┫'));
|
|
194
|
-
|
|
195
|
-
// 2. Search Block (Deletions) - Only for patches
|
|
196
194
|
if (!isNewFile) {
|
|
197
195
|
displaySearch.forEach((line) => {
|
|
198
|
-
const
|
|
199
|
-
|
|
200
|
-
console.log(prefix + content.padEnd(width - 8) + chalk.gray(' ┃'));
|
|
196
|
+
const displayLine = line.length > width - 12 ? line.substring(0, width - 15) + '...' : line;
|
|
197
|
+
console.log(redGlow(' │ ') + chalk.bgRed.white(' - ') + ' ' + redGlow(displayLine.padEnd(width - 10)) + redGlow(' │'));
|
|
201
198
|
});
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
console.log(chalk.red('┃ ') + chalk.gray(` ... (${searchLines.length - 5} more lines hidden)`).padEnd(width - 5) + chalk.gray(' ┃'));
|
|
199
|
+
if (shouldTruncate && searchLines.length > 8) {
|
|
200
|
+
console.log(redGlow(' │ ') + chalk.dim(` ... ${searchLines.length - 8} more lines removed ...`).padEnd(width - 6) + redGlow(' │'));
|
|
205
201
|
}
|
|
206
|
-
|
|
207
|
-
// Separator between search and replace
|
|
208
|
-
console.log(chalk.gray('┣' + '╍'.repeat(width - 2) + '┫'));
|
|
202
|
+
console.log(border(' ├' + '─'.repeat(width - 4) + '┤'));
|
|
209
203
|
}
|
|
210
204
|
|
|
211
|
-
// 3. Replace Block (Additions)
|
|
212
205
|
displayReplace.forEach((line) => {
|
|
213
|
-
const
|
|
214
|
-
|
|
215
|
-
console.log(prefix + content.padEnd(width - 8) + chalk.gray(' ┃'));
|
|
206
|
+
const displayLine = line.length > width - 12 ? line.substring(0, width - 15) + '...' : line;
|
|
207
|
+
console.log(greenGlow(' │ ') + chalk.bgGreen.black(' + ') + ' ' + greenGlow(displayLine.padEnd(width - 10)) + greenGlow(' │'));
|
|
216
208
|
});
|
|
217
209
|
|
|
218
|
-
if (shouldTruncate && replaceLines.length >
|
|
219
|
-
console.log(
|
|
210
|
+
if (shouldTruncate && replaceLines.length > 8) {
|
|
211
|
+
console.log(greenGlow(' │ ') + chalk.dim(` ... ${replaceLines.length - 8} more lines added ...`).padEnd(width - 6) + greenGlow(' │'));
|
|
220
212
|
}
|
|
221
213
|
|
|
222
|
-
|
|
223
|
-
console.log(chalk.gray('┗' + '━'.repeat(width - 2) + '┛'));
|
|
224
|
-
|
|
214
|
+
console.log(border(` └${'─'.repeat(width - 4)}┘`));
|
|
225
215
|
if (shouldTruncate) {
|
|
226
|
-
console.log(chalk.
|
|
216
|
+
console.log(chalk.gray(' (Minimized view. Use full response or "v" to see all changes.)'));
|
|
227
217
|
}
|
|
228
|
-
|
|
218
|
+
console.log();
|
|
229
219
|
|
|
230
220
|
return shouldTruncate;
|
|
231
221
|
}
|