@codingame/monaco-vscode-chat-service-override 31.0.1 → 32.0.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 (343) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +22 -5
  3. package/package.json +5 -5
  4. package/vscode/src/vs/base/common/defaultAccount.d.ts +69 -0
  5. package/vscode/src/vs/base/common/defaultAccount.js +12 -0
  6. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +91 -22
  7. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +301 -68
  8. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +24 -5
  9. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +89 -16
  10. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +17 -5
  11. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +73 -10
  12. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +32 -6
  13. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +32 -20
  14. package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.d.ts +37 -0
  15. package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.js +15 -0
  16. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +242 -201
  17. package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
  18. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +35 -0
  19. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +106 -0
  20. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +38 -30
  21. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +2 -1
  22. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +114 -4
  23. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +10 -10
  24. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +52 -19
  25. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +42 -0
  26. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +7 -0
  27. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +42 -41
  28. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +6 -6
  29. package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +15 -0
  30. package/vscode/src/vs/platform/agentHost/common/transportConstants.js +6 -0
  31. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +4 -3
  32. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +4 -3
  33. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +4 -2
  34. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +15 -7
  35. package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.d.ts +19 -0
  36. package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.js +17 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -10
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +64 -59
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +31 -16
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +18 -9
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +16 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +8 -8
  47. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +30 -5
  48. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  49. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +8 -7
  50. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  51. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  52. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  53. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +12 -12
  54. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
  55. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +27 -18
  56. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  57. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +11 -11
  58. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  59. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +21 -20
  60. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +22 -22
  61. package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.d.ts +12 -0
  62. package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.js +171 -0
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +1 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +4 -4
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +1 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -2
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +12 -10
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +0 -3
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -17
  72. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.d.ts +28 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +99 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +2 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +11 -4
  76. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +9 -3
  77. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +63 -53
  78. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +2 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +10 -7
  80. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +3 -3
  81. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  82. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  83. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  84. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -4
  85. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -48
  86. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  87. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  88. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +5 -0
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +8 -4
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +99 -39
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +2 -2
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +17 -30
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +78 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +38 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +35 -37
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +347 -326
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +6 -2
  98. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +1 -11
  99. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +113 -109
  100. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +37 -15
  101. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +436 -134
  102. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  103. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +2 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +52 -26
  105. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -1
  106. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +2 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +13 -5
  108. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +23 -0
  109. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +60 -0
  110. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +25 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +93 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +9 -2
  113. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +73 -104
  114. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +272 -41
  115. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +12 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +30 -1
  117. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +430 -185
  118. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +5 -2
  119. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +44 -3
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +480 -279
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chat.view.contribution.d.ts +1 -0
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chat.view.contribution.js +5 -0
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.d.ts +138 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.js +221 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +84 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +1216 -0
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +2 -1
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +32 -4
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +26 -19
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +28 -25
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +25 -24
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -1
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +68 -33
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +3 -2
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +1 -0
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +650 -6
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +2 -2
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +46 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +533 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +29 -0
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +390 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.d.ts +101 -0
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +509 -0
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +18 -3
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +11 -11
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +3 -2
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +130 -0
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +276 -0
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -7
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +1 -7
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +6 -87
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -1
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +116 -182
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +12 -39
  172. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  173. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
  174. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  175. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +61 -41
  176. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  177. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  178. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +27 -27
  179. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -0
  180. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +16 -13
  181. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +20 -0
  182. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +106 -36
  183. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +25 -7
  184. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +629 -425
  185. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +9 -1
  186. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +105 -29
  187. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.d.ts +1 -0
  188. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +175 -148
  189. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +20 -33
  190. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +9 -2
  191. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
  192. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  193. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  194. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  195. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  196. package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.d.ts +58 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.js +339 -0
  198. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  199. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/media/planReviewFeedback.css +160 -0
  200. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.d.ts +9 -0
  201. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +123 -0
  202. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.d.ts +37 -0
  203. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +572 -0
  204. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.d.ts +36 -0
  205. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.js +167 -0
  206. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +49 -7
  207. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +315 -19
  208. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +45 -24
  209. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
  210. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
  211. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  212. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +44 -40
  213. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +5 -5
  214. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  215. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +4 -1
  216. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  217. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  218. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  219. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  220. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  221. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
  222. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
  223. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +9 -1
  224. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +111 -52
  225. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +3 -7
  226. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +13 -47
  227. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +3 -2
  228. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +4 -8
  229. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.d.ts +18 -0
  230. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.js +56 -0
  231. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +3 -7
  232. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +14 -52
  233. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  234. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +3 -1
  235. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +17 -2
  236. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
  237. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +23 -12
  238. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +39 -0
  239. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +136 -0
  240. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +72 -0
  241. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +56 -0
  242. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +7 -0
  243. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +14 -1
  244. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +41 -26
  245. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +30 -12
  246. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  247. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  248. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +2 -5
  249. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +25 -6
  250. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  251. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +2 -2
  252. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +5 -4
  253. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -0
  254. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +108 -45
  255. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +7 -3
  256. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +3 -1
  257. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +20 -1
  258. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +65 -26
  259. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +5 -3
  260. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +38 -11
  261. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +17 -1
  262. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +165 -16
  263. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +1 -0
  264. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +62 -1
  265. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
  266. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -1
  267. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  268. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -3
  269. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +15 -21
  270. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +1 -3
  271. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +18 -24
  272. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +4 -2
  273. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +203 -180
  274. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  275. package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.d.ts +30 -0
  276. package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.js +35 -0
  277. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +2 -1
  278. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +27 -2
  279. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
  280. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +14 -49
  281. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +0 -16
  282. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +35 -177
  283. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -8
  284. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -2
  285. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +2 -3
  286. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +4 -4
  287. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
  288. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  289. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  290. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +13 -13
  291. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  292. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  293. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  294. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  295. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  296. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +29 -3
  297. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +129 -3
  298. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -2
  299. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +2 -1
  300. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +14 -6
  301. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  302. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +1 -4
  303. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +12 -38
  304. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  305. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +4 -4
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +12 -7
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +77 -70
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  313. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.d.ts +32 -0
  314. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +232 -0
  315. package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.d.ts +83 -0
  316. package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.js +243 -0
  317. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +0 -749
  318. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +0 -14
  319. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +0 -17
  320. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +0 -5
  321. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +0 -40
  322. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +0 -14
  323. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +0 -131
  324. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +0 -363
  325. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +0 -24
  326. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +0 -306
  327. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -23
  328. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +0 -97
  329. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatStatusWidget.css +0 -57
  330. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +0 -50
  331. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +0 -29
  332. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +0 -50
  333. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +0 -78
  334. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +0 -77
  335. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +0 -120
  336. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -10
  337. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +0 -23
  338. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +0 -242
  339. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +0 -1701
  340. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +0 -191
  341. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +0 -728
  342. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +0 -14
  343. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +0 -69
