@bluehawks/cli 1.0.43 → 1.0.45
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/cli/app.d.ts.map +1 -1
- package/dist/cli/app.js +40 -2
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/components/ChatArea.d.ts.map +1 -1
- package/dist/cli/components/ChatArea.js +37 -3
- package/dist/cli/components/ChatArea.js.map +1 -1
- package/dist/cli/components/Header.js +5 -5
- package/dist/config/constants.d.ts +1 -1
- package/dist/config/constants.js +1 -1
- package/package.json +1 -1
- package/src/cli/app.tsx +48 -2
- package/src/cli/components/ChatArea.tsx +49 -7
- package/src/cli/components/Header.tsx +5 -5
- package/src/config/constants.ts +1 -1
package/dist/cli/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA2C,MAAM,OAAO,CAAC;AAchE,UAAU,QAAQ;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAOD,eAAO,MAAM,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA2C,MAAM,OAAO,CAAC;AAchE,UAAU,QAAQ;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAOD,eAAO,MAAM,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAuWlC,CAAC"}
|
package/dist/cli/app.js
CHANGED
|
@@ -195,10 +195,36 @@ export const App = ({ initialPrompt, apiKey, yoloMode = false, onExit }) => {
|
|
|
195
195
|
thinkBuffer = '';
|
|
196
196
|
let output = '';
|
|
197
197
|
let i = 0;
|
|
198
|
-
|
|
198
|
+
// Check if we ended with a partial tag to avoid processing it yet
|
|
199
|
+
// Only do this if we are NOT in a block (checking for start)
|
|
200
|
+
// or IF we ARE in a block (checking for end)
|
|
201
|
+
// Simplified: just ensure we don't process a partial tag at the end of string
|
|
202
|
+
const len = fullText.length;
|
|
203
|
+
while (i < len) {
|
|
199
204
|
if (!inThinkBlock) {
|
|
200
205
|
const thinkStart = fullText.indexOf('<think>', i);
|
|
201
206
|
if (thinkStart === -1) {
|
|
207
|
+
// Check for partial match at end: <, <t, <th, etc.
|
|
208
|
+
// Max tag length is 7 (<think>)
|
|
209
|
+
const remaining = fullText.substring(i);
|
|
210
|
+
if (remaining.length < 7 && '<think>'.startsWith(remaining)) {
|
|
211
|
+
thinkBuffer = remaining; // Buffer it
|
|
212
|
+
break;
|
|
213
|
+
}
|
|
214
|
+
// Robust regex approach is hard in streaming.
|
|
215
|
+
// Heuristic: If string ends with '<', '<t', '<th', ... buffer those chars.
|
|
216
|
+
const suffixCheck = fullText.substring(Math.max(i, len - 6));
|
|
217
|
+
let matchLen = 0;
|
|
218
|
+
for (let k = 1; k < 7; k++) { // <think> is 7 chars
|
|
219
|
+
if (suffixCheck.endsWith('<think>'.substring(0, k))) {
|
|
220
|
+
matchLen = k;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
if (matchLen > 0) {
|
|
224
|
+
output += fullText.substring(i, len - matchLen);
|
|
225
|
+
thinkBuffer = fullText.substring(len - matchLen);
|
|
226
|
+
break;
|
|
227
|
+
}
|
|
202
228
|
output += fullText.substring(i);
|
|
203
229
|
break;
|
|
204
230
|
}
|
|
@@ -211,7 +237,19 @@ export const App = ({ initialPrompt, apiKey, yoloMode = false, onExit }) => {
|
|
|
211
237
|
else {
|
|
212
238
|
const thinkEnd = fullText.indexOf('</think>', i);
|
|
213
239
|
if (thinkEnd === -1) {
|
|
214
|
-
|
|
240
|
+
// Check for partial end tag: <, </, </t, ...
|
|
241
|
+
const suffixCheck = fullText.substring(Math.max(i, len - 7));
|
|
242
|
+
let matchLen = 0;
|
|
243
|
+
for (let k = 1; k < 8; k++) { // </think> is 8 chars
|
|
244
|
+
if (suffixCheck.endsWith('</think>'.substring(0, k))) {
|
|
245
|
+
matchLen = k;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
if (matchLen > 0) {
|
|
249
|
+
thinkBuffer = fullText.substring(len - matchLen);
|
|
250
|
+
break;
|
|
251
|
+
}
|
|
252
|
+
thinkBuffer = ''; // Don't buffer content inside think block, just drop it
|
|
215
253
|
break;
|
|
216
254
|
}
|
|
217
255
|
else {
|
package/dist/cli/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":";AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAuB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD,wBAAwB;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAgBhD,MAAM,CAAC,MAAM,GAAG,GAAuB,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IAC3F,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE1C,aAAa;IACb,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAmB,EAAE,CAAC,CAAC;IAC/D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAI5C,IAAI,CAAC,CAAC;IAChB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEvD,kBAAkB;IAClB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAElD,qBAAqB;IACrB,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,OAAe,EAAE,OAA4B,MAAM,EAAE,EAAE;QACvF,MAAM,KAAK,GAAgB;YACvB,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC3C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO;YACP,IAAI;SACP,CAAC;QACF,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,QAAgB,EAAE,MAA8B,EAAE,EAAE;QACrF,MAAM,QAAQ,GAAiB;YAC3B,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC3C,QAAQ;YACR,MAAM;YACN,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACxB,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,eAAe;IAC3E,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,sBAAsB;IACtB,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QACjC,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC;YAC9B,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa;SACnD,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QACjC,gBAAgB,EAAE,CAAC;QACnB,OAAO,IAAI,YAAY,CAAC;YACpB,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;YAC1B,SAAS;YACT,YAAY;SACf,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,cAAc,CAAC,GAAG,QAAQ,CAC7B,GAAG,EAAE,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,YAAY,CAAC,CAClE,CAAC;IAEF,kCAAkC;IAClC,SAAS,CAAC,GAAG,EAAE;QACX,cAAc,CAAC,8CAA8C,EAAE,SAAS,CAAC,CAAC;QAE1E,8BAA8B;QAC9B,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;YACrD,IAAI,UAAU,EAAE,CAAC;gBACb,cAAc,CAAC,wBAAwB,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC9D,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,cAAc,CAAC,4BAA4B,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;YAClE,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;gBACpC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC;gBACD,MAAM,WAAW,GAAsB;oBACnC,SAAS,EAAE,cAAc,CAAC,YAAY,EAAE;oBACxC,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;oBAC1B,KAAK,EAAE,SAAS,CAAC,YAAY;oBAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;iBACrB,CAAC;gBACF,MAAM,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;gBACxD,cAAc,CAAC,oBAAoB,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YAChF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC1B,cAAc,CAAC,eAAe,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;YACpD,CAAC;QACL,CAAC,CAAC;QACF,IAAI,EAAE,CAAC;QAEP,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC;gBACnC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;gBAC7B,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;gBACxC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;gBACvB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;gBACxC,MAAM,WAAW,GAAc;oBAC3B,SAAS,EAAE,cAAc,CAAC,YAAY,EAAE;oBACxC,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;oBAC1B,KAAK,EAAE,SAAS,CAAC,YAAY;oBAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,MAAM,EAAE,WAAW;oBACnB,YAAY,EAAE,KAAK,CAAC,YAAY;iBACnC,CAAC;gBACF,MAAM,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBAChD,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;YAChC,CAAC,CAAC;YACF,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAEhG,mDAAmD;IACnD,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,QAAwB,CAAC;QAC7B,IAAI,YAAY,EAAE,CAAC;YACf,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,mBAAmB;YACxD,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,CAAC,CAAC,CAAC;QACd,CAAC;QACD,OAAO,GAAG,EAAE;YACR,IAAI,QAAQ;gBAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,iBAAiB;IACjB,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,aAAa;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,eAAe;IACf,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,YAAY;YAAE,OAAO;QAErC,WAAW;QACX,IAAI,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,cAAc,CAAC,sBAAsB,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;YACxD,MAAM,OAAO,GAAmB;gBAC5B,cAAc;gBACd,YAAY;gBACZ,YAAY;gBACZ,MAAM,EAAE,GAAG,EAAE;oBACT,IAAI,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC;wBACnC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;wBAC7B,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;wBACxC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC;oBACjD,CAAC;oBACD,IAAI,EAAE,CAAC;gBACX,CAAC;aACJ,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/D,IAAI,MAAM,EAAE,CAAC;gBACT,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC1E,CAAC;YACD,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,OAAO;QACX,CAAC;QAED,cAAc;QACd,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;YACpC,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnB,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC;gBACvB,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjE,cAAc,CAAC,aAAa,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAChG,OAAO,QAAQ,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,OAAO;QACX,CAAC;QAED,YAAY;QACZ,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACrE,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACxB,cAAc,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;QAEpD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE;gBAClD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACf,sBAAsB;oBACtB,MAAM,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;oBACrC,WAAW,GAAG,EAAE,CAAC;oBACjB,IAAI,MAAM,GAAG,EAAE,CAAC;oBAChB,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;wBACzB,IAAI,CAAC,YAAY,EAAE,CAAC;4BAChB,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;4BAClD,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;gCACpB,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCAChC,MAAM;4BACV,CAAC;iCAAM,CAAC;gCACJ,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;gCAC5C,YAAY,GAAG,IAAI,CAAC;gCACpB,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;4BACvB,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACJ,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;4BACjD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gCAClB,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCACpC,MAAM;4BACV,CAAC;iCAAM,CAAC;gCACJ,YAAY,GAAG,KAAK,CAAC;gCACrB,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;4BACrB,CAAC;wBACL,CAAC;oBACL,CAAC;oBACD,IAAI,MAAM;wBAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;gBAC7D,CAAC;gBACD,WAAW,EAAE,CAAC,IAAY,EAAE,IAAU,EAAE,EAAE;oBACtC,cAAc,CAAC,IAAI,CAAC,CAAC;oBACrB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9G,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACjC,cAAc,CAAC,eAAe,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;gBAClD,CAAC;gBACD,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;oBACxB,cAAc,CAAC,IAAI,CAAC,CAAC;oBACrB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9G,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAmC;oBACrE,cAAc,CAAC,kBAAkB,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;gBACxD,CAAC;aACJ,CAAC,CAAC;YAEH,WAAW;YACX,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACtF,IAAI,YAAY,EAAE,CAAC;oBACf,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;gBACnF,CAAC;YACL,CAAC;YAED,yBAAyB;YACzB,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9G,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9D,IAAI,YAAY;gBAAE,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YAE1F,4CAA4C;YAC5C,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC3D,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,wBAAwB;YAClG,CAAC;YAED,cAAc,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QAEpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;YACvF,cAAc,CAAC,UAAU,YAAY,EAAE,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;gBAAS,CAAC;YACP,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,mBAAmB,CAAC,EAAE,CAAC,CAAC;YACxB,cAAc,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IAEL,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAElH,wBAAwB;IACxB,QAAQ,CACJ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACX,IAAI,eAAe,EAAE,CAAC;YAClB,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC5C,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC9B,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACzB,cAAc,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;YACzD,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACnD,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC/B,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACzB,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC,EACD,EAAE,QAAQ,EAAE,eAAe,KAAK,IAAI,EAAE,CACzC,CAAC;IAEF,OAAO,CACH,KAAC,MAAM;IACH,SAAS;;QAAT,SAAS;QACT,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,GAAG;QAER,UAAU;QACV,KAAK,EAAE,SAAS,CAAC,YAAY,EAC7B,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW;QAExB,OAAO;QACP,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,eAAe,EAAE,eAAe,GAClC,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatArea.d.ts","sourceRoot":"","sources":["../../../src/cli/components/ChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,aAAa;IACnB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,eAAe,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,GAAG,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"ChatArea.d.ts","sourceRoot":"","sources":["../../../src/cli/components/ChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,aAAa;IACnB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,eAAe,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,GAAG,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAkJ5C,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { useInput } from 'ink';
|
|
2
4
|
import { Box, Text } from 'ink';
|
|
3
5
|
import Spinner from 'ink-spinner';
|
|
4
6
|
import TextInput from 'ink-text-input';
|
|
@@ -13,7 +15,39 @@ export const ChatArea = ({ messages, streamingContent, currentTool, isProcessing
|
|
|
13
15
|
default: return 'gray';
|
|
14
16
|
}
|
|
15
17
|
};
|
|
16
|
-
|
|
18
|
+
const [scrollOffset, setScrollOffset] = React.useState(0);
|
|
19
|
+
const visibleCount = 15; // Number of messages to show at once
|
|
20
|
+
useInput((input, key) => {
|
|
21
|
+
if (key.pageUp) {
|
|
22
|
+
setScrollOffset(prev => Math.min(prev + 5, Math.max(0, messages.length - visibleCount)));
|
|
23
|
+
}
|
|
24
|
+
else if (key.pageDown) {
|
|
25
|
+
setScrollOffset(prev => Math.max(0, prev - 5));
|
|
26
|
+
}
|
|
27
|
+
else if (key.upArrow && !input) { // Only scroll if no text input (or maybe Alt+Up?)
|
|
28
|
+
// Actually, standard terminals use PageUp/Down for history. Let's stick to PageKeys to avoid conflict with history navigation in Input.
|
|
29
|
+
setScrollOffset(prev => Math.min(prev + 1, Math.max(0, messages.length - visibleCount)));
|
|
30
|
+
}
|
|
31
|
+
else if (key.downArrow && !input) {
|
|
32
|
+
setScrollOffset(prev => Math.max(0, prev - 1));
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
// Calculate window
|
|
36
|
+
// offset 0 = show last N (end of list)
|
|
37
|
+
// offset > 0 = shift window up by N
|
|
38
|
+
// Slice logic:
|
|
39
|
+
// Start: length - visibleCount - offset
|
|
40
|
+
// End: length - offset
|
|
41
|
+
const total = messages.length;
|
|
42
|
+
const effectiveOffset = Math.min(scrollOffset, Math.max(0, total - visibleCount));
|
|
43
|
+
// If we are at default (offset 0), we want the *last* visibleCount messages.
|
|
44
|
+
// slice(-(visibleCount), undefined)
|
|
45
|
+
// If offset is 5, we want slice(-(visibleCount + 5), -5)
|
|
46
|
+
const start = -(visibleCount + effectiveOffset);
|
|
47
|
+
const end = effectiveOffset === 0 ? undefined : -effectiveOffset;
|
|
48
|
+
const visibleMessages = messages.slice(start, end);
|
|
49
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: "cyan", flexGrow: 1, paddingX: 1, overflowY: "hidden", children: [_jsxs(Box, { flexDirection: "column", flexGrow: 1, justifyContent: "flex-end", children: [effectiveOffset > 0 && (_jsx(Box, { justifyContent: "center", borderStyle: "single", borderColor: "yellow", marginBottom: 1, children: _jsxs(Text, { color: "yellow", children: ["\u2B06 SCROLLING HISTORY (", effectiveOffset, ") - Press PageDown to return \u2B07"] }) })), visibleMessages.map((msg, i) => {
|
|
50
|
+
// i is relative to slice.
|
|
17
51
|
if (msg.role === 'tool') {
|
|
18
52
|
try {
|
|
19
53
|
const content = JSON.parse(msg.content);
|
|
@@ -31,6 +65,6 @@ export const ChatArea = ({ messages, streamingContent, currentTool, isProcessing
|
|
|
31
65
|
}
|
|
32
66
|
}
|
|
33
67
|
return (_jsxs(Box, { marginBottom: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, color: getRoleColor(msg.role), children: msg.role === 'user' ? '👤 YOU ' : msg.role === 'assistant' ? '🦅 BLUEHAWKS AI ' : 'ℹ️ SYSTEM ' }), _jsx(Box, { marginLeft: 2, children: _jsxs(Text, { color: "white", children: [(msg.role === 'user' || msg.role === 'assistant') ? '🔹 ' : '', msg.content] }) })] }, i));
|
|
34
|
-
}), streamingContent && (_jsxs(Box, { marginBottom: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, color: "magenta", children: "\uD83E\uDD85 BLUEHAWKS AI " }), _jsx(Box, { marginLeft: 2, children: _jsxs(Text, { color: "white", children: ["\uD83D\uDD39 ", streamingContent] }) })] })), currentTool && !messages.some(m => m.role === 'tool' && m.content.includes(currentTool) && m.content.includes('tool_start')) && (_jsxs(Box, { marginBottom: 1, children: [_jsx(Spinner, { type: "dots" }), _jsxs(Text, { color: "magenta", children: [" Executing ", currentTool, "..."] })] })), pendingApproval && (_jsxs(Box, { borderStyle: "double", borderColor: "yellow", padding: 1, marginY: 1, children: [_jsxs(Text, { color: "yellow", bold: true, children: ["\u26A0\uFE0F APPROVAL REQUIRED: ", pendingApproval.toolName] }), _jsx(Text, { children: "Press Y to approve, N to deny" })] }))] }), !pendingApproval && (_jsxs(Box, { borderStyle: "single", borderTop: true, borderColor: "cyan", paddingTop: 0, marginTop: 1, children: [_jsx(Text, { color: "cyan", children: "\u276F " }), _jsx(TextInput, { value: input, onChange: setInput, onSubmit: onSubmit, placeholder: isProcessing ? "Processing..." : "Command..." })] }))] }));
|
|
68
|
+
}), effectiveOffset === 0 && streamingContent && (_jsxs(Box, { marginBottom: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, color: "magenta", children: "\uD83E\uDD85 BLUEHAWKS AI " }), _jsx(Box, { marginLeft: 2, children: _jsxs(Text, { color: "white", children: ["\uD83D\uDD39 ", streamingContent] }) })] })), effectiveOffset === 0 && currentTool && !messages.some(m => m.role === 'tool' && m.content.includes(currentTool) && m.content.includes('tool_start')) && (_jsxs(Box, { marginBottom: 1, children: [_jsx(Spinner, { type: "dots" }), _jsxs(Text, { color: "magenta", children: [" Executing ", currentTool, "..."] })] })), effectiveOffset === 0 && pendingApproval && (_jsxs(Box, { borderStyle: "double", borderColor: "yellow", padding: 1, marginY: 1, children: [_jsxs(Text, { color: "yellow", bold: true, children: ["\u26A0\uFE0F APPROVAL REQUIRED: ", pendingApproval.toolName] }), _jsx(Text, { children: "Press Y to approve, N to deny" })] }))] }), !pendingApproval && (_jsxs(Box, { borderStyle: "single", borderTop: true, borderColor: "cyan", paddingTop: 0, marginTop: 1, children: [_jsx(Text, { color: "cyan", children: "\u276F " }), _jsx(TextInput, { value: input, onChange: setInput, onSubmit: onSubmit, placeholder: isProcessing ? "Processing..." : "Command..." })] }))] }));
|
|
35
69
|
};
|
|
36
70
|
//# sourceMappingURL=ChatArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatArea.js","sourceRoot":"","sources":["../../../src/cli/components/ChatArea.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ChatArea.js","sourceRoot":"","sources":["../../../src/cli/components/ChatArea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
3
|
import { Box, Text } from 'ink';
|
|
4
4
|
const Branding = () => (_jsx(Box, { flexDirection: "column", borderStyle: "round", borderColor: "magenta", paddingX: 1, width: 60, height: 7, children: _jsx(Text, { color: "magenta", bold: true, children: `
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
____ _ _ _
|
|
6
|
+
| _ \\| |_ _ ___ | |__ __ _ __ __| | __ ___
|
|
7
|
+
| |_) || | | | | / _ \\ | '_ \\ / _\` |\\ \\/ /| |/ / / __|
|
|
8
|
+
| _ < | | |_| || __/ | | | || (_| | > < | < \\__ \\
|
|
9
|
+
|_| \\_\\|_|\\__,_| \\___| |_| |_| \\__,_|/_/\\_\\|_|\\_\\ |___/
|
|
10
10
|
` }) }));
|
|
11
11
|
const SystemMonitor = ({ events }) => {
|
|
12
12
|
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "cyan", flexGrow: 1, height: 7, marginLeft: 1, children: [_jsx(Box, { borderStyle: "single", borderBottom: true, borderColor: "cyan", paddingX: 1, children: _jsx(Text, { color: "cyan", children: "\u26A1 SYSTEM [Live]" }) }), _jsx(Box, { flexDirection: "column", paddingX: 1, children: events.slice(-3).map((event) => (_jsxs(Text, { wrap: "truncate", children: [_jsxs(Text, { color: "gray", children: ["[", event.timestamp.split('T')[1]?.split('.')[0], "] "] }), _jsx(Text, { color: event.type === 'error' ? 'red' : event.type === 'success' ? 'green' : 'white', children: event.message })] }, event.id))) })] }));
|
|
@@ -6,7 +6,7 @@ export declare const DEFAULT_MODEL = "Qwen/Qwen3-8B";
|
|
|
6
6
|
export declare const DEFAULT_EMBEDDING_MODEL = "Qwen/Qwen3-Embedding-0.6B";
|
|
7
7
|
export declare const DEFAULT_RERANK_MODEL = "Qwen/Qwen3-Reranker-0.6B";
|
|
8
8
|
export declare const CLI_NAME = "bluehawks";
|
|
9
|
-
export declare const CLI_VERSION = "1.0.
|
|
9
|
+
export declare const CLI_VERSION = "1.0.45";
|
|
10
10
|
export declare const CLI_DESCRIPTION = "A production-ready multi-agent AI CLI assistant";
|
|
11
11
|
export declare const CONFIG_DIR_NAME = ".bluehawks";
|
|
12
12
|
export declare const SETTINGS_FILE = "settings.json";
|
package/dist/config/constants.js
CHANGED
|
@@ -8,7 +8,7 @@ export const DEFAULT_EMBEDDING_MODEL = 'Qwen/Qwen3-Embedding-0.6B';
|
|
|
8
8
|
export const DEFAULT_RERANK_MODEL = 'Qwen/Qwen3-Reranker-0.6B';
|
|
9
9
|
// CLI Metadata
|
|
10
10
|
export const CLI_NAME = 'bluehawks';
|
|
11
|
-
export const CLI_VERSION = '1.0.
|
|
11
|
+
export const CLI_VERSION = '1.0.45';
|
|
12
12
|
export const CLI_DESCRIPTION = 'A production-ready multi-agent AI CLI assistant';
|
|
13
13
|
// Configuration Paths
|
|
14
14
|
export const CONFIG_DIR_NAME = '.bluehawks';
|
package/package.json
CHANGED
package/src/cli/app.tsx
CHANGED
|
@@ -230,10 +230,42 @@ export const App: React.FC<AppProps> = ({ initialPrompt, apiKey, yoloMode = fals
|
|
|
230
230
|
thinkBuffer = '';
|
|
231
231
|
let output = '';
|
|
232
232
|
let i = 0;
|
|
233
|
-
|
|
233
|
+
|
|
234
|
+
// Check if we ended with a partial tag to avoid processing it yet
|
|
235
|
+
// Only do this if we are NOT in a block (checking for start)
|
|
236
|
+
// or IF we ARE in a block (checking for end)
|
|
237
|
+
// Simplified: just ensure we don't process a partial tag at the end of string
|
|
238
|
+
|
|
239
|
+
const len = fullText.length;
|
|
240
|
+
|
|
241
|
+
while (i < len) {
|
|
234
242
|
if (!inThinkBlock) {
|
|
235
243
|
const thinkStart = fullText.indexOf('<think>', i);
|
|
236
244
|
if (thinkStart === -1) {
|
|
245
|
+
// Check for partial match at end: <, <t, <th, etc.
|
|
246
|
+
// Max tag length is 7 (<think>)
|
|
247
|
+
const remaining = fullText.substring(i);
|
|
248
|
+
if (remaining.length < 7 && '<think>'.startsWith(remaining)) {
|
|
249
|
+
thinkBuffer = remaining; // Buffer it
|
|
250
|
+
break;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
// Robust regex approach is hard in streaming.
|
|
254
|
+
// Heuristic: If string ends with '<', '<t', '<th', ... buffer those chars.
|
|
255
|
+
const suffixCheck = fullText.substring(Math.max(i, len - 6));
|
|
256
|
+
let matchLen = 0;
|
|
257
|
+
for (let k = 1; k < 7; k++) { // <think> is 7 chars
|
|
258
|
+
if (suffixCheck.endsWith('<think>'.substring(0, k))) {
|
|
259
|
+
matchLen = k;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
if (matchLen > 0) {
|
|
264
|
+
output += fullText.substring(i, len - matchLen);
|
|
265
|
+
thinkBuffer = fullText.substring(len - matchLen);
|
|
266
|
+
break;
|
|
267
|
+
}
|
|
268
|
+
|
|
237
269
|
output += fullText.substring(i);
|
|
238
270
|
break;
|
|
239
271
|
} else {
|
|
@@ -244,7 +276,21 @@ export const App: React.FC<AppProps> = ({ initialPrompt, apiKey, yoloMode = fals
|
|
|
244
276
|
} else {
|
|
245
277
|
const thinkEnd = fullText.indexOf('</think>', i);
|
|
246
278
|
if (thinkEnd === -1) {
|
|
247
|
-
|
|
279
|
+
// Check for partial end tag: <, </, </t, ...
|
|
280
|
+
const suffixCheck = fullText.substring(Math.max(i, len - 7));
|
|
281
|
+
let matchLen = 0;
|
|
282
|
+
for (let k = 1; k < 8; k++) { // </think> is 8 chars
|
|
283
|
+
if (suffixCheck.endsWith('</think>'.substring(0, k))) {
|
|
284
|
+
matchLen = k;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
if (matchLen > 0) {
|
|
289
|
+
thinkBuffer = fullText.substring(len - matchLen);
|
|
290
|
+
break;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
thinkBuffer = ''; // Don't buffer content inside think block, just drop it
|
|
248
294
|
break;
|
|
249
295
|
} else {
|
|
250
296
|
inThinkBlock = false;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React from 'react'; import { useInput } from 'ink';
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
4
|
import TextInput from 'ink-text-input';
|
|
@@ -41,11 +41,53 @@ export const ChatArea: React.FC<ChatAreaProps> = ({
|
|
|
41
41
|
}
|
|
42
42
|
};
|
|
43
43
|
|
|
44
|
+
const [scrollOffset, setScrollOffset] = React.useState(0);
|
|
45
|
+
const visibleCount = 15; // Number of messages to show at once
|
|
46
|
+
|
|
47
|
+
useInput((input, key) => {
|
|
48
|
+
if (key.pageUp) {
|
|
49
|
+
setScrollOffset(prev => Math.min(prev + 5, Math.max(0, messages.length - visibleCount)));
|
|
50
|
+
} else if (key.pageDown) {
|
|
51
|
+
setScrollOffset(prev => Math.max(0, prev - 5));
|
|
52
|
+
} else if (key.upArrow && !input) { // Only scroll if no text input (or maybe Alt+Up?)
|
|
53
|
+
// Actually, standard terminals use PageUp/Down for history. Let's stick to PageKeys to avoid conflict with history navigation in Input.
|
|
54
|
+
setScrollOffset(prev => Math.min(prev + 1, Math.max(0, messages.length - visibleCount)));
|
|
55
|
+
} else if (key.downArrow && !input) {
|
|
56
|
+
setScrollOffset(prev => Math.max(0, prev - 1));
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
// Calculate window
|
|
61
|
+
// offset 0 = show last N (end of list)
|
|
62
|
+
// offset > 0 = shift window up by N
|
|
63
|
+
// Slice logic:
|
|
64
|
+
// Start: length - visibleCount - offset
|
|
65
|
+
// End: length - offset
|
|
66
|
+
const total = messages.length;
|
|
67
|
+
const effectiveOffset = Math.min(scrollOffset, Math.max(0, total - visibleCount));
|
|
68
|
+
|
|
69
|
+
// If we are at default (offset 0), we want the *last* visibleCount messages.
|
|
70
|
+
// slice(-(visibleCount), undefined)
|
|
71
|
+
|
|
72
|
+
// If offset is 5, we want slice(-(visibleCount + 5), -5)
|
|
73
|
+
|
|
74
|
+
const start = -(visibleCount + effectiveOffset);
|
|
75
|
+
const end = effectiveOffset === 0 ? undefined : -effectiveOffset;
|
|
76
|
+
|
|
77
|
+
const visibleMessages = messages.slice(start, end);
|
|
78
|
+
|
|
44
79
|
return (
|
|
45
80
|
<Box flexDirection="column" borderStyle="single" borderColor="cyan" flexGrow={1} paddingX={1} overflowY="hidden">
|
|
46
81
|
{/* Messages Area */}
|
|
47
82
|
<Box flexDirection="column" flexGrow={1} justifyContent="flex-end">
|
|
48
|
-
{
|
|
83
|
+
{effectiveOffset > 0 && (
|
|
84
|
+
<Box justifyContent="center" borderStyle="single" borderColor="yellow" marginBottom={1}>
|
|
85
|
+
<Text color="yellow">⬆ SCROLLING HISTORY ({effectiveOffset}) - Press PageDown to return ⬇</Text>
|
|
86
|
+
</Box>
|
|
87
|
+
)}
|
|
88
|
+
|
|
89
|
+
{visibleMessages.map((msg, i) => {
|
|
90
|
+
// i is relative to slice.
|
|
49
91
|
if (msg.role === 'tool') {
|
|
50
92
|
try {
|
|
51
93
|
const content = JSON.parse(msg.content);
|
|
@@ -83,8 +125,8 @@ export const ChatArea: React.FC<ChatAreaProps> = ({
|
|
|
83
125
|
);
|
|
84
126
|
})}
|
|
85
127
|
|
|
86
|
-
{/* Streaming */}
|
|
87
|
-
{streamingContent && (
|
|
128
|
+
{/* Streaming (only show if at bottom) */}
|
|
129
|
+
{effectiveOffset === 0 && streamingContent && (
|
|
88
130
|
<Box marginBottom={1} flexDirection="column">
|
|
89
131
|
<Text bold color="magenta">🦅 BLUEHAWKS AI </Text>
|
|
90
132
|
<Box marginLeft={2}>
|
|
@@ -93,8 +135,8 @@ export const ChatArea: React.FC<ChatAreaProps> = ({
|
|
|
93
135
|
</Box>
|
|
94
136
|
)}
|
|
95
137
|
|
|
96
|
-
{/* Current Tool Spinner */}
|
|
97
|
-
{currentTool && !messages.some(m => m.role === 'tool' && m.content.includes(currentTool) && m.content.includes('tool_start')) && (
|
|
138
|
+
{/* Current Tool Spinner (only show if at bottom) */}
|
|
139
|
+
{effectiveOffset === 0 && currentTool && !messages.some(m => m.role === 'tool' && m.content.includes(currentTool) && m.content.includes('tool_start')) && (
|
|
98
140
|
<Box marginBottom={1}>
|
|
99
141
|
<Spinner type="dots" />
|
|
100
142
|
<Text color="magenta"> Executing {currentTool}...</Text>
|
|
@@ -102,7 +144,7 @@ export const ChatArea: React.FC<ChatAreaProps> = ({
|
|
|
102
144
|
)}
|
|
103
145
|
|
|
104
146
|
{/* Approval Prompt */}
|
|
105
|
-
{pendingApproval && (
|
|
147
|
+
{effectiveOffset === 0 && pendingApproval && (
|
|
106
148
|
<Box borderStyle="double" borderColor="yellow" padding={1} marginY={1}>
|
|
107
149
|
<Text color="yellow" bold>⚠️ APPROVAL REQUIRED: {pendingApproval.toolName}</Text>
|
|
108
150
|
<Text>Press Y to approve, N to deny</Text>
|
|
@@ -6,11 +6,11 @@ const Branding = () => (
|
|
|
6
6
|
<Box flexDirection="column" borderStyle="round" borderColor="magenta" paddingX={1} width={60} height={7}>
|
|
7
7
|
<Text color="magenta" bold>
|
|
8
8
|
{`
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
____ _ _ _
|
|
10
|
+
| _ \\| |_ _ ___ | |__ __ _ __ __| | __ ___
|
|
11
|
+
| |_) || | | | | / _ \\ | '_ \\ / _\` |\\ \\/ /| |/ / / __|
|
|
12
|
+
| _ < | | |_| || __/ | | | || (_| | > < | < \\__ \\
|
|
13
|
+
|_| \\_\\|_|\\__,_| \\___| |_| |_| \\__,_|/_/\\_\\|_|\\_\\ |___/
|
|
14
14
|
`}
|
|
15
15
|
</Text>
|
|
16
16
|
</Box>
|
package/src/config/constants.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const DEFAULT_RERANK_MODEL = 'Qwen/Qwen3-Reranker-0.6B';
|
|
|
10
10
|
|
|
11
11
|
// CLI Metadata
|
|
12
12
|
export const CLI_NAME = 'bluehawks';
|
|
13
|
-
export const CLI_VERSION = '1.0.
|
|
13
|
+
export const CLI_VERSION = '1.0.45';
|
|
14
14
|
export const CLI_DESCRIPTION = 'A production-ready multi-agent AI CLI assistant';
|
|
15
15
|
|
|
16
16
|
// Configuration Paths
|