@averyyy/pi-coding-agent 0.82.1-piclient.8 → 0.83.0-piclient.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 (75) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +1 -1
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +8 -1
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli/credential-print.d.ts +23 -0
  7. package/dist/cli/credential-print.d.ts.map +1 -0
  8. package/dist/cli/credential-print.js +116 -0
  9. package/dist/cli/credential-print.js.map +1 -0
  10. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  11. package/dist/core/agent-session-runtime.js +3 -0
  12. package/dist/core/agent-session-runtime.js.map +1 -1
  13. package/dist/core/agent-session.d.ts +1 -1
  14. package/dist/core/agent-session.d.ts.map +1 -1
  15. package/dist/core/agent-session.js +15 -22
  16. package/dist/core/agent-session.js.map +1 -1
  17. package/dist/core/extensions/runner.d.ts +1 -0
  18. package/dist/core/extensions/runner.d.ts.map +1 -1
  19. package/dist/core/extensions/runner.js +7 -0
  20. package/dist/core/extensions/runner.js.map +1 -1
  21. package/dist/core/extensions/types.d.ts +7 -0
  22. package/dist/core/extensions/types.d.ts.map +1 -1
  23. package/dist/core/extensions/types.js.map +1 -1
  24. package/dist/core/footer-data-provider.d.ts +10 -0
  25. package/dist/core/footer-data-provider.d.ts.map +1 -1
  26. package/dist/core/footer-data-provider.js +1 -1
  27. package/dist/core/footer-data-provider.js.map +1 -1
  28. package/dist/core/model-runtime.d.ts +2 -0
  29. package/dist/core/model-runtime.d.ts.map +1 -1
  30. package/dist/core/model-runtime.js.map +1 -1
  31. package/dist/core/package-manager.d.ts.map +1 -1
  32. package/dist/core/package-manager.js +13 -6
  33. package/dist/core/package-manager.js.map +1 -1
  34. package/dist/core/pi-server-client.d.ts.map +1 -1
  35. package/dist/core/pi-server-client.js +4 -10
  36. package/dist/core/pi-server-client.js.map +1 -1
  37. package/dist/core/resource-loader.d.ts +15 -0
  38. package/dist/core/resource-loader.d.ts.map +1 -1
  39. package/dist/core/resource-loader.js +63 -9
  40. package/dist/core/resource-loader.js.map +1 -1
  41. package/dist/core/sdk.d.ts +2 -5
  42. package/dist/core/sdk.d.ts.map +1 -1
  43. package/dist/core/sdk.js +3 -24
  44. package/dist/core/sdk.js.map +1 -1
  45. package/dist/extensions/llama/provider.d.ts.map +1 -1
  46. package/dist/extensions/llama/provider.js +1 -1
  47. package/dist/extensions/llama/provider.js.map +1 -1
  48. package/dist/main.d.ts.map +1 -1
  49. package/dist/main.js +43 -0
  50. package/dist/main.js.map +1 -1
  51. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  52. package/dist/modes/interactive/components/model-selector.js +4 -1
  53. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  54. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  55. package/dist/modes/interactive/interactive-mode.js +20 -6
  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 +13 -0
  59. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  60. package/docs/custom-provider.md +9 -3
  61. package/docs/extensions.md +3 -1
  62. package/docs/providers.md +1 -0
  63. package/docs/session-format.md +2 -0
  64. package/examples/extensions/custom-provider-anthropic/index.ts +8 -2
  65. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  66. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  67. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  68. package/examples/extensions/gondolin/package-lock.json +2 -2
  69. package/examples/extensions/gondolin/package.json +1 -1
  70. package/examples/extensions/sandbox/package-lock.json +2 -2
  71. package/examples/extensions/sandbox/package.json +1 -1
  72. package/examples/extensions/with-deps/package-lock.json +2 -2
  73. package/examples/extensions/with-deps/package.json +1 -1
  74. package/examples/sdk/12-full-control.ts +2 -0
  75. package/package.json +5 -5