@@ -4,11 +4,11 @@ import type { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/co
4
4
  import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
5
5
  import type { ISyncedCustomization } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentPluginManager";
6
6
  import type { IAgentSubscription } from "./state/agentSubscription.js";
7
- import type { ICreateTerminalParams, IResolveSessionConfigResult, ISessionConfigCompletionsResult } from "./state/protocol/commands.js";
8
- import { IProtectedResourceMetadata, type IConfigSchema, type IFileEdit, type IModelSelection, type IToolDefinition } from "@codingame/monaco-vscode-xterm-common/vscode/vs/platform/agentHost/common/state/protocol/state";
9
- import type { IActionEnvelope, INotification, ISessionAction, ITerminalAction } from "./state/sessionActions.js";
10
- import type { IResourceCopyParams, IResourceCopyResult, IResourceDeleteParams, IResourceDeleteResult, IResourceListResult, IResourceMoveParams, IResourceMoveResult, IResourceReadResult, IResourceWriteParams, IResourceWriteResult } from "./state/sessionProtocol.js";
11
- import { AttachmentType, ComponentToState, SessionInputResponseKind, SessionStatus, StateComponents, type ICustomizationRef, type IPendingMessage, type IRootState, type ISessionInputAnswer, type ISessionInputRequest, type IToolCallResult, type IToolResultContent, type PolicyState, type StringOrMarkdown } from "@codingame/monaco-vscode-xterm-common/vscode/vs/platform/agentHost/common/state/sessionState";
7
+ import type { CompletionsParams, CompletionsResult, CreateTerminalParams, ResolveSessionConfigResult, SessionConfigCompletionsResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/commands";
8
+ import { ProtectedResourceMetadata, type ConfigSchema, type FileEdit, type MessageAttachment, type ModelSelection, type SessionActiveClient, type ToolCallPendingConfirmationState, type ToolDefinition } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
9
+ import type { ActionEnvelope, INotification, IRootConfigChangedAction, SessionAction, TerminalAction } from "./state/sessionActions.js";
10
+ import type { ResourceCopyParams, ResourceCopyResult, ResourceDeleteParams, ResourceDeleteResult, ResourceListResult, ResourceMoveParams, ResourceMoveResult, ResourceReadResult, ResourceWriteParams, ResourceWriteResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/sessionProtocol";
11
+ import { ComponentToState, SessionInputResponseKind, SessionStatus, StateComponents, type CustomizationRef, type PendingMessage, type RootState, type SessionCustomization, type SessionInputAnswer, type SessionMeta, type ToolCallResult, type Turn, type PolicyState } from "@codingame/monaco-vscode-xterm-common/vscode/vs/platform/agentHost/common/state/sessionState";
12
12
  export declare enum AgentHostIpcChannels {
13
13
  /** Channel for the agent host service on the main-process side */
14
14
  AgentHost = "agentHost",
@@ -21,10 +21,39 @@ export declare enum AgentHostIpcChannels {
21
21
  export declare const AgentHostEnabledSettingId = "chat.agentHost.enabled";
22
22
  /** Configuration key that controls whether per-host IPC traffic output channels are created. */
23
23
  export declare const AgentHostIpcLoggingSettingId = "chat.agentHost.ipcLoggingEnabled";
24
+ /** Configuration key that controls whether AHP JSONL logs are written for agent host transports. */
25
+ export declare const AgentHostAhpJsonlLoggingSettingId = "chat.agentHost.ahpJsonlLoggingEnabled";
26
+ /**
27
+ * Configuration key that holds the absolute path to a locally-installed
28
+ * `@anthropic-ai/claude-agent-sdk` package. When non-empty, the Claude agent
29
+ * provider is registered inside the agent host and the SDK module is loaded
30
+ * via dynamic `import()` from this path. When empty (the default), the
31
+ * Claude provider is not registered. The SDK is intentionally not bundled
32
+ * with VS Code; users opting into the Claude agent install the SDK
33
+ * themselves and point this setting at it. The agent host process must be
34
+ * restarted for changes to take effect.
35
+ */
36
+ export declare const AgentHostClaudeAgentSdkPathSettingId = "chat.agentHost.claudeAgent.path";
37
+ /**
38
+ * Environment variable that holds the absolute path to a locally-installed
39
+ * `@anthropic-ai/claude-agent-sdk` package. When set to a non-empty value,
40
+ * the agent host process registers the Claude agent provider and loads the
41
+ * SDK module from this path. Set by the agent host starters from
42
+ * {@link AgentHostClaudeAgentSdkPathSettingId}, and may also be set directly
43
+ * by developers as an override.
44
+ */
45
+ export declare const AgentHostClaudeSdkPathEnvVar = "VSCODE_AGENT_HOST_CLAUDE_SDK_PATH";
24
46
  /** Result of starting the agent host WebSocket server on-demand. */
25
47
  export interface IAgentHostSocketInfo {
26
48
  readonly socketPath: string;
27
49
  }
50
+ /** Inspector listener information for the agent host process. */
51
+ export interface IAgentHostInspectInfo {
52
+ readonly host: string;
53
+ readonly port: number;
54
+ /** A `devtools://` URL that can be opened with `INativeHostService.openDevToolsWindow`. */
55
+ readonly devtoolsUrl: string;
56
+ }
28
57
  /**
29
58
  * IPC service exposed on the {@link AgentHostIpcChannels.ConnectionTracker}
30
59
  * channel. Used by the server process for lifetime management and by the
@@ -38,6 +67,13 @@ export interface IConnectionTrackerService {
38
67
  * If a server is already running, returns the existing info.
39
68
  */
40
69
  startWebSocketServer(): Promise<IAgentHostSocketInfo>;
70
+ /**
71
+ * Get inspector listener info for the agent host process. If the inspector
72
+ * is not currently active and `tryEnable` is true, opens the inspector on
73
+ * a random local port. Returns `undefined` if the inspector cannot be
74
+ * enabled (e.g. running in an environment without `node:inspector`).
75
+ */
76
+ getInspectInfo(tryEnable: boolean): Promise<IAgentHostInspectInfo | undefined>;
41
77
  }
42
78
  export interface IAgentSessionMetadata {
43
79
  readonly session: URI;
@@ -46,11 +82,22 @@ export interface IAgentSessionMetadata {
46
82
  readonly project?: IAgentSessionProjectInfo;
47
83
  readonly summary?: string;
48
84
  readonly status?: SessionStatus;
49
- readonly model?: IModelSelection;
85
+ /** Human-readable description of what the session is currently doing. */
86
+ readonly activity?: string;
87
+ readonly model?: ModelSelection;
50
88
  readonly workingDirectory?: URI;
89
+ readonly customizationDirectory?: URI;
51
90
  readonly isRead?: boolean;
52
- readonly isDone?: boolean;
53
- readonly diffs?: readonly IFileEdit[];
91
+ readonly isArchived?: boolean;
92
+ readonly diffs?: readonly FileEdit[];
93
+ /**
94
+ * Side-channel metadata mirroring {@link SessionState._meta}, propagated
95
+ * to clients via per-session state subscriptions.
96
+ * Producers SHOULD use namespaced keys; consumers MUST ignore unknown
97
+ * keys. Use the typed accessors in `sessionState.ts` (e.g.
98
+ * `readSessionGitState`) for well-known slots.
99
+ */
100
+ readonly _meta?: SessionMeta;
54
101
  }
55
102
  export interface IAgentSessionProjectInfo {
56
103
  readonly uri: URI;
@@ -61,6 +108,26 @@ export interface IAgentCreateSessionResult {
61
108
  readonly project?: IAgentSessionProjectInfo;
62
109
  /** The resolved working directory, which may differ from the requested one (e.g. worktree). */
63
110
  readonly workingDirectory?: URI;
111
+ /**
112
+ * `true` when the agent only allocated an in-memory placeholder for this
113
+ * session (no SDK session, no worktree, no on-disk state). Materialization
114
+ * happens lazily on the first {@link IAgent.sendMessage}, at which point
115
+ * the agent fires {@link IAgent.onDidMaterializeSession}. The
116
+ * {@link IAgentService} uses this flag to defer the `sessionAdded` protocol
117
+ * notification so observers don't see the session in their list until it
118
+ * has been persisted.
119
+ */
120
+ readonly provisional?: boolean;
121
+ }
122
+ /**
123
+ * Payload of {@link IAgent.onDidMaterializeSession}. Fired once per session
124
+ * when a previously {@link IAgentCreateSessionResult.provisional} session has
125
+ * its SDK session, worktree (if any), and on-disk metadata in place.
126
+ */
127
+ export interface IAgentMaterializeSessionEvent {
128
+ readonly session: URI;
129
+ readonly workingDirectory: URI | undefined;
130
+ readonly project: IAgentSessionProjectInfo | undefined;
64
131
  }
65
132
  export type AgentProvider = string;
66
133
  /** Metadata describing an agent backend, discovered over IPC. */
@@ -73,7 +140,7 @@ export interface IAgentDescriptor {
73
140
  * Parameters for the `authenticate` command.
74
141
  * Analogous to sending `Authorization: Bearer <token>` (RFC 6750 section 2.1).
75
142
  */
76
- export interface IAuthenticateParams {
143
+ export interface AuthenticateParams {
77
144
  /**
78
145
  * The `resource` identifier from the server's
79
146
  * {@link IAuthorizationProtectedResourceMetadata} that this token targets.
@@ -85,16 +152,33 @@ export interface IAuthenticateParams {
85
152
  /**
86
153
  * Result of the `authenticate` command.
87
154
  */
88
- export interface IAuthenticateResult {
155
+ export interface AuthenticateResult {
89
156
  /** Whether the token was accepted. */
90
157
  readonly authenticated: boolean;
91
158
  }
159
+ /**
160
+ * Canonical {@link ProtectedResourceMetadata} for the GitHub Copilot
161
+ * resource. Shared between every agent provider that consumes a GitHub
162
+ * Copilot bearer token (e.g. Copilot CLI, Claude) so they advertise an
163
+ * identical resource identifier to the auth flow — clients dispatch by
164
+ * `resource`, and divergent metadata would silently route the same
165
+ * token down separate code paths.
166
+ */
167
+ export declare const GITHUB_COPILOT_PROTECTED_RESOURCE: ProtectedResourceMetadata;
92
168
  export interface IAgentCreateSessionConfig {
93
169
  readonly provider?: AgentProvider;
94
- readonly model?: IModelSelection;
170
+ readonly model?: ModelSelection;
95
171
  readonly session?: URI;
96
172
  readonly workingDirectory?: URI;
97
- readonly config?: Record<string, string>;
173
+ readonly config?: Record<string, unknown>;
174
+ /**
175
+ * Eagerly claim the active client role for the new session. When provided,
176
+ * the server initializes the session with this client as the active
177
+ * client, equivalent to dispatching a `session/activeClientChanged`
178
+ * action immediately after creation. The `clientId` MUST match the
179
+ * connection's own `clientId`.
180
+ */
181
+ readonly activeClient?: SessionActiveClient;
98
182
  /** Fork from an existing session at a specific turn. */
99
183
  readonly fork?: {
100
184
  readonly session: URI;
@@ -109,199 +193,107 @@ export interface IAgentCreateSessionConfig {
109
193
  readonly turnIdMapping?: ReadonlyMap<string, string>;
110
194
  };
111
195
  }
112
- export declare const AgentHostSessionConfigBranchNameHintKey = "branchNameHint";
113
196
  export interface IAgentResolveSessionConfigParams {
114
197
  readonly provider?: AgentProvider;
115
198
  readonly workingDirectory?: URI;
116
- readonly config?: Record<string, string>;
199
+ readonly config?: Record<string, unknown>;
117
200
  }
118
201
  export interface IAgentSessionConfigCompletionsParams extends IAgentResolveSessionConfigParams {
119
202
  readonly property: string;
120
203
  readonly query?: string;
121
204
  }
122
- /** Serializable attachment passed alongside a message to the agent host. */
123
- export interface IAgentAttachment {
124
- readonly type: AttachmentType;
125
- readonly path: string;
126
- readonly displayName?: string;
127
- /** For selections: the selected text. */
128
- readonly text?: string;
129
- /** For selections: line/character range. */
130
- readonly selection?: {
131
- readonly start: {
132
- readonly line: number;
133
- readonly character: number;
134
- };
135
- readonly end: {
136
- readonly line: number;
137
- readonly character: number;
138
- };
139
- };
140
- }
141
205
  /** Serializable model information from the agent host. */
142
206
  export interface IAgentModelInfo {
143
207
  readonly provider: AgentProvider;
144
208
  readonly id: string;
145
209
  readonly name: string;
146
- readonly maxContextWindow: number;
210
+ readonly maxContextWindow?: number;
147
211
  readonly supportsVision: boolean;
148
- readonly configSchema?: IConfigSchema;
212
+ readonly configSchema?: ConfigSchema;
149
213
  readonly policyState?: PolicyState;
214
+ readonly _meta?: Record<string, unknown>;
150
215
  }
151
- interface IAgentProgressEventBase {
216
+ /**
217
+ * A signal emitted by an agent during session execution.
218
+ *
219
+ * Most signals carry a protocol {@link SessionAction} directly via the
220
+ * `kind: 'action'` shape, eliminating a parallel event ontology. A small
221
+ * number of cases that have no clean protocol action (permission
222
+ * auto-approval, subagent session creation, steering message
223
+ * acknowledgment) remain as discriminated non-action signals so the host
224
+ * can perform side effects before — or instead of — dispatching an action.
225
+ */
226
+ export type AgentSignal = IAgentActionSignal | IAgentToolPendingConfirmationSignal | IAgentSubagentStartedSignal | IAgentSteeringConsumedSignal;
227
+ /**
228
+ * Carries a protocol {@link SessionAction} produced by an agent. The host
229
+ * dispatches the action through the state manager after routing via
230
+ * {@link IAgentActionSignal.parentToolCallId} (if set).
231
+ *
232
+ * Agents are responsible for populating `session` and any `turnId` /
233
+ * `partId` fields on the action.
234
+ */
235
+ export interface IAgentActionSignal {
236
+ readonly kind: "action";
237
+ /** Top-level session URI. For inner subagent events this is the parent session — see {@link parentToolCallId}. */
152
238
  readonly session: URI;
153
- }
154
- /** Streaming text delta from the assistant (`assistant.message_delta`). */
155
- export interface IAgentDeltaEvent extends IAgentProgressEventBase {
156
- readonly type: "delta";
157
- readonly messageId: string;
158
- readonly content: string;
159
- readonly parentToolCallId?: string;
160
- }
161
- /** A complete assistant message (`assistant.message`), used for history reconstruction. */
162
- export interface IAgentMessageEvent extends IAgentProgressEventBase {
163
- readonly type: "message";
164
- readonly role: "user" | "assistant";
165
- readonly messageId: string;
166
- readonly content: string;
167
- readonly toolRequests?: readonly {
168
- readonly toolCallId: string;
169
- readonly name: string;
170
- /** Serialized JSON of arguments, if available. */
171
- readonly arguments?: string;
172
- readonly type?: "function" | "custom";
173
- }[];
174
- readonly reasoningOpaque?: string;
175
- readonly reasoningText?: string;
176
- readonly encryptedContent?: string;
239
+ /** Protocol action to dispatch. */
240
+ readonly action: SessionAction;
241
+ /** If set, route the action to the subagent session belonging to this tool call. */
177
242
  readonly parentToolCallId?: string;
178
243
  }
179
- /** The session has finished processing and is waiting for input (`session.idle`). */
180
- export interface IAgentIdleEvent extends IAgentProgressEventBase {
181
- readonly type: "idle";
182
- }
183
- /** A tool has started executing (`tool.execution_start`). */
184
- export interface IAgentToolStartEvent extends IAgentProgressEventBase {
185
- readonly type: "tool_start";
186
- readonly toolCallId: string;
187
- readonly toolName: string;
188
- /** Human-readable display name for this tool. */
189
- readonly displayName: string;
190
- /** Message describing the tool invocation in progress (e.g., "Running `echo hello`"). */
191
- readonly invocationMessage: StringOrMarkdown;
192
- /** A representative input string for display in the UI (e.g., the shell command). */
193
- readonly toolInput?: string;
194
- /** Hint for the renderer about how to display this tool (e.g., 'terminal' for shell commands, 'subagent' for subagent-spawning tools). */
195
- readonly toolKind?: "terminal" | "subagent";
196
- /** Language identifier for syntax highlighting (e.g., 'shellscript', 'powershell'). Used with toolKind 'terminal'. */
197
- readonly language?: string;
198
- /** Serialized JSON of the tool arguments, if available. */
199
- readonly toolArguments?: string;
200
- /**
201
- * For `toolKind === 'subagent'`, the internal name of the agent being
202
- * spawned (e.g. 'explore'). Adapters are responsible for extracting this
203
- * from their SDK-specific tool argument shape.
204
- */
205
- readonly subagentAgentName?: string;
206
- /**
207
- * For `toolKind === 'subagent'`, a human-readable description of the
208
- * subagent's task. Adapters are responsible for extracting this from
209
- * their SDK-specific tool argument shape.
210
- */
211
- readonly subagentDescription?: string;
212
- readonly mcpServerName?: string;
213
- readonly mcpToolName?: string;
214
- readonly parentToolCallId?: string;
244
+ /**
245
+ * A tool has finished collecting parameters and needs the host to decide
246
+ * whether it should run (or, mid-execution, re-confirm). The host applies
247
+ * auto-approval logic over {@link permissionKind} / {@link permissionPath}
248
+ * (see `SessionPermissionManager.getAutoApproval`) and then dispatches the
249
+ * appropriate `SessionToolCallReady` action — with confirmation options
250
+ * baked in when the user must approve, or with `confirmed: NotNeeded` when
251
+ * the host auto-approved.
252
+ *
253
+ * Kept as a non-action signal because the host owns this approval policy;
254
+ * the agent only describes the tool call and the kind of permission being
255
+ * requested. The {@link state} field carries the protocol-shaped tool-call
256
+ * state and is dispatched verbatim into the action.
257
+ */
258
+ export interface IAgentToolPendingConfirmationSignal {
259
+ readonly kind: "pending_confirmation";
260
+ readonly session: URI;
261
+ /** Protocol-shaped pending-confirmation state, dispatched verbatim into `SessionToolCallReady`. */
262
+ readonly state: ToolCallPendingConfirmationState;
263
+ /** Host-only auto-approval kind (not part of the dispatched action). */
264
+ readonly permissionKind?: "shell" | "write" | "mcp" | "read" | "url" | "custom-tool" | "hook" | "memory";
265
+ /** Host-only auto-approval path target (not part of the dispatched action). */
266
+ readonly permissionPath?: string;
215
267
  /**
216
- * If set, this tool is provided by a client and the identified client
217
- * is responsible for executing it. Maps to `toolClientId` in the
218
- * protocol `session/toolCallStart` action.
268
+ * If set, the tool call belongs to the subagent rooted at this
269
+ * parent tool call. Used by the host to route the resulting
270
+ * `SessionToolCallReady` to the subagent session — otherwise the
271
+ * action would land on the parent session, where there is no
272
+ * matching `SessionToolCallStart`.
219
273
  */
220
- readonly toolClientId?: string;
221
- }
222
- /** A tool has finished executing (`tool.execution_complete`). */
223
- export interface IAgentToolCompleteEvent extends IAgentProgressEventBase {
224
- readonly type: "tool_complete";
225
- readonly toolCallId: string;
226
- /** Tool execution result, matching the protocol {@link IToolCallResult} shape. */
227
- readonly result: IToolCallResult;
228
- readonly isUserRequested?: boolean;
229
- /** Serialized JSON of tool-specific telemetry data. */
230
- readonly toolTelemetry?: string;
231
274
  readonly parentToolCallId?: string;
232
275
  }
233
- /** The session title has been updated. */
234
- export interface IAgentTitleChangedEvent extends IAgentProgressEventBase {
235
- readonly type: "title_changed";
236
- readonly title: string;
237
- }
238
- /** An error occurred during session processing. */
239
- export interface IAgentErrorEvent extends IAgentProgressEventBase {
240
- readonly type: "error";
241
- readonly errorType: string;
242
- readonly message: string;
243
- readonly stack?: string;
244
- }
245
- /** Token usage information for a request. */
246
- export interface IAgentUsageEvent extends IAgentProgressEventBase {
247
- readonly type: "usage";
248
- readonly inputTokens?: number;
249
- readonly outputTokens?: number;
250
- readonly model?: string;
251
- readonly cacheReadTokens?: number;
252
- }
253
276
  /**
254
- * A running tool requires re-confirmation (e.g. a mid-execution permission check).
255
- * Maps to `SessionToolCallReady` without `confirmed` to transition Running → PendingConfirmation.
277
+ * A subagent was spawned by a tool call. The host creates a child session
278
+ * silently and routes subsequent inner-tool events to it.
279
+ *
280
+ * Kept as a non-action signal because subagent session creation has no
281
+ * protocol action — it's a host-side composition primitive.
256
282
  */
257
- export interface IAgentToolReadyEvent extends IAgentProgressEventBase {
258
- readonly type: "tool_ready";
259
- readonly toolCallId: string;
260
- /** Message describing what confirmation is needed. */
261
- readonly invocationMessage: StringOrMarkdown;
262
- /** Raw tool input to display. */
263
- readonly toolInput?: string;
264
- /** Short title for the confirmation prompt. */
265
- readonly confirmationTitle?: StringOrMarkdown;
266
- /** Kind of permission being requested. */
267
- readonly permissionKind?: "shell" | "write" | "mcp" | "read" | "url" | "custom-tool";
268
- /** File path associated with the permission request. */
269
- readonly permissionPath?: string;
270
- /** File edits this tool call will perform, for preview before confirmation. */
271
- readonly edits?: {
272
- items: IFileEdit[];
273
- };
274
- }
275
- /** Streaming reasoning/thinking content from the assistant. */
276
- export interface IAgentReasoningEvent extends IAgentProgressEventBase {
277
- readonly type: "reasoning";
278
- readonly content: string;
279
- }
280
- /** A steering message was consumed (sent to the model). */
281
- export interface IAgentSteeringConsumedEvent extends IAgentProgressEventBase {
282
- readonly type: "steering_consumed";
283
- readonly id: string;
284
- }
285
- /** The agent's ask_user tool is requesting user input. */
286
- export interface IAgentUserInputRequestEvent extends IAgentProgressEventBase {
287
- readonly type: "user_input_request";
288
- readonly request: ISessionInputRequest;
289
- }
290
- /** A subagent has been spawned by a tool call. */
291
- export interface IAgentSubagentStartedEvent extends IAgentProgressEventBase {
292
- readonly type: "subagent_started";
283
+ export interface IAgentSubagentStartedSignal {
284
+ readonly kind: "subagent_started";
285
+ readonly session: URI;
293
286
  readonly toolCallId: string;
294
287
  readonly agentName: string;
295
288
  readonly agentDisplayName: string;
296
289
  readonly agentDescription?: string;
297
290
  }
298
- /** Partial content update for a running tool call (e.g. terminal URI available). */
299
- export interface IAgentToolContentChangedEvent extends IAgentProgressEventBase {
300
- readonly type: "tool_content_changed";
301
- readonly toolCallId: string;
302
- readonly content: IToolResultContent[];
291
+ /** A steering message was consumed (sent to the model). */
292
+ export interface IAgentSteeringConsumedSignal {
293
+ readonly kind: "steering_consumed";
294
+ readonly session: URI;
295
+ readonly id: string;
303
296
  }
304
- export type IAgentProgressEvent = IAgentDeltaEvent | IAgentMessageEvent | IAgentIdleEvent | IAgentToolStartEvent | IAgentToolReadyEvent | IAgentToolCompleteEvent | IAgentTitleChangedEvent | IAgentErrorEvent | IAgentUsageEvent | IAgentReasoningEvent | IAgentSteeringConsumedEvent | IAgentUserInputRequestEvent | IAgentSubagentStartedEvent | IAgentToolContentChangedEvent;
305
297
  export declare namespace AgentSession {
306
298
  /**
307
299
  * Creates a session URI from a provider name and raw session ID.
@@ -328,15 +320,24 @@ export interface IAgent {
328
320
  /** Unique identifier for this provider (e.g. `'copilot'`). */
329
321
  readonly id: AgentProvider;
330
322
  /** Fires when the provider streams progress for a session. */
331
- readonly onDidSessionProgress: Event<IAgentProgressEvent>;
323
+ readonly onDidSessionProgress: Event<AgentSignal>;
324
+ /**
325
+ * Fires once when a previously
326
+ * {@link IAgentCreateSessionResult.provisional} session has been
327
+ * materialized — i.e. its SDK session, worktree (if any), and on-disk
328
+ * metadata are all in place. The {@link IAgentService} uses this event
329
+ * to fire the deferred `sessionAdded` notification with the now-final
330
+ * summary.
331
+ */
332
+ readonly onDidMaterializeSession?: Event<IAgentMaterializeSessionEvent>;
332
333
  /** Create a new session. Returns server-owned session metadata. */
333
334
  createSession(config?: IAgentCreateSessionConfig): Promise<IAgentCreateSessionResult>;
334
335
  /** Resolve the dynamic configuration schema for creating a session. */
335
- resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<IResolveSessionConfigResult>;
336
+ resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<ResolveSessionConfigResult>;
336
337
  /** Return dynamic completions for a session configuration property. */
337
- sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<ISessionConfigCompletionsResult>;
338
+ sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<SessionConfigCompletionsResult>;
338
339
  /** Send a user message into an existing session. */
339
- sendMessage(session: URI, prompt: string, attachments?: IAgentAttachment[], turnId?: string): Promise<void>;
340
+ sendMessage(session: URI, prompt: string, attachments?: readonly MessageAttachment[], turnId?: string): Promise<void>;
340
341
  /**
341
342
  * Called when the session's pending (steering) message changes.
342
343
  * The agent harness decides how to react — e.g. inject steering
@@ -345,27 +346,52 @@ export interface IAgent {
345
346
  * Queued messages are consumed on the server side and are not
346
347
  * forwarded to the agent; `queuedMessages` will always be empty.
347
348
  */
348
- setPendingMessages?(session: URI, steeringMessage: IPendingMessage | undefined, queuedMessages: readonly IPendingMessage[]): void;
349
- /** Retrieve all session events/messages for reconstruction. */
350
- getSessionMessages(session: URI): Promise<(IAgentMessageEvent | IAgentToolStartEvent | IAgentToolCompleteEvent | IAgentSubagentStartedEvent)[]>;
349
+ setPendingMessages?(session: URI, steeringMessage: PendingMessage | undefined, queuedMessages: readonly PendingMessage[]): void;
350
+ /**
351
+ * Retrieve the reconstructed turns for a session, used when restoring
352
+ * sessions from persistent storage. Each agent owns the conversion from
353
+ * its SDK-specific event log to protocol {@link Turn}s, including
354
+ * subagent sessions (callers pass the subagent URI to retrieve the
355
+ * child session's turns).
356
+ */
357
+ getSessionMessages(session: URI): Promise<readonly Turn[]>;
351
358
  /** Dispose a session, freeing resources. */
352
359
  disposeSession(session: URI): Promise<void>;
353
360
  /** Abort the current turn, stopping any in-flight processing. */
354
361
  abortSession(session: URI): Promise<void>;
355
362
  /** Change the model for an existing session. */
356
- changeModel(session: URI, model: IModelSelection): Promise<void>;
363
+ changeModel(session: URI, model: ModelSelection): Promise<void>;
357
364
  /** Respond to a pending permission request from the SDK. */
358
365
  respondToPermissionRequest(requestId: string, approved: boolean): void;
359
366
  /** Respond to a pending user input request from the SDK's ask_user tool. */
360
- respondToUserInputRequest(requestId: string, response: SessionInputResponseKind, answers?: Record<string, ISessionInputAnswer>): void;
367
+ respondToUserInputRequest(requestId: string, response: SessionInputResponseKind, answers?: Record<string, SessionInputAnswer>): void;
361
368
  /** Return the descriptor for this agent. */
362
369
  getDescriptor(): IAgentDescriptor;
363
370
  /** Available models from this provider. */
364
371
  readonly models: IObservable<readonly IAgentModelInfo[]>;
365
372
  /** List persisted sessions from this provider. */
366
373
  listSessions(): Promise<IAgentSessionMetadata[]>;
374
+ /** Retrieve metadata for a single persisted session, without enumerating the provider catalog. */
375
+ getSessionMetadata?(session: URI): Promise<IAgentSessionMetadata | undefined>;
367
376
  /** Declare protected resources this agent requires auth for (RFC 9728). */
368
- getProtectedResources(): IProtectedResourceMetadata[];
377
+ getProtectedResources(): ProtectedResourceMetadata[];
378
+ /**
379
+ * Fires when the agent's host-owned customizations change
380
+ * (loading state, resolution results, etc.), so infrastructure
381
+ * can republish {@link AgentInfo} and session customization state.
382
+ */
383
+ readonly onDidCustomizationsChange?: Event<void>;
384
+ /**
385
+ * Returns the host-owned customization refs this agent currently exposes.
386
+ *
387
+ * Used to publish baseline customization metadata on {@link AgentInfo}.
388
+ */
389
+ getCustomizations?(): readonly CustomizationRef[];
390
+ /**
391
+ * Returns the effective customization list for a session, including
392
+ * source, enablement, and loading/error status.
393
+ */
394
+ getSessionCustomizations?(session: URI): Promise<readonly SessionCustomization[]>;
369
395
  /**
370
396
  * Authenticate for a specific resource. Returns true if accepted.
371
397
  * The `resource` matches {@link IAuthorizationProtectedResourceMetadata.resource}.
@@ -377,6 +403,13 @@ export interface IAgent {
377
403
  * Optional — not all providers support truncation.
378
404
  */
379
405
  truncateSession?(session: URI, turnId?: string): Promise<void>;
406
+ /**
407
+ * Notifies the provider that a session's archived state has changed.
408
+ * Providers may use this to clean up or restore per-session resources
409
+ * (for example, removing a session-owned worktree on archive and
410
+ * recreating it on unarchive). Optional.
411
+ */
412
+ onArchivedChanged?(session: URI, isArchived: boolean): Promise<void>;
380
413
  /**
381
414
  * Receives client-provided customization refs and syncs them (e.g. copies
382
415
  * plugin files to local storage). Returns per-customization status with
@@ -384,7 +417,7 @@ export interface IAgent {
384
417
  *
385
418
  * The agent MAY defer a client restart until all active sessions are idle.
386
419
  */
387
- setClientCustomizations(clientId: string, customizations: ICustomizationRef[], progress?: (results: ISyncedCustomization[]) => void): Promise<ISyncedCustomization[]>;
420
+ setClientCustomizations(clientId: string, customizations: CustomizationRef[], progress?: (results: ISyncedCustomization[]) => void): Promise<ISyncedCustomization[]>;
388
421
  /**
389
422
  * Receives client-provided tool definitions to make available in a
390
423
  * specific session. The agent registers these as custom tools so the
@@ -397,14 +430,16 @@ export interface IAgent {
397
430
  * @param clientId The client that owns these tools.
398
431
  * @param tools The tool definitions (full replacement).
399
432
  */
400
- setClientTools(session: URI, clientId: string, tools: IToolDefinition[]): void;
433
+ setClientTools(session: URI, clientId: string, tools: ToolDefinition[]): void;
401
434
  /**
402
435
  * Called when a client completes a client-provided tool call.
403
436
  * Resolves the tool handler's deferred promise so the SDK can continue.
404
437
  *
405
438
  * @param session The session the tool call belongs to.
439
+ * @param toolCallId The id of the tool call being completed.
440
+ * @param result The result of the tool call.
406
441
  */
407
- onClientToolCallComplete(session: URI, toolCallId: string, result: IToolCallResult): void;
442
+ onClientToolCallComplete(session: URI, toolCallId: string, result: ToolCallResult): void;
408
443
  /**
409
444
  * Notifies the agent that a customization has been toggled on or off.
410
445
  * The agent MAY restart its client before the next message is sent.
@@ -425,25 +460,31 @@ export interface IAgent {
425
460
  export interface IAgentConnection {
426
461
  readonly _serviceBrand: undefined;
427
462
  readonly clientId: string;
428
- readonly rootState: IAgentSubscription<IRootState>;
463
+ readonly rootState: IAgentSubscription<RootState>;
429
464
  getSubscription<T extends StateComponents>(kind: T, resource: URI): IReference<IAgentSubscription<ComponentToState[T]>>;
430
465
  getSubscriptionUnmanaged<T extends StateComponents>(kind: T, resource: URI): IAgentSubscription<ComponentToState[T]> | undefined;
431
- dispatch(action: ISessionAction | ITerminalAction): void;
466
+ dispatch(action: SessionAction | TerminalAction | IRootConfigChangedAction): void;
432
467
  readonly onDidNotification: Event<INotification>;
433
- readonly onDidAction: Event<IActionEnvelope>;
434
- authenticate(params: IAuthenticateParams): Promise<IAuthenticateResult>;
468
+ readonly onDidAction: Event<ActionEnvelope>;
469
+ authenticate(params: AuthenticateParams): Promise<AuthenticateResult>;
435
470
  listSessions(): Promise<IAgentSessionMetadata[]>;
436
471
  createSession(config?: IAgentCreateSessionConfig): Promise<URI>;
437
- resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<IResolveSessionConfigResult>;
438
- sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<ISessionConfigCompletionsResult>;
472
+ resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<ResolveSessionConfigResult>;
473
+ sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<SessionConfigCompletionsResult>;
474
+ completions(params: CompletionsParams): Promise<CompletionsResult>;
475
+ /**
476
+ * Trigger characters announced by the connected agent host that should
477
+ * cause the client to issue a `completions` request when typed in a
478
+ * user-message input. Resolves once on first request and is cached.
479
+ */
480
+ getCompletionTriggerCharacters(): Promise<readonly string[]>;
439
481
  disposeSession(session: URI): Promise<void>;
440
- createTerminal(params: ICreateTerminalParams): Promise<void>;
482
+ createTerminal(params: CreateTerminalParams): Promise<void>;
441
483
  disposeTerminal(terminal: URI): Promise<void>;
442
- resourceList(uri: URI): Promise<IResourceListResult>;
443
- resourceRead(uri: URI): Promise<IResourceReadResult>;
444
- resourceWrite(params: IResourceWriteParams): Promise<IResourceWriteResult>;
445
- resourceCopy(params: IResourceCopyParams): Promise<IResourceCopyResult>;
446
- resourceDelete(params: IResourceDeleteParams): Promise<IResourceDeleteResult>;
447
- resourceMove(params: IResourceMoveParams): Promise<IResourceMoveResult>;
484
+ resourceList(uri: URI): Promise<ResourceListResult>;
485
+ resourceRead(uri: URI): Promise<ResourceReadResult>;
486
+ resourceWrite(params: ResourceWriteParams): Promise<ResourceWriteResult>;
487
+ resourceCopy(params: ResourceCopyParams): Promise<ResourceCopyResult>;
488
+ resourceDelete(params: ResourceDeleteParams): Promise<ResourceDeleteResult>;
489
+ resourceMove(params: ResourceMoveParams): Promise<ResourceMoveResult>;
448
490
  }
449
- export {};
@@ -9,6 +9,8 @@ var AgentHostIpcChannels;
9
9
  })(AgentHostIpcChannels || (AgentHostIpcChannels = {}));
10
10
  const AgentHostEnabledSettingId = "chat.agentHost.enabled";
11
11
  const AgentHostIpcLoggingSettingId = "chat.agentHost.ipcLoggingEnabled";
12
+ const AgentHostAhpJsonlLoggingSettingId = "chat.agentHost.ahpJsonlLoggingEnabled";
13
+ const AgentHostClaudeAgentSdkPathSettingId = "chat.agentHost.claudeAgent.path";
12
14
  var AgentSession;
13
15
  (function(AgentSession) {
14
16
  function uri(provider, rawSessionId) {
@@ -30,4 +32,4 @@ var AgentSession;
30
32
  AgentSession.provider = provider;
31
33
  })(AgentSession || (AgentSession = {}));
32
34
 
33
- export { AgentHostEnabledSettingId, AgentHostIpcChannels, AgentHostIpcLoggingSettingId, AgentSession };
35
+ export { AgentHostAhpJsonlLoggingSettingId, AgentHostClaudeAgentSdkPathSettingId, AgentHostEnabledSettingId, AgentHostIpcChannels, AgentHostIpcLoggingSettingId, AgentSession };