naiad-cli 0.2.33 → 0.2.34

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.
@@ -189,6 +189,7 @@ export default function (pi: ExtensionAPI) {
189
189
  (pi as any).on("message_end", (event: unknown) => postEvent("message_end", event));
190
190
  (pi as any).on("message_update", (event: unknown) => postEvent("message_update", event));
191
191
  (pi as any).on("tool_execution_start", (event: unknown) => postEvent("tool_execution_start", event));
192
+ (pi as any).on("tool_execution_update", (event: unknown) => postEvent("tool_execution_update", event));
192
193
  (pi as any).on("tool_execution_end", (event: unknown) => postEvent("tool_execution_end", event));
193
194
  }
194
195
 
@@ -628,6 +629,7 @@ When you're done, provide a clear, actionable summary the caller can act on.`;
628
629
  let stderr = "";
629
630
  let closed = false;
630
631
  let terminationReason: "timeout" | "abort" | null = null;
632
+ let statusLine = "";
631
633
 
632
634
  const rl = readline.createInterface({ input: child.stdout!, crlfDelay: Infinity });
633
635
 
@@ -640,6 +642,26 @@ When you're done, provide a clear, actionable summary the caller can act on.`;
640
642
  return;
641
643
  }
642
644
 
645
+ // Show child tool activity as status while Seer hasn't produced text yet
646
+ if (event.type === "tool_execution_start" && !accumulatedText) {
647
+ const toolName = event.toolName ?? event.tool_name ?? "";
648
+ const args = event.args ?? {};
649
+ if (toolName === "read" && args.path) {
650
+ statusLine = `Reading ${args.path}`;
651
+ } else if (toolName === "grep" && args.pattern) {
652
+ statusLine = `Searching for "${args.pattern}"`;
653
+ } else if (toolName === "find" || toolName === "ls") {
654
+ statusLine = `Exploring ${args.path || "codebase"}`;
655
+ } else if (toolName) {
656
+ statusLine = `Running ${toolName}`;
657
+ }
658
+ if (statusLine) {
659
+ onUpdate?.({
660
+ content: [{ type: "text", text: `⏳ ${statusLine}` }],
661
+ });
662
+ }
663
+ }
664
+
643
665
  if (event.type === "message_update") {
644
666
  const ame = event.assistantMessageEvent;
645
667
  if (ame?.type === "text_delta" && ame.delta) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "naiad-cli",
3
- "version": "0.2.33",
3
+ "version": "0.2.34",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "naiad": "./dist/index.js"