@@ -1106,7 +1106,12 @@ export class InteractiveMode {
1106
1106
  }
1107
1107
  }
1108
1108
  if (showListing) {
1109
- const contextFiles = this.session.resourceLoader.getAgentsFiles().agentsFiles;
1109
+ const systemPromptSource = this.session.resourceLoader.getSystemPromptSource();
1110
+ const contextFiles = [
1111
+ ...(systemPromptSource ? [systemPromptSource] : []),
1112
+ ...this.session.resourceLoader.getAppendSystemPromptSources(),
1113
+ ...this.session.resourceLoader.getAgentsFiles().agentsFiles,
1114
+ ];
1110
1115
  if (contextFiles.length > 0) {
1111
1116
  this.loadedResourcesContainer.addChild(new Spacer(1));
1112
1117
  const contextList = contextFiles
@@ -1306,16 +1311,19 @@ export class InteractiveMode {
1306
1311
  }
1307
1312
  }
1308
1313
  async rebindCurrentSession(options = {}) {
1314
+ const session = this.session;
1309
1315
  this.unsubscribe?.();
1310
1316
  this.unsubscribe = undefined;
1311
1317
  this.applyRuntimeSettings();
1312
1318
  if (options.renderBeforeBind) {
1313
1319
  this.renderCurrentSessionState();
1314
1320
  this.subscribeToAgent();
1315
- await this.bindCurrentSessionExtensions();
1316
1321
  }
1317
- else {
1318
- await this.bindCurrentSessionExtensions();
1322
+ await this.bindCurrentSessionExtensions();
1323
+ if (this.session !== session) {
1324
+ return;
1325
+ }
1326
+ if (!options.renderBeforeBind) {
1319
1327
  this.subscribeToAgent();
1320
1328
  }
1321
1329
  await this.updateAvailableProviderCount();
@@ -1361,6 +1369,7 @@ export class InteractiveMode {
1361
1369
  sessionManager: this.sessionManager,
1362
1370
  modelRegistry: extensionRunner.getModelRegistry(),
1363
1371
  model: this.session.model,
1372
+ scopedModels: this.session.scopedModels,
1364
1373
  thinkingLevel: this.session.thinkingLevel,
1365
1374
  isIdle: () => this.session.isIdle,
1366
1375
  isProjectTrusted: () => this.settingsManager.isProjectTrusted(),
@@ -3134,7 +3143,7 @@ export class InteractiveMode {
3134
3143
  }
3135
3144
  }
3136
3145
  }
3137
- this.ui.requestRender();
3146
+ this.showStatus(`Tool output: ${expanded ? "expanded" : "collapsed"}`);
3138
3147
  }
3139
3148
  toggleThinkingBlockVisibility() {
3140
3149
  this.hideThinkingBlock = !this.hideThinkingBlock;
@@ -3859,7 +3868,7 @@ export class InteractiveMode {
3859
3868
  this.showSelector((done) => {
3860
3869
  const selector = new TreeSelectorComponent(tree, realLeafId, this.ui.terminal.rows, async (entryId) => {
3861
3870
  // Selecting the current leaf is a no-op (already there)
3862
- if (entryId === realLeafId) {
3871
+ if (entryId === this.sessionManager.getLeafId()) {
3863
3872
  done();
3864
3873
  this.showStatus("Already at this point");
3865
3874
  return;
@@ -3894,6 +3903,11 @@ export class InteractiveMode {
3894
3903
  break;
3895
3904
  }
3896
3905
  }
3906
+ // The user committed to navigating: stop the active response first.
3907
+ if (this.session.isStreaming) {
3908
+ this.restoreQueuedMessagesToEditor();
3909
+ await this.session.abort();
3910
+ }
3897
3911
  // Set up escape handler and status indicator if summarizing
3898
3912
  let showingSummaryIndicator = false;
3899
3913
  const originalOnEscape = this.defaultEditor.onEscape;