erosolar-cli 1.7.412 → 1.7.413
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/core/contextManager.d.ts +4 -2
- package/dist/core/contextManager.d.ts.map +1 -1
- package/dist/core/contextManager.js +15 -28
- package/dist/core/contextManager.js.map +1 -1
- package/dist/runtime/agentSession.d.ts.map +1 -1
- package/dist/runtime/agentSession.js +5 -6
- package/dist/runtime/agentSession.js.map +1 -1
- package/dist/shell/interactiveShell.d.ts +13 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +246 -71
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/ui/streamingFormatter.d.ts +4 -1
- package/dist/ui/streamingFormatter.d.ts.map +1 -1
- package/dist/ui/streamingFormatter.js +30 -9
- package/dist/ui/streamingFormatter.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,10 +8,13 @@ export declare class StreamingResponseFormatter {
|
|
|
8
8
|
private readonly indentPrefix;
|
|
9
9
|
private lineOpen;
|
|
10
10
|
private startNewEvent;
|
|
11
|
-
private
|
|
11
|
+
private inCodeBlock;
|
|
12
|
+
private backtickStreak;
|
|
12
13
|
constructor(columns?: number);
|
|
13
14
|
header(): string;
|
|
14
15
|
formatChunk(chunk: string): string;
|
|
15
16
|
finish(note?: string): string;
|
|
17
|
+
private shouldUseBulletPrefix;
|
|
18
|
+
private updateCodeFenceState;
|
|
16
19
|
}
|
|
17
20
|
//# sourceMappingURL=streamingFormatter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamingFormatter.d.ts","sourceRoot":"","sources":["../../src/ui/streamingFormatter.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"streamingFormatter.d.ts","sourceRoot":"","sources":["../../src/ui/streamingFormatter.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAK;gBAEf,OAAO,CAAC,EAAE,MAAM;IAQ5B,MAAM,IAAI,MAAM;IAShB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IA6BlC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAyB7B,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,oBAAoB;CAY7B"}
|
|
@@ -9,7 +9,8 @@ export class StreamingResponseFormatter {
|
|
|
9
9
|
indentPrefix;
|
|
10
10
|
lineOpen = false;
|
|
11
11
|
startNewEvent = true;
|
|
12
|
-
|
|
12
|
+
inCodeBlock = false;
|
|
13
|
+
backtickStreak = 0;
|
|
13
14
|
constructor(columns) {
|
|
14
15
|
// Columns are kept for compatibility with previous versions; currently unused
|
|
15
16
|
clamp(columns ?? 80, 48, 110);
|
|
@@ -20,7 +21,8 @@ export class StreamingResponseFormatter {
|
|
|
20
21
|
header() {
|
|
21
22
|
this.lineOpen = false;
|
|
22
23
|
this.startNewEvent = true;
|
|
23
|
-
this.
|
|
24
|
+
this.inCodeBlock = false;
|
|
25
|
+
this.backtickStreak = 0;
|
|
24
26
|
// Add a single blank line before the streaming content for spacing
|
|
25
27
|
return '\n';
|
|
26
28
|
}
|
|
@@ -32,20 +34,17 @@ export class StreamingResponseFormatter {
|
|
|
32
34
|
let result = '';
|
|
33
35
|
for (const char of normalized) {
|
|
34
36
|
if (!this.lineOpen) {
|
|
35
|
-
const prefix = this.
|
|
37
|
+
const prefix = this.shouldUseBulletPrefix() ? this.bulletPrefix : this.indentPrefix;
|
|
36
38
|
result += prefix;
|
|
37
39
|
this.lineOpen = true;
|
|
38
40
|
this.startNewEvent = false;
|
|
39
41
|
}
|
|
40
42
|
result += char;
|
|
43
|
+
this.updateCodeFenceState(char);
|
|
41
44
|
if (char === '\n') {
|
|
42
|
-
//
|
|
43
|
-
this.startNewEvent =
|
|
45
|
+
// Treat every new line as a new event so each thought gets its own bullet
|
|
46
|
+
this.startNewEvent = true;
|
|
44
47
|
this.lineOpen = false;
|
|
45
|
-
this.lastCharWasNewline = true;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
this.lastCharWasNewline = false;
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
50
|
return result;
|
|
@@ -62,8 +61,30 @@ export class StreamingResponseFormatter {
|
|
|
62
61
|
}
|
|
63
62
|
// Always end with a trailing newline for consistent spacing
|
|
64
63
|
lines.push('');
|
|
64
|
+
// Reset state so the next streamed block starts cleanly
|
|
65
|
+
this.lineOpen = false;
|
|
66
|
+
this.startNewEvent = true;
|
|
67
|
+
this.inCodeBlock = false;
|
|
68
|
+
this.backtickStreak = 0;
|
|
65
69
|
return `${lines.join('\n')}\n`;
|
|
66
70
|
}
|
|
71
|
+
shouldUseBulletPrefix() {
|
|
72
|
+
if (this.inCodeBlock) {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
return this.startNewEvent;
|
|
76
|
+
}
|
|
77
|
+
updateCodeFenceState(char) {
|
|
78
|
+
if (char === '`') {
|
|
79
|
+
this.backtickStreak += 1;
|
|
80
|
+
if (this.backtickStreak === 3) {
|
|
81
|
+
this.inCodeBlock = !this.inCodeBlock;
|
|
82
|
+
this.backtickStreak = 0;
|
|
83
|
+
}
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
this.backtickStreak = 0;
|
|
87
|
+
}
|
|
67
88
|
}
|
|
68
89
|
function clamp(value, min, max) {
|
|
69
90
|
return Math.max(min, Math.min(max, value));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamingFormatter.js","sourceRoot":"","sources":["../../src/ui/streamingFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;GAIG;AACH,MAAM,OAAO,0BAA0B;IACpB,YAAY,CAAS;IACrB,YAAY,CAAS;IAC9B,QAAQ,GAAG,KAAK,CAAC;IACjB,aAAa,GAAG,IAAI,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"streamingFormatter.js","sourceRoot":"","sources":["../../src/ui/streamingFormatter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "erosolar-cli",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.413",
|
|
4
4
|
"description": "Unified AI agent framework for the command line - Multi-provider support with schema-driven tools, code intelligence, and transparent reasoning",
|
|
5
5
|
"main": "dist/bin/erosolar.js",
|
|
6
6
|
"type": "module",
|