paean 0.7.2 → 0.7.4

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.
@@ -34,4 +34,9 @@ export declare function createMcpSpinner(serverName: string, toolName: string):
34
34
  * Create a generic loading spinner
35
35
  */
36
36
  export declare function createLoadingSpinner(message?: string): SpinnerController;
37
+ /**
38
+ * Agent analyzing spinner with rotating messages and ∩ brand animation
39
+ * Uses rotating messages and gradient colors for enhanced waiting experience
40
+ */
41
+ export declare function createAgentAnalyzingSpinner(): SpinnerController;
37
42
  //# sourceMappingURL=spinner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/agent/spinner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+DH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAElE;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,iBAAiB,CA4DzD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CA4BzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAgCxF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,MAAqB,GAAG,iBAAiB,CAqBtF"}
1
+ {"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/agent/spinner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+DH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAElE;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,iBAAiB,CA4DzD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CA4BzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAgCxF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,MAAqB,GAAG,iBAAiB,CAqBtF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,iBAAiB,CAgH/D"}
@@ -198,4 +198,112 @@ export function createLoadingSpinner(message = 'Loading...') {
198
198
  isSpinning: () => spinner.isSpinning,
199
199
  };
200
200
  }
201
+ /**
202
+ * Agent analyzing spinner with rotating messages and ∩ brand animation
203
+ * Uses rotating messages and gradient colors for enhanced waiting experience
204
+ */
205
+ export function createAgentAnalyzingSpinner() {
206
+ // Rotating messages for agent analysis
207
+ const MESSAGES = [
208
+ '∩ Analyzing your prompt...',
209
+ '∩ Understanding context...',
210
+ '∩ Planning approach...',
211
+ '∩ Preparing response...',
212
+ '◉ Deep thinking...',
213
+ '∩ Almost there...',
214
+ ];
215
+ // Arch animation frames
216
+ const ARCH_FRAMES = ['∩', '⌒', '︵', '⌓', '∩'];
217
+ // Gradient colors for breathing effect
218
+ const COLORS = [
219
+ '#06b6d4', // Paean Blue
220
+ '#22d3ee', // Light cyan
221
+ '#8b5cf6', // Violet
222
+ '#a78bfa', // Light violet
223
+ '#06b6d4', // Back to blue
224
+ ];
225
+ let messageIdx = 0;
226
+ let colorIdx = 0;
227
+ let frameIdx = 0;
228
+ const spinner = ora({
229
+ text: chalk.hex(COLORS[0])(MESSAGES[0]),
230
+ spinner: {
231
+ interval: 120,
232
+ frames: WAVE_FRAMES,
233
+ },
234
+ color: 'cyan',
235
+ });
236
+ let messageInterval = null;
237
+ let colorInterval = null;
238
+ const updateDisplay = () => {
239
+ const archSymbol = ARCH_FRAMES[frameIdx];
240
+ const message = MESSAGES[messageIdx].replace(/^[∩◉]/, archSymbol);
241
+ spinner.text = chalk.hex(COLORS[colorIdx])(message);
242
+ };
243
+ return {
244
+ start: () => {
245
+ spinner.start();
246
+ // Rotate messages every 2.5 seconds
247
+ messageInterval = setInterval(() => {
248
+ messageIdx = (messageIdx + 1) % MESSAGES.length;
249
+ updateDisplay();
250
+ }, 2500);
251
+ // Cycle colors and arch frames every 200ms for smooth animation
252
+ colorInterval = setInterval(() => {
253
+ colorIdx = (colorIdx + 1) % COLORS.length;
254
+ frameIdx = (frameIdx + 1) % ARCH_FRAMES.length;
255
+ updateDisplay();
256
+ }, 200);
257
+ },
258
+ stop: () => {
259
+ if (messageInterval) {
260
+ clearInterval(messageInterval);
261
+ messageInterval = null;
262
+ }
263
+ if (colorInterval) {
264
+ clearInterval(colorInterval);
265
+ colorInterval = null;
266
+ }
267
+ spinner.stop();
268
+ },
269
+ clear: () => {
270
+ if (messageInterval) {
271
+ clearInterval(messageInterval);
272
+ messageInterval = null;
273
+ }
274
+ if (colorInterval) {
275
+ clearInterval(colorInterval);
276
+ colorInterval = null;
277
+ }
278
+ spinner.stop();
279
+ process.stdout.write('\r\x1b[K');
280
+ },
281
+ text: (message) => {
282
+ spinner.text = chalk.hex(COLORS[colorIdx])(message);
283
+ },
284
+ success: (message) => {
285
+ if (messageInterval) {
286
+ clearInterval(messageInterval);
287
+ messageInterval = null;
288
+ }
289
+ if (colorInterval) {
290
+ clearInterval(colorInterval);
291
+ colorInterval = null;
292
+ }
293
+ spinner.succeed(message);
294
+ },
295
+ fail: (message) => {
296
+ if (messageInterval) {
297
+ clearInterval(messageInterval);
298
+ messageInterval = null;
299
+ }
300
+ if (colorInterval) {
301
+ clearInterval(colorInterval);
302
+ colorInterval = null;
303
+ }
304
+ spinner.fail(message);
305
+ },
306
+ isSpinning: () => spinner.isSpinning,
307
+ };
308
+ }
201
309
  //# sourceMappingURL=spinner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/agent/spinner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/agent/spinner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,UAAU,EACV,SAAS,GACZ,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,eAAe,GAAG;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,cAAc;IACzB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,cAAc;IACzB,SAAS,EAAE,UAAU;IACrB,SAAS;IACT,SAAS;IACT,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,WAAW;IACtB,SAAS;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,GAAG;IAChB,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACN,CAAC;AAEF,MAAM,YAAY,GAAG;IACjB,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;CACV,CAAC;AAEF,MAAM,aAAa,GAAG;IAClB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;CACP,CAAC;AAoBF;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACjC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,MAAM,OAAO,GAAG,GAAG,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;QAC9B,OAAO,EAAE;YACL,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,WAAW;SACtB;QACD,KAAK,EAAE,SAAS;KACnB,CAAC,CAAC;IAEH,yBAAyB;IACzB,IAAI,UAAU,GAA0C,IAAI,CAAC;IAE7D,OAAO;QACH,KAAK,EAAE,GAAG,EAAE;YACR,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,gCAAgC;YAChC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC1B,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC;gBACnD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,wCAAwC;gBACnE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAC1E,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACP,IAAI,UAAU,EAAE,CAAC;gBACb,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,UAAU,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACR,IAAI,UAAU,EAAE,CAAC;gBACb,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,UAAU,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,iBAAiB;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE;YACtB,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,EAAE,CAAC,OAAgB,EAAE,EAAE;YAC1B,IAAI,UAAU,EAAE,CAAC;gBACb,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,UAAU,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;YACvB,IAAI,UAAU,EAAE,CAAC;gBACb,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,UAAU,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IAClD,MAAM,OAAO,GAAG,GAAG,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,GAAG,UAAU,EAAE,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtD,OAAO,EAAE;YACL,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,YAAY;SACvB;QACD,KAAK,EAAE,MAAM;KAChB,CAAC,CAAC;IAEH,OAAO;QACH,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE;QAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;QAC1B,KAAK,EAAE,GAAG,EAAE;YACR,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE;YACtB,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,EAAE,CAAC,QAAiB,EAAE,EAAE;YAC3B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,SAAS,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;YACvB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,SAAS,OAAO,CAAC,QAAQ,CAAC,UAAU,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7G,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,QAAgB;IACjE,MAAM,OAAO,GAAG,GAAG,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,GAAG,SAAS,EAAE,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC9E,OAAO,EAAE;YACL,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,aAAa;SACxB;QACD,KAAK,EAAE,QAAQ;KAClB,CAAC,CAAC;IAEH,OAAO;QACH,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE;QAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;QAC1B,KAAK,EAAE,GAAG,EAAE;YACR,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE;YACtB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC;QAC3B,CAAC;QACD,OAAO,EAAE,CAAC,QAAiB,EAAE,EAAE;YAC3B,OAAO,CAAC,OAAO,CACX,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CACtF,CAAC;QACN,CAAC;QACD,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;YACvB,OAAO,CAAC,IAAI,CACR,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,UAAU,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjH,CAAC;QACN,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAkB,YAAY;IAC/D,MAAM,OAAO,GAAG,GAAG,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;QACxB,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,MAAM;KAChB,CAAC,CAAC;IAEH,OAAO;QACH,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE;QAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;QAC1B,KAAK,EAAE,GAAG,EAAE;YACR,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE;YAClB,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;QAC/C,IAAI,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QACzC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B;IACvC,uCAAuC;IACvC,MAAM,QAAQ,GAAG;QACb,4BAA4B;QAC5B,4BAA4B;QAC5B,wBAAwB;QACxB,yBAAyB;QACzB,oBAAoB;QACpB,mBAAmB;KACtB,CAAC;IAEF,wBAAwB;IACxB,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAE9C,uCAAuC;IACvC,MAAM,MAAM,GAAG;QACX,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,eAAe;QAC1B,SAAS,EAAE,eAAe;KAC7B,CAAC;IAEF,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,MAAM,OAAO,GAAG,GAAG,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvC,OAAO,EAAE;YACL,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,WAAW;SACtB;QACD,KAAK,EAAE,MAAM;KAChB,CAAC,CAAC;IAEH,IAAI,eAAe,GAA0C,IAAI,CAAC;IAClE,IAAI,aAAa,GAA0C,IAAI,CAAC;IAEhE,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC,CAAC;IAEF,OAAO;QACH,KAAK,EAAE,GAAG,EAAE;YACR,OAAO,CAAC,KAAK,EAAE,CAAC;YAEhB,oCAAoC;YACpC,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC/B,UAAU,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;gBAChD,aAAa,EAAE,CAAC;YACpB,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,gEAAgE;YAChE,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC7B,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC1C,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;gBAC/C,aAAa,EAAE,CAAC;YACpB,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACP,IAAI,eAAe,EAAE,CAAC;gBAClB,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC/B,eAAe,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,aAAa,CAAC,CAAC;gBAC7B,aAAa,GAAG,IAAI,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACR,IAAI,eAAe,EAAE,CAAC;gBAClB,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC/B,eAAe,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,aAAa,CAAC,CAAC;gBAC7B,aAAa,GAAG,IAAI,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE;YACtB,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,EAAE,CAAC,OAAgB,EAAE,EAAE;YAC1B,IAAI,eAAe,EAAE,CAAC;gBAClB,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC/B,eAAe,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,aAAa,CAAC,CAAC;gBAC7B,aAAa,GAAG,IAAI,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;YACvB,IAAI,eAAe,EAAE,CAAC;gBAClB,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC/B,eAAe,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,aAAa,CAAC,CAAC;gBAC7B,aAAa,GAAG,IAAI,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,aAAa,SA4FpB,CAAC"}
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,aAAa,SAkGpB,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { Command } from 'commander';
7
7
  import chalk from 'chalk';
