erosolar-cli 1.7.65 → 1.7.67

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 (34) hide show
  1. package/dist/bin/erosolar.js +0 -2
  2. package/dist/bin/erosolar.js.map +1 -1
  3. package/dist/core/types.d.ts +6 -0
  4. package/dist/core/types.d.ts.map +1 -1
  5. package/dist/providers/anthropicProvider.d.ts.map +1 -1
  6. package/dist/providers/anthropicProvider.js +25 -0
  7. package/dist/providers/anthropicProvider.js.map +1 -1
  8. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +1 -1
  9. package/dist/providers/openaiChatCompletionsProvider.js +25 -4
  10. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
  11. package/dist/providers/openaiResponsesProvider.d.ts.map +1 -1
  12. package/dist/providers/openaiResponsesProvider.js +11 -1
  13. package/dist/providers/openaiResponsesProvider.js.map +1 -1
  14. package/dist/security/persistence-research.d.ts +0 -2
  15. package/dist/security/persistence-research.d.ts.map +1 -1
  16. package/dist/security/persistence-research.js +0 -2
  17. package/dist/security/persistence-research.js.map +1 -1
  18. package/dist/security/security-testing-framework.d.ts +0 -2
  19. package/dist/security/security-testing-framework.d.ts.map +1 -1
  20. package/dist/security/security-testing-framework.js +0 -2
  21. package/dist/security/security-testing-framework.js.map +1 -1
  22. package/dist/shell/interactiveShell.d.ts +6 -0
  23. package/dist/shell/interactiveShell.d.ts.map +1 -1
  24. package/dist/shell/interactiveShell.js +21 -2
  25. package/dist/shell/interactiveShell.js.map +1 -1
  26. package/dist/tools/cloudTools.d.ts +0 -2
  27. package/dist/tools/cloudTools.d.ts.map +1 -1
  28. package/dist/tools/cloudTools.js +0 -2
  29. package/dist/tools/cloudTools.js.map +1 -1
  30. package/package.json +3 -3
  31. package/dist/shell/pasteHandler.d.ts +0 -5
  32. package/dist/shell/pasteHandler.d.ts.map +0 -1
  33. package/dist/shell/pasteHandler.js +0 -25
  34. package/dist/shell/pasteHandler.js.map +0 -1
@@ -1319,6 +1319,7 @@ export class InteractiveShell {
1319
1319
  this.baseSystemPrompt = buildInteractiveSystemPrompt(profileConfig.systemPrompt, profileConfig.label, tools);
1320
1320
  if (this.rebuildAgent()) {
1321
1321
  display.showInfo(`Workspace snapshot refreshed (${this.describeWorkspaceOptions()}).`);
1322
+ this.resetChatBoxAfterModelSwap();
1322
1323
  }
1323
1324
  else {
1324
1325
  display.showWarning('Workspace snapshot refreshed, but the agent failed to rebuild. Run /doctor for details.');
@@ -1496,7 +1497,9 @@ export class InteractiveShell {
1496
1497
  }
1497
1498
  this.thinkingMode = value;
1498
1499
  saveSessionPreferences({ thinkingMode: this.thinkingMode });
1499
- this.rebuildAgent();
1500
+ if (this.rebuildAgent()) {
1501
+ this.resetChatBoxAfterModelSwap();
1502
+ }
1500
1503
  const descriptions = {
1501
1504
  concise: 'Hides internal reasoning and responds directly.',
1502
1505
  balanced: 'Shows short thoughts only when helpful.',
@@ -2191,6 +2194,7 @@ export class InteractiveShell {
2191
2194
  display.showInfo(`Switched to ${preset.label}.`);
2192
2195
  this.refreshBannerSessionInfo();
2193
2196
  this.persistSessionPreference();
2197
+ this.resetChatBoxAfterModelSwap();
2194
2198
  }
2195
2199
  }
2196
2200
  async handleSecretSelection(input) {
@@ -2251,7 +2255,9 @@ export class InteractiveShell {
2251
2255
  const deferred = this.pendingSecretRetry;
2252
2256
  this.pendingSecretRetry = null;
2253
2257
  if (pending.secret.providers.includes(this.sessionState.provider)) {
2254
- this.rebuildAgent();
2258
+ if (this.rebuildAgent()) {
2259
+ this.resetChatBoxAfterModelSwap();
2260
+ }
2255
2261
  }
2256
2262
  if (deferred) {
2257
2263
  await deferred();
@@ -2847,6 +2853,18 @@ What's the next action?`;
2847
2853
  return false;
2848
2854
  }
2849
2855
  }
2856
+ /**
2857
+ * Reset the pinned chat box to a fresh state after model/provider swap.
2858
+ * Ensures the input box is properly visible and ready for input,
2859
+ * just like on fresh startup.
2860
+ */
2861
+ resetChatBoxAfterModelSwap() {
2862
+ this.pinnedChatBox.setStatusMessage(null);
2863
+ this.pinnedChatBox.setProcessing(false);
2864
+ this.pinnedChatBox.show();
2865
+ this.pinnedChatBox.forceRender();
2866
+ this.ensureReadlineReady();
2867
+ }
2850
2868
  buildSystemPrompt() {
2851
2869
  const providerLabel = this.providerLabel(this.sessionState.provider);
2852
2870
  const lines = [
@@ -3305,6 +3323,7 @@ What's the next action?`;
3305
3323
  this.persistSessionPreference();
3306
3324
  this.refreshBannerSessionInfo();
3307
3325
  display.showInfo(`Switched from ${this.providerLabel(oldProvider)}/${oldModel} to ${match.label}/${defaultModel.id}`);
3326
+ this.resetChatBoxAfterModelSwap();
3308
3327
  }
3309
3328
  else {
3310
3329
  // Revert on failure