@averyyy/pi-coding-agent 0.84.4-piclient.1 → 0.84.4-piclient.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.
@@ -1684,6 +1684,17 @@ export class InteractiveMode {
1684
1684
  showWorkingStatusIndicator() {
1685
1685
  this.showStatusIndicator(new WorkingStatusIndicator(this.ui, this.workingMessage ?? this.defaultWorkingMessage, this.workingIndicatorOptions));
1686
1686
  }
1687
+ restoreWorkingStatusIndicatorIfStreaming() {
1688
+ if (!this.session.isStreaming) {
1689
+ return;
1690
+ }
1691
+ if (this.workingVisible && this.activeStatusIndicator?.kind !== "working") {
1692
+ this.showWorkingStatusIndicator();
1693
+ }
1694
+ if (this.settingsManager.getShowTerminalProgress()) {
1695
+ this.ui.terminal.setProgress(true);
1696
+ }
1697
+ }
1687
1698
  setWorkingVisible(visible) {
1688
1699
  this.workingVisible = visible;
1689
1700
  if (!visible) {
@@ -2739,10 +2750,6 @@ export class InteractiveMode {
2739
2750
  break;
2740
2751
  }
2741
2752
  case "agent_end":
2742
- if (this.settingsManager.getShowTerminalProgress()) {
2743
- this.ui.terminal.setProgress(false);
2744
- }
2745
- this.clearStatusIndicator("working");
2746
2753
  if (this.streamingComponent) {
2747
2754
  this.chatContainer.removeChild(this.streamingComponent);
2748
2755
  this.streamingComponent = undefined;
@@ -2752,6 +2759,10 @@ export class InteractiveMode {
2752
2759
  this.ui.requestRender();
2753
2760
  break;
2754
2761
  case "agent_settled":
2762
+ if (this.settingsManager.getShowTerminalProgress()) {
2763
+ this.ui.terminal.setProgress(false);
2764
+ }
2765
+ this.clearStatusIndicator("working");
2755
2766
  await this.checkShutdownRequested();
2756
2767
  break;
2757
2768
  case "compaction_start": {
@@ -2811,6 +2822,7 @@ export class InteractiveMode {
2811
2822
  this.chatContainer.addChild(new Text(theme.fg("error", event.errorMessage), 1, 0));
2812
2823
  }
2813
2824
  }
2825
+ this.restoreWorkingStatusIndicatorIfStreaming();
2814
2826
  void this.flushCompactionQueue({ willRetry: event.willRetry });
2815
2827
  this.ui.requestRender();
2816
2828
  break;
@@ -2836,6 +2848,7 @@ export class InteractiveMode {
2836
2848
  if (!event.success) {
2837
2849
  this.showError(`Retry failed after ${event.attempt} attempts: ${event.finalError || "Unknown error"}`);
2838
2850
  }
2851
+ this.restoreWorkingStatusIndicatorIfStreaming();
2839
2852
  this.ui.requestRender();
2840
2853
  break;
2841
2854
  }