centaurus-cli 2.8.1 → 2.8.2
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/tools/reproduce_issue.d.ts +2 -0
- package/dist/tools/reproduce_issue.d.ts.map +1 -0
- package/dist/tools/reproduce_issue.js +166 -0
- package/dist/tools/reproduce_issue.js.map +1 -0
- package/dist/tools/validation.d.ts.map +1 -1
- package/dist/tools/validation.js +4 -3
- package/dist/tools/validation.js.map +1 -1
- package/dist/ui/components/App.d.ts +1 -1
- package/dist/ui/components/App.d.ts.map +1 -1
- package/dist/ui/components/App.js +23 -10
- package/dist/ui/components/App.js.map +1 -1
- package/dist/ui/components/DiffViewer.d.ts.map +1 -1
- package/dist/ui/components/DiffViewer.js +69 -58
- package/dist/ui/components/DiffViewer.js.map +1 -1
- package/dist/ui/components/FileTagAutocomplete.d.ts +11 -0
- package/dist/ui/components/FileTagAutocomplete.d.ts.map +1 -0
- package/dist/ui/components/FileTagAutocomplete.js +27 -0
- package/dist/ui/components/FileTagAutocomplete.js.map +1 -0
- package/dist/ui/components/InputBox.d.ts.map +1 -1
- package/dist/ui/components/InputBox.js +185 -2
- package/dist/ui/components/InputBox.js.map +1 -1
- package/dist/ui/components/InteractiveShell.d.ts.map +1 -1
- package/dist/ui/components/InteractiveShell.js +177 -13
- package/dist/ui/components/InteractiveShell.js.map +1 -1
- package/dist/ui/components/ToolExecutionMessage.d.ts.map +1 -1
- package/dist/ui/components/ToolExecutionMessage.js +44 -14
- package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputBox.js","sourceRoot":"","sources":["../../../src/ui/components/InputBox.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputBox.js","sourceRoot":"","sources":["../../../src/ui/components/InputBox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractiveShell.d.ts","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"InteractiveShell.d.ts","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAM3D,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACjD;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkU3D,CAAC"}
|
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
import React, { useEffect } from 'react';
|
|
1
|
+
import React, { useEffect, useState, useRef } from 'react';
|
|
2
2
|
import { Box, Text, useInput } from 'ink';
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
4
|
import stripAnsi from 'strip-ansi';
|
|
5
5
|
import { encodeKeyToAnsi } from '../../utils/ansi-encoder.js';
|
|
6
6
|
export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, exitCode, error, onInput, isFocused, onFocusChange, onSignal, onResize }) => {
|
|
7
|
-
|
|
7
|
+
// Scroll offset for viewing previous output (0 = at bottom/following latest)
|
|
8
|
+
const [scrollOffset, setScrollOffset] = useState(0);
|
|
9
|
+
// Track if user has manually scrolled (to disable auto-follow)
|
|
10
|
+
const isAutoFollowRef = useRef(true);
|
|
11
|
+
// Track total lines for scroll calculations
|
|
12
|
+
const totalLinesRef = useRef(0);
|
|
13
|
+
// Calculate visible lines based on focus mode
|
|
14
|
+
// In focus mode, use as much of the terminal as possible
|
|
15
|
+
// Account for: header (2 lines), focus indicator (3 lines), borders (2 lines), extra margin to prevent re-render issues (5 lines)
|
|
16
|
+
const terminalRows = process.stdout.rows || 24;
|
|
17
|
+
const uiChrome = 10; // Header, focus indicator, borders, padding, extra margin
|
|
18
|
+
const maxVisibleLines = isFocused ? Math.max(terminalRows - uiChrome, 8) : 8;
|
|
8
19
|
// Handle terminal resize events
|
|
9
20
|
useEffect(() => {
|
|
10
21
|
if (!onResize || !isRunning)
|
|
@@ -20,26 +31,171 @@ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, e
|
|
|
20
31
|
process.stdout.off('resize', handleResize);
|
|
21
32
|
};
|
|
22
33
|
}, [onResize, isRunning]);
|
|
23
|
-
//
|
|
24
|
-
|
|
34
|
+
// Process terminal output to handle carriage returns and ANSI sequences properly
|
|
35
|
+
// \r (carriage return) means "go back to the start of the line" - used for spinners/progress bars
|
|
36
|
+
// ANSI cursor sequences are stripped to prevent breaking the shell box layout
|
|
37
|
+
const processTerminalOutput = (raw) => {
|
|
38
|
+
if (!raw)
|
|
39
|
+
return '';
|
|
40
|
+
// First, strip ANSI cursor movement sequences that could break the box layout
|
|
41
|
+
// These include: cursor up/down/left/right, cursor position set, cursor save/restore, erase line/screen
|
|
42
|
+
// We keep color codes (handled by stripAnsi later) but remove cursor manipulation
|
|
43
|
+
let cleaned = raw
|
|
44
|
+
// OSC sequences (Operating System Commands): \x1b]...\x07 or \x1b]...\x1b\\
|
|
45
|
+
// This includes hyperlinks (\x1b]8;;url\x1b\\text\x1b]8;;\x1b\\), title changes, etc.
|
|
46
|
+
.replace(/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g, '')
|
|
47
|
+
// Also handle malformed/partial OSC sequences that may end with common terminators
|
|
48
|
+
.replace(/\x1b\][^\x07]*\x07/g, '')
|
|
49
|
+
// Cursor movement: \x1b[nA (up), \x1b[nB (down), \x1b[nC (right), \x1b[nD (left)
|
|
50
|
+
.replace(/\x1b\[\d*[ABCD]/g, '')
|
|
51
|
+
// Cursor position: \x1b[n;mH or \x1b[n;mf
|
|
52
|
+
.replace(/\x1b\[\d*;\d*[Hf]/g, '')
|
|
53
|
+
.replace(/\x1b\[\d*[Hf]/g, '')
|
|
54
|
+
// Cursor save/restore: \x1b[s, \x1b[u, \x1b7, \x1b8
|
|
55
|
+
.replace(/\x1b\[[su]/g, '')
|
|
56
|
+
.replace(/\x1b[78]/g, '')
|
|
57
|
+
// Erase in line: \x1b[K, \x1b[0K, \x1b[1K, \x1b[2K
|
|
58
|
+
.replace(/\x1b\[\d*K/g, '')
|
|
59
|
+
// Erase in display: \x1b[J, \x1b[0J, \x1b[1J, \x1b[2J, \x1b[3J
|
|
60
|
+
.replace(/\x1b\[\d*J/g, '')
|
|
61
|
+
// Scroll up/down: \x1b[nS, \x1b[nT
|
|
62
|
+
.replace(/\x1b\[\d*[ST]/g, '')
|
|
63
|
+
// Hide/show cursor: \x1b[?25h, \x1b[?25l
|
|
64
|
+
.replace(/\x1b\[\?\d+[hl]/g, '')
|
|
65
|
+
// VT sequences for special modes: \x1b[?...h, \x1b[?...l (like alternate screen)
|
|
66
|
+
.replace(/\x1b\[\?\d+[a-zA-Z]/g, '')
|
|
67
|
+
// Strip any remaining escape sequences ending with letters that might leak through
|
|
68
|
+
.replace(/\x1b\[\d*[a-zA-Z]/g, '');
|
|
69
|
+
// Split by newlines first, then process each "line segment" for carriage returns
|
|
70
|
+
const segments = cleaned.split('\n');
|
|
71
|
+
const processedLines = [];
|
|
72
|
+
for (const segment of segments) {
|
|
73
|
+
// Split by \r and take the last non-empty part (simulates cursor returning to start)
|
|
74
|
+
const parts = segment.split('\r');
|
|
75
|
+
let finalLine = '';
|
|
76
|
+
for (const part of parts) {
|
|
77
|
+
if (part.length === 0)
|
|
78
|
+
continue;
|
|
79
|
+
// If the new part is shorter than current line, it overwrites from the start
|
|
80
|
+
// If longer or equal, it replaces the line
|
|
81
|
+
if (part.length >= finalLine.length) {
|
|
82
|
+
finalLine = part;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
// Overwrite from the beginning, keep the rest
|
|
86
|
+
finalLine = part + finalLine.slice(part.length);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
processedLines.push(finalLine);
|
|
90
|
+
}
|
|
91
|
+
return processedLines.join('\n');
|
|
92
|
+
};
|
|
93
|
+
// Get processed output and calculate total lines
|
|
94
|
+
const getProcessedOutput = () => {
|
|
25
95
|
if (!output)
|
|
96
|
+
return { lines: [], total: 0 };
|
|
97
|
+
const processedOutput = processTerminalOutput(output);
|
|
98
|
+
const lines = processedOutput.split('\n');
|
|
99
|
+
return { lines, total: lines.length };
|
|
100
|
+
};
|
|
101
|
+
// Get visible lines based on scroll offset
|
|
102
|
+
const getVisibleOutput = () => {
|
|
103
|
+
const { lines, total } = getProcessedOutput();
|
|
104
|
+
totalLinesRef.current = total;
|
|
105
|
+
if (total === 0)
|
|
26
106
|
return '';
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return safeOutput;
|
|
107
|
+
if (total <= maxVisibleLines) {
|
|
108
|
+
// All lines fit, no scrolling needed
|
|
109
|
+
return lines.join('\n');
|
|
31
110
|
}
|
|
32
|
-
|
|
111
|
+
// Calculate the window to show
|
|
112
|
+
// scrollOffset 0 = at the bottom (latest output)
|
|
113
|
+
// scrollOffset > 0 = scrolled up by that many lines
|
|
114
|
+
const maxOffset = Math.max(0, total - maxVisibleLines);
|
|
115
|
+
const clampedOffset = Math.min(scrollOffset, maxOffset);
|
|
116
|
+
const startLine = maxOffset - clampedOffset;
|
|
117
|
+
const endLine = startLine + maxVisibleLines;
|
|
118
|
+
return lines.slice(startLine, endLine).join('\n');
|
|
33
119
|
};
|
|
120
|
+
// Reset scroll offset when exiting focus mode
|
|
121
|
+
useEffect(() => {
|
|
122
|
+
if (!isFocused) {
|
|
123
|
+
setScrollOffset(0);
|
|
124
|
+
isAutoFollowRef.current = true;
|
|
125
|
+
}
|
|
126
|
+
}, [isFocused]);
|
|
127
|
+
// Track previous total lines to adjust scroll offset when new output arrives
|
|
128
|
+
const prevTotalLinesRef = useRef(0);
|
|
129
|
+
// When new output comes in and user is scrolled up, adjust offset to maintain position
|
|
130
|
+
useEffect(() => {
|
|
131
|
+
const { total } = getProcessedOutput();
|
|
132
|
+
const prevTotal = prevTotalLinesRef.current;
|
|
133
|
+
if (prevTotal > 0 && total > prevTotal && !isAutoFollowRef.current && scrollOffset > 0) {
|
|
134
|
+
// New lines were added while user is scrolled up
|
|
135
|
+
// Increase scroll offset by the number of new lines to stay at the same position
|
|
136
|
+
const newLines = total - prevTotal;
|
|
137
|
+
const maxOffset = Math.max(0, total - maxVisibleLines);
|
|
138
|
+
setScrollOffset(prev => Math.min(prev + newLines, maxOffset));
|
|
139
|
+
}
|
|
140
|
+
prevTotalLinesRef.current = total;
|
|
141
|
+
}, [output, maxVisibleLines]);
|
|
34
142
|
// Handle input - PTY mode sends everything immediately
|
|
35
143
|
useInput((input, key) => {
|
|
36
|
-
if (!isFocused
|
|
144
|
+
if (!isFocused)
|
|
37
145
|
return;
|
|
38
146
|
// Global: Ctrl+F to exit focus mode
|
|
39
147
|
if (key.ctrl && input === 'f') {
|
|
40
148
|
onFocusChange(false);
|
|
41
149
|
return;
|
|
42
150
|
}
|
|
151
|
+
// Scroll controls (only in focus mode, don't send to PTY)
|
|
152
|
+
// Shift+Up: Scroll up one line
|
|
153
|
+
if (key.shift && key.upArrow) {
|
|
154
|
+
const maxOffset = Math.max(0, totalLinesRef.current - maxVisibleLines);
|
|
155
|
+
if (scrollOffset < maxOffset) {
|
|
156
|
+
isAutoFollowRef.current = false;
|
|
157
|
+
setScrollOffset(prev => Math.min(prev + 1, maxOffset));
|
|
158
|
+
}
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
// Shift+Down: Scroll down one line
|
|
162
|
+
if (key.shift && key.downArrow) {
|
|
163
|
+
if (scrollOffset > 0) {
|
|
164
|
+
setScrollOffset(prev => {
|
|
165
|
+
const newOffset = Math.max(prev - 1, 0);
|
|
166
|
+
if (newOffset === 0) {
|
|
167
|
+
isAutoFollowRef.current = true;
|
|
168
|
+
}
|
|
169
|
+
return newOffset;
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
// Page Up: Scroll up one page
|
|
175
|
+
if (key.pageUp) {
|
|
176
|
+
const maxOffset = Math.max(0, totalLinesRef.current - maxVisibleLines);
|
|
177
|
+
if (scrollOffset < maxOffset) {
|
|
178
|
+
isAutoFollowRef.current = false;
|
|
179
|
+
setScrollOffset(prev => Math.min(prev + maxVisibleLines, maxOffset));
|
|
180
|
+
}
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
// Page Down: Scroll down one page
|
|
184
|
+
if (key.pageDown) {
|
|
185
|
+
if (scrollOffset > 0) {
|
|
186
|
+
setScrollOffset(prev => {
|
|
187
|
+
const newOffset = Math.max(prev - maxVisibleLines, 0);
|
|
188
|
+
if (newOffset === 0) {
|
|
189
|
+
isAutoFollowRef.current = true;
|
|
190
|
+
}
|
|
191
|
+
return newOffset;
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
// Below this point, we need onInput to send to PTY
|
|
197
|
+
if (!onInput)
|
|
198
|
+
return;
|
|
43
199
|
// Ctrl+C - send to PTY AND signal backend for forceful termination
|
|
44
200
|
if (key.ctrl && input === 'c') {
|
|
45
201
|
onInput('\x03');
|
|
@@ -98,9 +254,17 @@ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, e
|
|
|
98
254
|
"]")),
|
|
99
255
|
cleanOutput && (React.createElement(Box, null,
|
|
100
256
|
React.createElement(Text, { wrap: "wrap" }, cleanOutput))),
|
|
101
|
-
isFocused && isRunning && (React.createElement(Box, { marginTop: 1 },
|
|
102
|
-
React.createElement(
|
|
103
|
-
|
|
257
|
+
isFocused && isRunning && (React.createElement(Box, { marginTop: 1, flexDirection: "column" },
|
|
258
|
+
React.createElement(Box, null,
|
|
259
|
+
React.createElement(Text, { color: "#ffaa00", bold: true }, "[ FOCUS MODE ] "),
|
|
260
|
+
React.createElement(Text, { color: "#666666" }, "Ctrl+F to exit | Shift+\u2191\u2193 scroll | PgUp/PgDn page")),
|
|
261
|
+
scrollOffset > 0 && (React.createElement(Box, null,
|
|
262
|
+
React.createElement(Text, { color: "#666666", dimColor: true },
|
|
263
|
+
"\u2191 Scrolled ",
|
|
264
|
+
scrollOffset,
|
|
265
|
+
" line",
|
|
266
|
+
scrollOffset > 1 ? 's' : '',
|
|
267
|
+
" from bottom (viewing history)"))))),
|
|
104
268
|
error && !isRunning && (React.createElement(Box, { marginTop: 1 },
|
|
105
269
|
React.createElement(Text, { color: "#ff3366", wrap: "wrap" }, error.replace(/\r/g, ''))))),
|
|
106
270
|
isRunning && !isFocused && (React.createElement(Box, { marginLeft: 1 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractiveShell.js","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"InteractiveShell.js","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolExecutionMessage.d.ts","sourceRoot":"","sources":["../../../src/ui/components/ToolExecutionMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"ToolExecutionMessage.d.ts","sourceRoot":"","sources":["../../../src/ui/components/ToolExecutionMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;CAClB;AAyKD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAganE,CAAC"}
|
|
@@ -15,6 +15,36 @@ const TOOL_LABELS = {
|
|
|
15
15
|
fetch_url: { verb: 'Fetching URL', emoji: '📡' },
|
|
16
16
|
inspect_symbol: { verb: 'Inspecting symbol', emoji: '🔬' },
|
|
17
17
|
};
|
|
18
|
+
/**
|
|
19
|
+
* Process terminal output to strip ANSI escape sequences that stripAnsi misses
|
|
20
|
+
* This includes OSC sequences (hyperlinks, title changes) that cause 'X' characters
|
|
21
|
+
*/
|
|
22
|
+
function processTerminalOutput(raw) {
|
|
23
|
+
if (!raw)
|
|
24
|
+
return '';
|
|
25
|
+
return raw
|
|
26
|
+
// OSC sequences (Operating System Commands): \x1b]...\x07 or \x1b]...\x1b\\
|
|
27
|
+
// This includes hyperlinks (\x1b]8;;url\x1b\\text\x1b]8;;\x1b\\), title changes, etc.
|
|
28
|
+
.replace(/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g, '')
|
|
29
|
+
// Also handle malformed/partial OSC sequences that may end with common terminators
|
|
30
|
+
.replace(/\x1b\][^\x07]*\x07/g, '')
|
|
31
|
+
// Cursor movement and other CSI sequences
|
|
32
|
+
.replace(/\x1b\[\d*[ABCDHfJKSTsu]/g, '')
|
|
33
|
+
.replace(/\x1b\[\d*;\d*[Hf]/g, '')
|
|
34
|
+
.replace(/\x1b\[\?\d+[a-zA-Z]/g, '')
|
|
35
|
+
// Catch any remaining escape sequences
|
|
36
|
+
.replace(/\x1b\[\d*[a-zA-Z]/g, '')
|
|
37
|
+
// Strip remaining with stripAnsi and remove carriage returns
|
|
38
|
+
.replace(/\r/g, '');
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Clean shell output for display in history
|
|
42
|
+
*/
|
|
43
|
+
function cleanShellOutput(result) {
|
|
44
|
+
if (!result)
|
|
45
|
+
return '';
|
|
46
|
+
return stripAnsi(processTerminalOutput(result));
|
|
47
|
+
}
|
|
18
48
|
/**
|
|
19
49
|
* Parse grep_search result to get match count
|
|
20
50
|
* Format: "Found X matches in Y files" or line-by-line matches
|
|
@@ -260,7 +290,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
260
290
|
if (toolName === 'execute_command' && toolArgs) {
|
|
261
291
|
const command = toolArgs.command || toolArgs.CommandLine || toolArgs.commandLine || '';
|
|
262
292
|
const { cwd } = toolArgs;
|
|
263
|
-
const cleanResult =
|
|
293
|
+
const cleanResult = cleanShellOutput(result);
|
|
264
294
|
return (React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#ff3366", paddingX: 1, marginBottom: 1, width: "100%", flexGrow: 0, flexShrink: 1, minWidth: 0 },
|
|
265
295
|
React.createElement(Box, { marginBottom: 1 },
|
|
266
296
|
React.createElement(Text, null,
|
|
@@ -275,7 +305,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
275
305
|
cleanResult && (React.createElement(Box, { width: "100%", flexShrink: 1, minWidth: 0 },
|
|
276
306
|
React.createElement(Text, { wrap: "wrap" }, cleanResult)))));
|
|
277
307
|
}
|
|
278
|
-
return (React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#ff3366", paddingX: 1, marginBottom: 1,
|
|
308
|
+
return (React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#ff3366", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
279
309
|
React.createElement(Box, null,
|
|
280
310
|
React.createElement(Text, { color: "#ff3366", bold: true },
|
|
281
311
|
"\u2717 ",
|
|
@@ -309,7 +339,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
309
339
|
if (toolName === 'execute_command' && toolArgs) {
|
|
310
340
|
const command = toolArgs.command || toolArgs.CommandLine || toolArgs.commandLine || '';
|
|
311
341
|
const { cwd } = toolArgs;
|
|
312
|
-
const cleanResult =
|
|
342
|
+
const cleanResult = cleanShellOutput(result);
|
|
313
343
|
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00cc66", paddingX: 1, marginBottom: 1, width: "100%", flexGrow: 0, flexShrink: 1, minWidth: 0 },
|
|
314
344
|
React.createElement(Box, { marginBottom: 1 },
|
|
315
345
|
React.createElement(Text, null,
|
|
@@ -330,7 +360,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
330
360
|
const lineInfo = StartLine && EndLine
|
|
331
361
|
? `lines ${StartLine}-${EndLine}`
|
|
332
362
|
: 'entire file';
|
|
333
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
363
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
334
364
|
React.createElement(Box, null,
|
|
335
365
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
336
366
|
"\u2713 ",
|
|
@@ -344,7 +374,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
344
374
|
if (toolName === 'write_to_file' && toolArgs) {
|
|
345
375
|
const { TargetFile, CodeContent } = toolArgs;
|
|
346
376
|
const lines = CodeContent ? CodeContent.split('\n').length : 0;
|
|
347
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
377
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
348
378
|
React.createElement(Box, null,
|
|
349
379
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
350
380
|
"\u2713 ",
|
|
@@ -359,7 +389,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
359
389
|
// EDIT_FILE
|
|
360
390
|
if (toolName === 'edit_file' && toolArgs) {
|
|
361
391
|
const { file_path } = toolArgs;
|
|
362
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
392
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
363
393
|
React.createElement(Box, null,
|
|
364
394
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
365
395
|
"\u2713 ",
|
|
@@ -371,7 +401,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
371
401
|
if (toolName === 'multi_edit_file' && toolArgs) {
|
|
372
402
|
const { file_path, edits } = toolArgs;
|
|
373
403
|
const editCount = Array.isArray(edits) ? edits.length : 0;
|
|
374
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
404
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
375
405
|
React.createElement(Box, null,
|
|
376
406
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
377
407
|
"\u2713 ",
|
|
@@ -389,7 +419,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
389
419
|
if (toolName === 'list_dir' && toolArgs) {
|
|
390
420
|
const { DirectoryPath } = toolArgs;
|
|
391
421
|
const itemCount = parseListDirResult(result);
|
|
392
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
422
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
393
423
|
React.createElement(Box, null,
|
|
394
424
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
395
425
|
"\u2713 ",
|
|
@@ -405,7 +435,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
405
435
|
if (toolName === 'grep_search' && toolArgs) {
|
|
406
436
|
const { Query } = toolArgs;
|
|
407
437
|
const searchResults = parseGrepSearchResult(result);
|
|
408
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
438
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
409
439
|
React.createElement(Box, null,
|
|
410
440
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
411
441
|
"\u2713 ",
|
|
@@ -432,7 +462,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
432
462
|
const { pattern, Pattern } = toolArgs;
|
|
433
463
|
const displayPattern = pattern || Pattern || '*';
|
|
434
464
|
const fileCount = parseFindFilesResult(result);
|
|
435
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
465
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
436
466
|
React.createElement(Box, null,
|
|
437
467
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
438
468
|
"\u2713 ",
|
|
@@ -453,7 +483,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
453
483
|
// WEB_SEARCH
|
|
454
484
|
if (toolName === 'web_search' && toolArgs) {
|
|
455
485
|
const { query } = toolArgs;
|
|
456
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
486
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
457
487
|
React.createElement(Box, null,
|
|
458
488
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
459
489
|
"\u2713 ",
|
|
@@ -463,7 +493,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
463
493
|
// FETCH_URL
|
|
464
494
|
if (toolName === 'fetch_url' && toolArgs) {
|
|
465
495
|
const { url } = toolArgs;
|
|
466
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
496
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
467
497
|
React.createElement(Box, null,
|
|
468
498
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
469
499
|
"\u2713 ",
|
|
@@ -477,7 +507,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
477
507
|
const symbolResult = parseInspectSymbolResult(result);
|
|
478
508
|
const displayPath = filePath || 'unknown';
|
|
479
509
|
const noSymbols = result?.includes('No symbols found');
|
|
480
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
510
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
481
511
|
React.createElement(Box, null,
|
|
482
512
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
483
513
|
"\u2713 ",
|
|
@@ -493,7 +523,7 @@ export const ToolExecutionMessage = React.memo(({ message }) => {
|
|
|
493
523
|
")"))));
|
|
494
524
|
}
|
|
495
525
|
// DEFAULT - for any other tool
|
|
496
|
-
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1,
|
|
526
|
+
return renderWithThinking(React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00ccff", paddingX: 1, marginBottom: 1, flexGrow: 0, alignSelf: "flex-start" },
|
|
497
527
|
React.createElement(Box, null,
|
|
498
528
|
React.createElement(Text, { color: "#00cc66", bold: true },
|
|
499
529
|
"\u2713 ",
|