@codex-infinity/pi-infinity 0.63.2 → 0.64.1

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.
Files changed (80) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/README.md +2 -2
  3. package/dist/core/agent-session.d.ts +5 -0
  4. package/dist/core/agent-session.d.ts.map +1 -1
  5. package/dist/core/agent-session.js +49 -34
  6. package/dist/core/agent-session.js.map +1 -1
  7. package/dist/core/extensions/runner.d.ts +1 -0
  8. package/dist/core/extensions/runner.d.ts.map +1 -1
  9. package/dist/core/extensions/runner.js +4 -0
  10. package/dist/core/extensions/runner.js.map +1 -1
  11. package/dist/core/extensions/types.d.ts +7 -0
  12. package/dist/core/extensions/types.d.ts.map +1 -1
  13. package/dist/core/extensions/types.js.map +1 -1
  14. package/dist/core/keybindings.d.ts +10 -0
  15. package/dist/core/keybindings.d.ts.map +1 -1
  16. package/dist/core/keybindings.js +10 -0
  17. package/dist/core/keybindings.js.map +1 -1
  18. package/dist/core/model-registry.d.ts +3 -1
  19. package/dist/core/model-registry.d.ts.map +1 -1
  20. package/dist/core/model-registry.js +7 -1
  21. package/dist/core/model-registry.js.map +1 -1
  22. package/dist/core/sdk.d.ts +1 -1
  23. package/dist/core/sdk.d.ts.map +1 -1
  24. package/dist/core/sdk.js +2 -2
  25. package/dist/core/sdk.js.map +1 -1
  26. package/dist/core/session-manager.d.ts +3 -0
  27. package/dist/core/session-manager.d.ts.map +1 -1
  28. package/dist/core/session-manager.js +13 -6
  29. package/dist/core/session-manager.js.map +1 -1
  30. package/dist/core/tools/edit-diff.d.ts +3 -3
  31. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  32. package/dist/core/tools/edit-diff.js.map +1 -1
  33. package/dist/core/tools/edit.d.ts +7 -17
  34. package/dist/core/tools/edit.d.ts.map +1 -1
  35. package/dist/core/tools/edit.js +32 -103
  36. package/dist/core/tools/edit.js.map +1 -1
  37. package/dist/core/tools/index.d.ts +5 -10
  38. package/dist/core/tools/index.d.ts.map +1 -1
  39. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  40. package/dist/core/tools/tool-definition-wrapper.js +2 -0
  41. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  42. package/dist/main.d.ts.map +1 -1
  43. package/dist/main.js +1 -1
  44. package/dist/main.js.map +1 -1
  45. package/dist/modes/interactive/components/assistant-message.d.ts +3 -1
  46. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  47. package/dist/modes/interactive/components/assistant-message.js +13 -3
  48. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  49. package/dist/modes/interactive/components/tree-selector.d.ts +4 -2
  50. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  51. package/dist/modes/interactive/components/tree-selector.js +48 -15
  52. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  53. package/dist/modes/interactive/interactive-mode.d.ts +3 -0
  54. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  55. package/dist/modes/interactive/interactive-mode.js +24 -3
  56. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  57. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  58. package/dist/modes/rpc/rpc-mode.js +3 -0
  59. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  60. package/docs/compaction.md +4 -2
  61. package/docs/extensions.md +94 -0
  62. package/docs/json.md +5 -2
  63. package/docs/keybindings.md +2 -0
  64. package/docs/rpc.md +21 -7
  65. package/docs/sdk.md +20 -12
  66. package/docs/tree.md +5 -2
  67. package/examples/extensions/README.md +1 -0
  68. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  69. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  70. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  71. package/examples/extensions/custom-provider-qwen-cli/package.json +1 -1
  72. package/examples/extensions/hidden-thinking-label.ts +57 -0
  73. package/examples/extensions/sandbox/index.ts +4 -0
  74. package/examples/extensions/with-deps/package-lock.json +2 -2
  75. package/examples/extensions/with-deps/package.json +1 -1
  76. package/examples/sdk/02-custom-model.ts +1 -1
  77. package/examples/sdk/09-api-keys-and-oauth.ts +3 -3
  78. package/examples/sdk/12-full-control.ts +1 -1
  79. package/examples/sdk/README.md +3 -3
  80. package/package.json +4 -4