8
8
  import { checkAuthentication, initializeAgent } from '../agent/utils.js';
9
+ import { createAgentAnalyzingSpinner } from '../agent/spinner.js';
9
10
  export const promptCommand = new Command('prompt')
10
11
  .description('Execute a task via the main agent (LLM decides execution strategy)')
11
12
  .argument('[prompt...]', 'Task prompt')
@@ -28,10 +29,11 @@ export const promptCommand = new Command('prompt')
28
29
  const debug = options.debug ?? false;
29
30
  const enableMcp = options.mcp !== false;
30
31
  const workspace = options.workspace || process.cwd();
32
+ // Header with proper alignment - use fixed-width box
31
33
  console.log('');
32
- console.log(chalk.bold.cyan(' ╔════════════════════════════════════════════╗'));
33
- console.log(chalk.bold.cyan(' ║') + chalk.bold.white(' PAEAN PROMPT ') + chalk.magenta('◆') + chalk.white(' Agent Mode') + chalk.bold.cyan(' ║'));
34
- console.log(chalk.bold.cyan(' ╚════════════════════════════════════════════╝'));
34
+ console.log(chalk.bold.cyan(' ╔═══════════════════════════════════════════╗'));
35
+ console.log(chalk.bold.cyan(' ║') + ' PAEAN PROMPT ' + chalk.magenta('◆') + ' Agent Mode ' + chalk.bold.cyan('║'));
36
+ console.log(chalk.bold.cyan(' ╚═══════════════════════════════════════════╝'));
35
37
  console.log('');
36
38
  console.log(chalk.cyan('▶') + chalk.bold(' Prompt:'));
37
39
  console.log(chalk.dim(` ${promptText.length > 70 ? promptText.slice(0, 70) + '...' : promptText}`));
@@ -59,8 +61,10 @@ export const promptCommand = new Command('prompt')
59
61
  console.log(chalk.yellow('⚠') + ' No MCP tools available');
60
62
  }
61
63
  console.log('');
64
+ // Create animated spinner for agent analysis
65
+ const spinner = createAgentAnalyzingSpinner();
62
66
  try {
63
- console.log(chalk.blue('◉') + ' Agent is analyzing your prompt...');
67
+ spinner.start();
64
68
  console.log(chalk.dim(' (LLM will decide: direct execution, chain tasks, or batch tasks)'));
65
69
  console.log('');
66
70
  // Use sendMessage to let LLM process and decide
@@ -70,12 +74,14 @@ export const promptCommand = new Command('prompt')
70
74
  onMcpToolCall,
71
75
  debug,
72
76
  });
77
+ spinner.success('∩ Analysis complete');
73
78
  console.log('');
74
79
  console.log(chalk.bold('📝 Agent Response:'));
75
80
  console.log(response);
76
81
  console.log('');
77
82
  }
78
83
  catch (error) {
84
+ spinner.fail('Analysis failed');
79
85
  console.error(chalk.red(`Error: ${error.message}`));
80
86
  if (debug) {
81
87
  console.error(error);
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Tool Call Display Utilities
3
+ * Enhanced display of tool calls and results for better UX
4
+ */
5
+ /**
6
+ * Tool call information
7
+ */
8
+ export interface ToolCallInfo {
9
+ id: string;
10
+ name: string;
11
+ type: 'local' | 'mcp' | 'system';
12
+ serverName?: string;
13
+ args?: Record<string, unknown>;
14
+ status: 'pending' | 'running' | 'completed' | 'error';
15
+ startTime?: number;
16
+ endTime?: number;
17
+ result?: unknown;
18
+ error?: string;
19
+ }
20
+ /**
21
+ * Display tool call start
22
+ */
23
+ export declare function displayToolCallStart(tool: ToolCallInfo): void;
24
+ /**
25
+ * Display tool call result
26
+ */
27
+ export declare function displayToolCallResult(tool: ToolCallInfo): void;
28
+ /**
29
+ * Display tool call summary (for batch operations)
30
+ */
31
+ export declare function displayToolCallSummary(tools: ToolCallInfo[]): void;
32
+ /**
33
+ * Create a tool call tracker for collecting tool calls
34
+ */
35
+ export declare function createToolCallTracker(): {
36
+ start(id: string, name: string, type: "local" | "mcp" | "system", args?: Record<string, unknown>, serverName?: string): void;
37
+ complete(id: string, result?: unknown): void;
38
+ error(id: string, error: string): void;
39
+ getAll(): ToolCallInfo[];
40
+ showSummary(): void;
41
+ clear(): void;
42
+ };
43
+ /**
44
+ * Format tool call for inline display (single line)
45
+ */
46
+ export declare function formatToolCallInline(name: string, status: 'pending' | 'running' | 'completed' | 'error'): string;
47
+ /**
48
+ * Export display functions for use in renderer
49
+ */
50
+ export declare const toolDisplay: {
51
+ start: typeof displayToolCallStart;
52
+ result: typeof displayToolCallResult;
53
+ summary: typeof displayToolCallSummary;
54
+ createTracker: typeof createToolCallTracker;
55
+ formatInline: typeof formatToolCallInline;
56
+ };
57
+ //# sourceMappingURL=ToolCallDisplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolCallDisplay.d.ts","sourceRoot":"","sources":["../../src/ui/ToolCallDisplay.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAqFD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAe7D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAmC9D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,CAqBlE;AAED;;GAEG;AACH,wBAAgB,qBAAqB;cAInB,MAAM,QAAQ,MAAM,QAAQ,OAAO,GAAG,KAAK,GAAG,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,MAAM;iBAcxG,MAAM,WAAW,OAAO;cAU3B,MAAM,SAAS,MAAM;cAUrB,YAAY,EAAE;;;EAY/B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAahH;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;CAMvB,CAAC"}
@@ -0,0 +1,235 @@
1
+ /**
2
+ * Tool Call Display Utilities
3
+ * Enhanced display of tool calls and results for better UX
4
+ */
5
+ import chalk from 'chalk';
6
+ import { PAEAN_SYMBOLS } from './theme/branding.js';
7
+ /**
8
+ * Tool category mapping for display icons
9
+ */
10
+ const TOOL_CATEGORIES = {
11
+ // Shell/System tools
12
+ paean_execute_shell: { icon: '⌘', color: chalk.yellow },
13
+ paean_check_process: { icon: '◉', color: chalk.cyan },
14
+ paean_kill_process: { icon: '✕', color: chalk.red },
15
+ // Worker tools
16
+ paean_worker_execute_prompt: { icon: '∩', color: chalk.magenta },
17
+ paean_worker_start: { icon: '▶', color: chalk.green },
18
+ paean_worker_stop: { icon: '■', color: chalk.red },
19
+ paean_worker_status: { icon: '◉', color: chalk.cyan },
20
+ paean_worker_query: { icon: '?', color: chalk.blue },
21
+ paean_worker_submit: { icon: '➤', color: chalk.green },
22
+ // File operations
23
+ readFile: { icon: '📄', color: chalk.blue },
24
+ writeFile: { icon: '✏', color: chalk.green },
25
+ listDirectory: { icon: '📁', color: chalk.blue },
26
+ deleteFile: { icon: '🗑', color: chalk.red },
27
+ // Search operations
28
+ searchFiles: { icon: '🔍', color: chalk.yellow },
29
+ grepSearch: { icon: '🔍', color: chalk.yellow },
30
+ // Code operations
31
+ generateSparklet: { icon: '✨', color: chalk.magenta },
32
+ updateSparklet: { icon: '✨', color: chalk.magenta },
33
+ generateImage: { icon: '🎨', color: chalk.cyan },
34
+ generateVideo: { icon: '🎬', color: chalk.cyan },
35
+ // Default
36
+ default: { icon: '⚙', color: chalk.gray },
37
+ };
38
+ /**
39
+ * Get tool display info
40
+ */
41
+ function getToolDisplay(toolName) {
42
+ return TOOL_CATEGORIES[toolName] || TOOL_CATEGORIES.default;
43
+ }
44
+ /**
45
+ * Format tool arguments for display
46
+ */
47
+ function formatArgs(args, maxLength = 50) {
48
+ if (!args || Object.keys(args).length === 0)
49
+ return '';
50
+ const entries = Object.entries(args);
51
+ const formatted = [];
52
+ for (const [key, value] of entries.slice(0, 3)) { // Show max 3 args
53
+ let valueStr;
54
+ if (typeof value === 'string') {
55
+ valueStr = value.length > 20 ? value.slice(0, 17) + '...' : value;
56
+ }
57
+ else if (typeof value === 'boolean' || typeof value === 'number') {
58
+ valueStr = String(value);
59
+ }
60
+ else if (Array.isArray(value)) {
61
+ valueStr = `[${value.length} items]`;
62
+ }
63
+ else if (typeof value === 'object' && value !== null) {
64
+ valueStr = '{...}';
65
+ }
66
+ else {
67
+ valueStr = String(value);
68
+ }
69
+ formatted.push(`${key}=${valueStr}`);
70
+ }
71
+ const result = formatted.join(', ');
72
+ if (result.length > maxLength) {
73
+ return result.slice(0, maxLength - 3) + '...';
74
+ }
75
+ if (entries.length > 3) {
76
+ return result + `, +${entries.length - 3} more`;
77
+ }
78
+ return result;
79
+ }
80
+ /**
81
+ * Format duration for display
82
+ */
83
+ function formatDuration(ms) {
84
+ if (ms < 1000)
85
+ return `${ms}ms`;
86
+ if (ms < 60000)
87
+ return `${(ms / 1000).toFixed(1)}s`;
88
+ return `${Math.floor(ms / 60000)}m ${Math.floor((ms % 60000) / 1000)}s`;
89
+ }
90
+ /**
91
+ * Display tool call start
92
+ */
93
+ export function displayToolCallStart(tool) {
94
+ const { icon, color } = getToolDisplay(tool.name);
95
+ const typeLabel = tool.type === 'mcp' ? `[MCP:${tool.serverName}] ` :
96
+ tool.type === 'system' ? '[SYS] ' : '';
97
+ const argsStr = formatArgs(tool.args);
98
+ const argsDisplay = argsStr ? chalk.dim(` (${argsStr})`) : '';
99
+ console.log(color(icon) + ' ' +
100
+ chalk.dim(typeLabel) +
101
+ chalk.bold(tool.name) +
102
+ argsDisplay +
103
+ chalk.dim(' ...'));
104
+ }
105
+ /**
106
+ * Display tool call result
107
+ */
108
+ export function displayToolCallResult(tool) {
109
+ const { icon, color } = getToolDisplay(tool.name);
110
+ const duration = tool.endTime && tool.startTime
111
+ ? formatDuration(tool.endTime - tool.startTime)
112
+ : '';
113
+ if (tool.status === 'error') {
114
+ console.log(chalk.red('✗') + ' ' +
115
+ chalk.dim(tool.name) + ' ' +
116
+ chalk.red('failed') +
117
+ (tool.error ? chalk.dim(` - ${tool.error.slice(0, 50)}`) : '') +
118
+ (duration ? chalk.dim(` [${duration}]`) : ''));
119
+ }
120
+ else if (tool.status === 'completed') {
121
+ // Format result preview
122
+ let resultPreview = '';
123
+ if (tool.result && typeof tool.result === 'object') {
124
+ const res = tool.result;
125
+ if ('success' in res) {
126
+ resultPreview = res.success ? chalk.green('success') : chalk.red('failed');
127
+ }
128
+ else if ('output' in res && typeof res.output === 'string') {
129
+ const lines = res.output.split('\n').length;
130
+ resultPreview = chalk.dim(`(${lines} lines)`);
131
+ }
132
+ }
133
+ console.log(color(icon) + ' ' +
134
+ chalk.dim(tool.name) + ' ' +
135
+ chalk.green(PAEAN_SYMBOLS.bullet) +
136
+ (resultPreview ? ' ' + resultPreview : '') +
137
+ (duration ? chalk.dim(` [${duration}]`) : ''));
138
+ }
139
+ }
140
+ /**
141
+ * Display tool call summary (for batch operations)
142
+ */
143
+ export function displayToolCallSummary(tools) {
144
+ if (tools.length === 0)
145
+ return;
146
+ const completed = tools.filter(t => t.status === 'completed').length;
147
+ const failed = tools.filter(t => t.status === 'error').length;
148
+ const totalDuration = tools.reduce((sum, t) => {
149
+ if (t.startTime && t.endTime) {
150
+ return sum + (t.endTime - t.startTime);
151
+ }
152
+ return sum;
153
+ }, 0);
154
+ console.log('');
155
+ console.log(chalk.dim('──') + ' ' +
156
+ chalk.bold('Tool Summary: ') +
157
+ chalk.green(`${completed} completed`) +
158
+ (failed > 0 ? chalk.red(`, ${failed} failed`) : '') +
159
+ chalk.dim(` in ${formatDuration(totalDuration)}`));
160
+ }
161
+ /**
162
+ * Create a tool call tracker for collecting tool calls
163
+ */
164
+ export function createToolCallTracker() {
165
+ const calls = new Map();
166
+ return {
167
+ start(id, name, type, args, serverName) {
168
+ const tool = {
169
+ id,
170
+ name,
171
+ type,
172
+ serverName,
173
+ args,
174
+ status: 'running',
175
+ startTime: Date.now(),
176
+ };
177
+ calls.set(id, tool);
178
+ displayToolCallStart(tool);
179
+ },
180
+ complete(id, result) {
181
+ const tool = calls.get(id);
182
+ if (tool) {
183
+ tool.status = 'completed';
184
+ tool.endTime = Date.now();
185
+ tool.result = result;
186
+ displayToolCallResult(tool);
187
+ }
188
+ },
189
+ error(id, error) {
190
+ const tool = calls.get(id);
191
+ if (tool) {
192
+ tool.status = 'error';
193
+ tool.endTime = Date.now();
194
+ tool.error = error;
195
+ displayToolCallResult(tool);
196
+ }
197
+ },
198
+ getAll() {
199
+ return Array.from(calls.values());
200
+ },
201
+ showSummary() {
202
+ displayToolCallSummary(Array.from(calls.values()));
203
+ },
204
+ clear() {
205
+ calls.clear();
206
+ }
207
+ };
208
+ }
209
+ /**
210
+ * Format tool call for inline display (single line)
211
+ */
212
+ export function formatToolCallInline(name, status) {
213
+ const { icon, color } = getToolDisplay(name);
214
+ switch (status) {
215
+ case 'pending':
216
+ return chalk.dim(`${icon} ${name} ...`);
217
+ case 'running':
218
+ return color(`${icon} ${name}`) + chalk.dim(' running...');
219
+ case 'completed':
220
+ return color(`${icon} ${name}`) + chalk.green(' ✓');
221
+ case 'error':
222
+ return chalk.red(`${icon} ${name} ✗`);
223
+ }
224
+ }
225
+ /**
226
+ * Export display functions for use in renderer
227
+ */
228
+ export const toolDisplay = {
229
+ start: displayToolCallStart,
230
+ result: displayToolCallResult,
231
+ summary: displayToolCallSummary,
232
+ createTracker: createToolCallTracker,
233
+ formatInline: formatToolCallInline,
234
+ };
235
+ //# sourceMappingURL=ToolCallDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolCallDisplay.js","sourceRoot":"","sources":["../../src/ui/ToolCallDisplay.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export interface UseAgentStreamOptions {
20
20
  mcpState?: McpState;
21
21
  onMcpToolCall?: (callId: string, serverName: string, toolName: string, args: Record<string, unknown>) => Promise<McpToolResult>;
22
22
  cliMode?: boolean;
23
+ showToolCalls?: boolean;
23
24
  }
24
25
  export interface UseAgentStreamReturn {
25
26
  messages: Message[];
@@ -1 +1 @@
1
- {"version":3,"file":"useAgentStream.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AAE1F,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;KAC7C,CAAC,CAAC;CACN;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,aAAa,CAAC,EAAE,CACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,oBAAoB,CAgJxF"}
1
+ {"version":3,"file":"useAgentStream.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AAG1F,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;KAC7C,CAAC,CAAC;CACN;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,aAAa,CAAC,EAAE,CACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,oBAAoB,CA4KxF"}
@@ -4,14 +4,16 @@
4
4
  */
5
5
  import { useState, useCallback, useRef } from 'react';
6
6
  import { agentService } from '../../agent/service.js';
7
+ import { createToolCallTracker } from '../ToolCallDisplay.js';
7
8
  export function useAgentStream(options = {}) {
8
- const { mcpState, onMcpToolCall, cliMode = false } = options;
9
+ const { mcpState, onMcpToolCall, cliMode = false, showToolCalls = true } = options;
9
10
  const [messages, setMessages] = useState([]);
10
11
  const [isProcessing, setIsProcessing] = useState(false);
11
12
  const [currentToolCall, setCurrentToolCall] = useState(null);
12
13
  const [streamingText, setStreamingText] = useState('');
13
14
  const conversationIdRef = useRef(undefined);
14
15
  const abortRef = useRef(null);
16
+ const toolTrackerRef = useRef(createToolCallTracker());
15
17
  const abort = useCallback(() => {
16
18
  if (abortRef.current) {
17
19
  abortRef.current();
@@ -31,6 +33,7 @@ export function useAgentStream(options = {}) {
31
33
  }]);
32
34
  setIsProcessing(true);
33
35
  setStreamingText('');
36
+ toolTrackerRef.current.clear();
34
37
  let responseText = '';
35
38
  const callbacks = {
36
39
  onContent: (text, partial) => {
@@ -42,22 +45,50 @@ export function useAgentStream(options = {}) {
42
45
  }
43
46
  setStreamingText(responseText);
44
47
  },
45
- onToolCall: (_id, name) => {
48
+ onToolCall: (id, name) => {
46
49
  setCurrentToolCall({ name, type: 'tool' });
50
+ if (showToolCalls) {
51
+ toolTrackerRef.current.start(id, name, 'local');
52
+ }
47
53
  },
48
- onToolResult: () => {
54
+ onToolResult: (id, _name, result) => {
49
55
  setCurrentToolCall(null);
56
+ if (showToolCalls) {
57
+ const isError = result && typeof result === 'object' &&
58
+ result.isError === true;
59
+ if (isError) {
60
+ toolTrackerRef.current.error(id, 'Tool returned error');
61
+ }
62
+ else {
63
+ toolTrackerRef.current.complete(id, result);
64
+ }
65
+ }
50
66
  },
51
67
  onMcpToolCall: async (callId, serverName, toolName, args) => {
52
68
  setCurrentToolCall({ name: toolName, type: 'mcp', serverName });
69
+ if (showToolCalls) {
70
+ toolTrackerRef.current.start(callId, toolName, 'mcp', args, serverName);
71
+ }
53
72
  if (onMcpToolCall) {
54
73
  try {
55
74
  const result = await onMcpToolCall(callId, serverName, toolName, args);
56
75
  setCurrentToolCall(null);
76
+ if (showToolCalls) {
77
+ if (result.isError) {
78
+ const errorText = result.content[0]?.text || 'Unknown error';
79
+ toolTrackerRef.current.error(callId, errorText);
80
+ }
81
+ else {
82
+ toolTrackerRef.current.complete(callId, result);
83
+ }
84
+ }
57
85
  return result;
58
86
  }
59
87
  catch (error) {
60
88
  setCurrentToolCall(null);
89
+ if (showToolCalls) {
90
+ toolTrackerRef.current.error(callId, error.message);
91
+ }
61
92
  return {
62
93
  content: [{ type: 'text', text: `Error: ${error.message}` }],
63
94
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,5 @@
4
4
  export { App, type AppProps } from './App.js';
5
5
  export * from './components/index.js';
6
6
  export * from './hooks/index.js';
7
+ export * from './ToolCallDisplay.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
package/dist/ui/index.js CHANGED
@@ -4,4 +4,5 @@
4
4
  export { App } from './App.js';
5
5
  export * from './components/index.js';
6
6
  export * from './hooks/index.js';
7
+ export * from './ToolCallDisplay.js';
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
@@ -16,4 +16,14 @@ export declare const BRAND_COLORS: {
16
16
  };
17
17
  export declare const getLogoAscii: () => string;
18
18
  export declare const getCompactLogo: () => string;
19
+ export declare const PAEAN_SYMBOLS: {
20
+ arch: string;
21
+ archFilled: string;
22
+ dot: string;
23
+ dotEmpty: string;
24
+ diamond: string;
25
+ bullet: string;
26
+ };
27
+ export declare const ARCH_FRAMES: string[];
28
+ export declare const AGENT_MESSAGES: string[];
19
29
  //# sourceMappingURL=branding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,eAAO,MAAM,YAAY;;;;;;;;;;;CAWxB,CAAC;AAGF,eAAO,MAAM,YAAY,cASxB,CAAC;AAGF,eAAO,MAAM,cAAc,cAE1B,CAAC"}
1
+ {"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,eAAO,MAAM,YAAY;;;;;;;;;;;CAWxB,CAAC;AAGF,eAAO,MAAM,YAAY,cASxB,CAAC;AAGF,eAAO,MAAM,cAAc,cAE1B,CAAC;AAKF,eAAO,MAAM,aAAa;;;;;;;CAOzB,CAAC;AAGF,eAAO,MAAM,WAAW,UAMvB,CAAC;AAGF,eAAO,MAAM,cAAc,UAO1B,CAAC"}
@@ -32,4 +32,30 @@ export const getCompactLogo = () => {
32
32
  return chalk.hex(BRAND_COLORS.primary)('∩ Paean');
33
33
  };
34
34
  // USE ∩(U+2229)for Paean ASCII Logo
35
+ // Paean Brand Symbols for CLI
36
+ export const PAEAN_SYMBOLS = {
37
+ arch: '∩', // Primary brand logo symbol
38
+ archFilled: '⌓', // Alternative arch
39
+ dot: '◉', // Status dot
40
+ dotEmpty: '○', // Empty dot
41
+ diamond: '◆', // Diamond accent
42
+ bullet: '•', // Bullet point
43
+ };
44
+ // Animated arch frames for loading states
45
+ export const ARCH_FRAMES = [
46
+ '∩',
47
+ '⌒',
48
+ '︵',
49
+ '⌓',
50
+ '∩',
51
+ ];
52
+ // Rotating loading messages for agent analysis
53
+ export const AGENT_MESSAGES = [
54
+ '∩ Analyzing your prompt...',
55
+ '∩ Understanding context...',
56
+ '∩ Planning approach...',
57
+ '∩ Preparing response...',
58
+ '◉ Deep thinking...',
59
+ '∩ Almost there...',
60
+ ];
35
61
  //# sourceMappingURL=branding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAe;AACf,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO,EAAE,SAAS,EAAE,kBAAkB;IACtC,YAAY,EAAE,SAAS;IACvB,WAAW,EAAE,SAAS;IACtB,SAAS,EAAE,SAAS,EAAE,gBAAgB;IACtC,OAAO,EAAE,SAAS,EAAE,UAAU;IAC9B,OAAO,EAAE,SAAS,EAAE,QAAQ;IAC5B,KAAK,EAAE,SAAS,EAAI,MAAM;IAC1B,KAAK,EAAE,SAAS;IAChB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,mCAAmC;AACnC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,oCAAoC"}
1
+ {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../../src/ui/theme/branding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAe;AACf,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO,EAAE,SAAS,EAAE,kBAAkB;IACtC,YAAY,EAAE,SAAS;IACvB,WAAW,EAAE,SAAS;IACtB,SAAS,EAAE,SAAS,EAAE,gBAAgB;IACtC,OAAO,EAAE,SAAS,EAAE,UAAU;IAC9B,OAAO,EAAE,SAAS,EAAE,QAAQ;IAC5B,KAAK,EAAE,SAAS,EAAI,MAAM;IAC1B,KAAK,EAAE,SAAS;IAChB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,mCAAmC;AACnC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,oCAAoC;AAEpC,8BAA8B;AAC9B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,GAAG,EAAY,4BAA4B;IACjD,UAAU,EAAE,GAAG,EAAM,mBAAmB;IACxC,GAAG,EAAE,GAAG,EAAa,aAAa;IAClC,QAAQ,EAAE,GAAG,EAAQ,YAAY;IACjC,OAAO,EAAE,GAAG,EAAS,iBAAiB;IACtC,MAAM,EAAE,GAAG,EAAU,eAAe;CACrC,CAAC;AAEF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACJ,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,4BAA4B;IAC5B,4BAA4B;IAC5B,wBAAwB;IACxB,yBAAyB;IACzB,oBAAoB;IACpB,mBAAmB;CACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "paean",
3
- "version": "0.7.2",
3
+ "version": "0.7.4",
4
4
  "description": "Paean AI CLI - Claude Code-like AI agent with local MCP integration, task management, and autonomous worker mode",
5
5
  "author": "Paean AI <dev@paean.ai>",
6
6
  "license": "MIT",