@@ -69,6 +69,8 @@ export class InteractiveMode {
69
69
  this.loadingAnimation = undefined;
70
70
  this.pendingWorkingMessage = undefined;
71
71
  this.defaultWorkingMessage = "Working...";
72
+ this.defaultHiddenThinkingLabel = "Thinking...";
73
+ this.hiddenThinkingLabel = this.defaultHiddenThinkingLabel;
72
74
  this.lastSigintTime = 0;
73
75
  this.lastEscapeTime = 0;
74
76
  this.changelogMarkdown = undefined;
@@ -971,6 +973,7 @@ export class InteractiveMode {
971
973
  modelRegistry: this.session.modelRegistry,
972
974
  model: this.session.model,
973
975
  isIdle: () => !this.session.isStreaming,
976
+ signal: this.session.agent.signal,
974
977
  abort: () => this.session.abort(),
975
978
  hasPendingMessages: () => this.session.pendingMessageCount > 0,
976
979
  shutdown: () => {
@@ -1013,6 +1016,18 @@ export class InteractiveMode {
1013
1016
  this.footerDataProvider.setExtensionStatus(key, text);
1014
1017
  this.ui.requestRender();
1015
1018
  }
1019
+ setHiddenThinkingLabel(label) {
1020
+ this.hiddenThinkingLabel = label ?? this.defaultHiddenThinkingLabel;
1021
+ for (const child of this.chatContainer.children) {
1022
+ if (child instanceof AssistantMessageComponent) {
1023
+ child.setHiddenThinkingLabel(this.hiddenThinkingLabel);
1024
+ }
1025
+ }
1026
+ if (this.streamingComponent) {
1027
+ this.streamingComponent.setHiddenThinkingLabel(this.hiddenThinkingLabel);
1028
+ }
1029
+ this.ui.requestRender();
1030
+ }
1016
1031
  /**
1017
1032
  * Set an extension widget (string array or custom component).
1018
1033
  */
@@ -1084,6 +1099,7 @@ export class InteractiveMode {
1084
1099
  if (this.loadingAnimation) {
1085
1100
  this.loadingAnimation.setMessage(`${this.defaultWorkingMessage} (${keyText("app.interrupt")} to interrupt)`);
1086
1101
  }
1102
+ this.setHiddenThinkingLabel();
1087
1103
  }
1088
1104
  // Maximum total widget lines to prevent viewport overflow
1089
1105
  static { this.MAX_WIDGET_LINES = 10; }
@@ -1213,6 +1229,7 @@ export class InteractiveMode {
1213
1229
  this.pendingWorkingMessage = message;
1214
1230
  }
1215
1231
  },
1232
+ setHiddenThinkingLabel: (label) => this.setHiddenThinkingLabel(label),
1216
1233
  setWidget: (key, content, options) => this.setExtensionWidget(key, content, options),
1217
1234
  setFooter: (factory) => this.setExtensionFooter(factory),
1218
1235
  setHeader: (factory) => this.setExtensionHeader(factory),
@@ -1816,6 +1833,10 @@ export class InteractiveMode {
1816
1833
  }
1817
1834
  this.ui.requestRender();
1818
1835
  break;
1836
+ case "queue_update":
1837
+ this.updatePendingMessagesDisplay();
1838
+ this.ui.requestRender();
1839
+ break;
1819
1840
  case "message_start":
1820
1841
  if (event.message.role === "custom") {
1821
1842
  this.addMessageToChat(event.message);
@@ -1827,7 +1848,7 @@ export class InteractiveMode {
1827
1848
  this.ui.requestRender();
1828
1849
  }
1829
1850
  else if (event.message.role === "assistant") {
1830
- this.streamingComponent = new AssistantMessageComponent(undefined, this.hideThinkingBlock, this.getMarkdownThemeWithSettings());
1851
+ this.streamingComponent = new AssistantMessageComponent(undefined, this.hideThinkingBlock, this.getMarkdownThemeWithSettings(), this.hiddenThinkingLabel);
1831
1852
  this.streamingMessage = event.message;
1832
1853
  this.chatContainer.addChild(this.streamingComponent);
1833
1854
  this.streamingComponent.updateContent(this.streamingMessage);
@@ -2125,7 +2146,7 @@ export class InteractiveMode {
2125
2146
  break;
2126
2147
  }
2127
2148
  case "assistant": {
2128
- const assistantComponent = new AssistantMessageComponent(message, this.hideThinkingBlock, this.getMarkdownThemeWithSettings());
2149
+ const assistantComponent = new AssistantMessageComponent(message, this.hideThinkingBlock, this.getMarkdownThemeWithSettings(), this.hiddenThinkingLabel);
2129
2150
  this.chatContainer.addChild(assistantComponent);
2130
2151
  break;
2131
2152
  }
@@ -2721,7 +2742,7 @@ export class InteractiveMode {
2721
2742
  },
2722
2743
  onTransportChange: (transport) => {
2723
2744
  this.settingsManager.setTransport(transport);
2724
- this.session.agent.setTransport(transport);
2745
+ this.session.agent.transport = transport;
2725
2746
  },
2726
2747
  onThinkingLevelChange: (level) => {
2727
2748
  this.session.setThinkingLevel(level);