@codingame/monaco-vscode-chat-service-override 21.6.0 → 22.0.0
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.
- package/index.js +3 -3
- package/package.json +41 -38
- package/vscode/src/vs/base/common/yaml.d.ts +74 -0
- package/vscode/src/vs/base/common/yaml.js +597 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +91 -83
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +32 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +13 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +14 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +12 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +98 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +13 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +192 -216
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +47 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +231 -175
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +200 -127
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +8 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +73 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +38 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +17 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.js +2 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +41 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +45 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +137 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +212 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +268 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +93 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +455 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +409 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +2 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +65 -144
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +240 -107
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +131 -85
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +12 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +145 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +262 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +2 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +16 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +20 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +66 -83
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +17 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +12 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +17 -9
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +8 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +74 -200
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +150 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.d.ts +2 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +9 -33
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +5 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +83 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +2 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +25 -68
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/{promptHeaderHovers.d.ts → promptHovers.d.ts} +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/{promptHeaderHovers.js → promptHovers.js} +77 -75
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +13 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +48 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +456 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.d.ts +7 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +28 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.d.ts +97 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.js +247 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +118 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +33 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +217 -83
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +34 -17
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +29 -29
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +8 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +24 -24
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +7 -7
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +33 -33
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +3 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +25 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +25 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +24 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +20 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +6 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +32 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +14 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +177 -107
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +113 -43
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +21 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +11 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +19 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +17 -9
- package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.d.ts +0 -84
- package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.js +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.d.ts +0 -94
- package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.js +0 -107
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.js +0 -45
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.d.ts +0 -137
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.js +0 -150
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.d.ts +0 -57
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.js +0 -69
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.js +0 -33
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.js +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.d.ts +0 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.js +0 -118
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.d.ts +0 -33
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.js +0 -134
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.js +0 -34
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.d.ts +0 -48
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.js +0 -134
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.js +0 -64
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.d.ts +0 -32
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.js +0 -75
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.js +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.d.ts +0 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.js +0 -63
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.d.ts +0 -61
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.js +0 -127
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.js +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.d.ts +0 -34
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.js +0 -64
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.d.ts +0 -83
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.js +0 -37
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.js +0 -57
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.js +0 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.d.ts +0 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.js +0 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.d.ts +0 -60
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.js +0 -100
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.d.ts +0 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.d.ts +0 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.js +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.d.ts +0 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.js +0 -72
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.js +0 -113
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.js +0 -68
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.d.ts +0 -73
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.js +0 -99
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.d.ts +0 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.js +0 -54
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.js +0 -53
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.js +0 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.js +0 -68
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.d.ts +0 -49
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.js +0 -199
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.d.ts +0 -34
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.js +0 -37
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.js +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.js +0 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.d.ts +0 -87
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.js +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.js +0 -66
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.js +0 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.js +0 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.d.ts +0 -36
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.d.ts +0 -32
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.js +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.js +0 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.d.ts +0 -62
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.js +0 -126
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.js +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.js +0 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.js +0 -109
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.js +0 -80
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.js +0 -81
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.d.ts +0 -36
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.js +0 -100
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.js +0 -149
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.js +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.js +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.d.ts +0 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.js +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.js +0 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.d.ts +0 -51
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.js +0 -48
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.d.ts +0 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.js +0 -71
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.d.ts +0 -38
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +0 -97
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +0 -102
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +0 -67
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.js +0 -46
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.d.ts +0 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +0 -186
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +0 -54
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceBase.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceBase.js +0 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.d.ts +0 -37
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.js +0 -87
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.d.ts +0 -216
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +0 -333
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.d.ts +0 -32
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.js +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.d.ts +0 -107
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +0 -101
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +0 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.js +0 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +0 -87
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.d.ts +0 -65
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.js +0 -37
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +0 -57
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.js +0 -43
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.js +0 -40
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.d.ts +0 -11
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.js +0 -43
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +0 -98
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.js +0 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +0 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.js +0 -36
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.d.ts +0 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.js +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/objectCache.d.ts +0 -96
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/objectCache.js +0 -39
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.d.ts +0 -48
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.js +0 -41
|
@@ -4,26 +4,29 @@ import { timeout } from '@codingame/monaco-vscode-api/vscode/vs/base/common/asyn
|
|
|
4
4
|
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
5
5
|
import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
6
6
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
7
|
+
import { isObject, isString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
7
8
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
8
9
|
import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
|
|
10
|
+
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
9
11
|
import { ChatElicitationRequestPart } from '@codingame/monaco-vscode-dc3fa21d-a483-5b99-a7ab-173235644a34-common/vscode/vs/workbench/contrib/chat/browser/chatElicitationRequestPart';
|
|
10
12
|
import { ChatModel } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatModel';
|
|
11
13
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
14
|
+
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
12
15
|
import { ChatMessageRole } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels';
|
|
13
16
|
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
14
17
|
import { ITaskService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/tasks/common/taskService.service';
|
|
18
|
+
import { detectsInputRequiredPattern } from '../../executeStrategy/executeStrategy.js';
|
|
15
19
|
import { OutputMonitorState, PollingConsts } from './types.js';
|
|
16
20
|
import { getTextResponseFromStream } from './utils.js';
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import { detectsInputRequiredPattern } from '../../executeStrategy/executeStrategy.js';
|
|
21
|
+
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
22
|
+
import { TerminalChatAgentToolsSettingId } from '@codingame/monaco-vscode-a175bd1a-4858-5944-9ae5-fb73305dcb13-common/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration';
|
|
23
|
+
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
21
24
|
|
|
22
25
|
let OutputMonitor = class OutputMonitor extends Disposable {
|
|
23
26
|
get state() { return this._state; }
|
|
24
27
|
get pollingResult() { return this._pollingResult; }
|
|
25
28
|
get outputMonitorTelemetryCounters() { return this._outputMonitorTelemetryCounters; }
|
|
26
|
-
constructor(_execution, _pollFn, invocationContext, token, command, _languageModelsService, _taskService, _chatService, _chatWidgetService) {
|
|
29
|
+
constructor(_execution, _pollFn, invocationContext, token, command, _languageModelsService, _taskService, _chatService, _chatWidgetService, _configurationService, _logService) {
|
|
27
30
|
super();
|
|
28
31
|
this._execution = _execution;
|
|
29
32
|
this._pollFn = _pollFn;
|
|
@@ -31,11 +34,18 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
31
34
|
this._taskService = _taskService;
|
|
32
35
|
this._chatService = _chatService;
|
|
33
36
|
this._chatWidgetService = _chatWidgetService;
|
|
37
|
+
this._configurationService = _configurationService;
|
|
38
|
+
this._logService = _logService;
|
|
34
39
|
this._state = OutputMonitorState.PollingForIdle;
|
|
35
40
|
this._outputMonitorTelemetryCounters = {
|
|
36
41
|
inputToolManualAcceptCount: 0,
|
|
37
42
|
inputToolManualRejectCount: 0,
|
|
38
|
-
inputToolManualChars: 0
|
|
43
|
+
inputToolManualChars: 0,
|
|
44
|
+
inputToolAutoAcceptCount: 0,
|
|
45
|
+
inputToolAutoChars: 0,
|
|
46
|
+
inputToolManualShownCount: 0,
|
|
47
|
+
inputToolFreeFormInputShownCount: 0,
|
|
48
|
+
inputToolFreeFormInputCount: 0,
|
|
39
49
|
};
|
|
40
50
|
this._onDidFinishCommand = this._register(( new Emitter()));
|
|
41
51
|
this.onDidFinishCommand = this._onDidFinishCommand.event;
|
|
@@ -47,6 +57,7 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
47
57
|
const pollStartTime = Date.now();
|
|
48
58
|
let modelOutputEvalResponse;
|
|
49
59
|
let resources;
|
|
60
|
+
let output;
|
|
50
61
|
let extended = false;
|
|
51
62
|
try {
|
|
52
63
|
while (!token.isCancellationRequested) {
|
|
@@ -63,7 +74,6 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
63
74
|
}
|
|
64
75
|
else {
|
|
65
76
|
this._promptPart?.hide();
|
|
66
|
-
this._promptPart?.dispose();
|
|
67
77
|
this._promptPart = undefined;
|
|
68
78
|
break;
|
|
69
79
|
}
|
|
@@ -78,6 +88,7 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
78
88
|
else {
|
|
79
89
|
resources = idleResult.resources;
|
|
80
90
|
modelOutputEvalResponse = idleResult.modelOutputEvalResponse;
|
|
91
|
+
output = idleResult.output;
|
|
81
92
|
}
|
|
82
93
|
break;
|
|
83
94
|
}
|
|
@@ -93,22 +104,44 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
93
104
|
finally {
|
|
94
105
|
this._pollingResult = {
|
|
95
106
|
state: this._state,
|
|
96
|
-
output: this._execution.getOutput(),
|
|
107
|
+
output: output ?? this._execution.getOutput(),
|
|
97
108
|
modelOutputEvalResponse: token.isCancellationRequested ? 'Cancelled' : modelOutputEvalResponse,
|
|
98
109
|
pollDurationMs: Date.now() - pollStartTime,
|
|
99
110
|
resources
|
|
100
111
|
};
|
|
101
112
|
this._promptPart?.hide();
|
|
102
|
-
this._promptPart?.dispose();
|
|
103
113
|
this._promptPart = undefined;
|
|
104
114
|
this._onDidFinishCommand.fire();
|
|
105
115
|
}
|
|
106
116
|
}
|
|
107
117
|
async _handleIdleState(token) {
|
|
108
118
|
const confirmationPrompt = await this._determineUserInputOptions(this._execution, token);
|
|
109
|
-
|
|
119
|
+
if (confirmationPrompt?.detectedRequestForFreeFormInput) {
|
|
120
|
+
this._outputMonitorTelemetryCounters.inputToolFreeFormInputShownCount++;
|
|
121
|
+
const focusedTerminal = await this._requestFreeFormTerminalInput(token, this._execution, confirmationPrompt);
|
|
122
|
+
if (focusedTerminal) {
|
|
123
|
+
await ( new Promise(resolve => {
|
|
124
|
+
const disposable = this._execution.instance.onData(data => {
|
|
125
|
+
if (data === '\r' || data === '\n' || data === '\r\n') {
|
|
126
|
+
this._outputMonitorTelemetryCounters.inputToolFreeFormInputCount++;
|
|
127
|
+
disposable.dispose();
|
|
128
|
+
resolve();
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}));
|
|
132
|
+
await timeout(200);
|
|
133
|
+
return { shouldContinuePollling: true };
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
return { shouldContinuePollling: false };
|
|
137
|
+
}
|
|
138
|
+
}
|
|
110
139
|
if (confirmationPrompt?.options.length) {
|
|
111
|
-
const
|
|
140
|
+
const suggestedOptionResult = await this._selectAndHandleOption(confirmationPrompt, token);
|
|
141
|
+
if (suggestedOptionResult?.sentToTerminal) {
|
|
142
|
+
return { shouldContinuePollling: true };
|
|
143
|
+
}
|
|
144
|
+
const confirmed = await this._confirmRunInTerminal(token, suggestedOptionResult?.suggestedOption ?? confirmationPrompt.options[0], this._execution, confirmationPrompt);
|
|
112
145
|
if (confirmed) {
|
|
113
146
|
return { shouldContinuePollling: true };
|
|
114
147
|
}
|
|
@@ -120,7 +153,7 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
120
153
|
const custom = await this._pollFn?.(this._execution, token, this._taskService);
|
|
121
154
|
const resources = custom?.resources;
|
|
122
155
|
const modelOutputEvalResponse = await this._assessOutputForErrors(this._execution.getOutput(), token);
|
|
123
|
-
return { resources, modelOutputEvalResponse, shouldContinuePollling: false };
|
|
156
|
+
return { resources, modelOutputEvalResponse, shouldContinuePollling: false, output: custom?.output };
|
|
124
157
|
}
|
|
125
158
|
async _handleTimeoutState(command, invocationContext, extended, token) {
|
|
126
159
|
let continuePollingPart;
|
|
@@ -145,7 +178,6 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
145
178
|
if (race.kind === 'decision') {
|
|
146
179
|
try {
|
|
147
180
|
continuePollingPart?.hide();
|
|
148
|
-
continuePollingPart?.dispose?.();
|
|
149
181
|
}
|
|
150
182
|
catch { }
|
|
151
183
|
continuePollingPart = undefined;
|
|
@@ -161,7 +193,6 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
161
193
|
if (r === OutputMonitorState.Idle || r === OutputMonitorState.Cancelled || r === OutputMonitorState.Timeout) {
|
|
162
194
|
try {
|
|
163
195
|
continuePollingPart?.hide();
|
|
164
|
-
continuePollingPart?.dispose?.();
|
|
165
196
|
}
|
|
166
197
|
catch { }
|
|
167
198
|
continuePollingPart = undefined;
|
|
@@ -207,6 +238,7 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
207
238
|
}
|
|
208
239
|
const recentlyIdle = consecutiveIdleEvents >= PollingConsts.MinIdleEvents;
|
|
209
240
|
const isActive = execution.isActive ? await execution.isActive() : undefined;
|
|
241
|
+
this._logService.trace(`OutputMonitor: waitForIdle check: waited=${waited}ms, recentlyIdle=${recentlyIdle}, isActive=${isActive}`);
|
|
210
242
|
if (recentlyIdle && isActive === true) {
|
|
211
243
|
consecutiveIdleEvents = 0;
|
|
212
244
|
continue;
|
|
@@ -228,35 +260,11 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
228
260
|
if (token.isCancellationRequested || this._state === OutputMonitorState.Cancelled) {
|
|
229
261
|
return { promise: Promise.resolve(false) };
|
|
230
262
|
}
|
|
231
|
-
const
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
const promise = ( new Promise(resolve => {
|
|
237
|
-
const thePart = part = this._register(( new ChatElicitationRequestPart(( new MarkdownString(( localize(11456, "Continue waiting for `{0}`?", command)))), ( new MarkdownString(( localize(
|
|
238
|
-
11457,
|
|
239
|
-
"This will continue to poll for output to determine when the terminal becomes idle for up to 2 minutes."
|
|
240
|
-
)))), '', ( localize(11458, 'Yes')), ( localize(11459, 'No')), async () => {
|
|
241
|
-
thePart.state = 'accepted';
|
|
242
|
-
thePart.hide();
|
|
243
|
-
thePart.dispose();
|
|
244
|
-
this._promptPart = undefined;
|
|
245
|
-
resolve(true);
|
|
246
|
-
}, async () => {
|
|
247
|
-
thePart.state = 'rejected';
|
|
248
|
-
thePart.hide();
|
|
249
|
-
this._state = OutputMonitorState.Cancelled;
|
|
250
|
-
this._promptPart = undefined;
|
|
251
|
-
resolve(false);
|
|
252
|
-
})));
|
|
253
|
-
chatModel.acceptResponseProgress(request, thePart);
|
|
254
|
-
this._promptPart = thePart;
|
|
255
|
-
}));
|
|
256
|
-
return { promise, part };
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
return { promise: Promise.resolve(false) };
|
|
263
|
+
const result = this._createElicitationPart(token, context?.sessionId, ( new MarkdownString(( localize(11556, "Continue waiting for `{0}`?", command)))), ( new MarkdownString(( localize(
|
|
264
|
+
11557,
|
|
265
|
+
"This will continue to poll for output to determine when the terminal becomes idle for up to 2 minutes."
|
|
266
|
+
)))), '', ( localize(11558, 'Yes')), ( localize(11559, 'No')), async () => true, async () => { this._state = OutputMonitorState.Cancelled; return false; });
|
|
267
|
+
return { promise: result.promise.then(p => p ?? false), part: result.part };
|
|
260
268
|
}
|
|
261
269
|
async _assessOutputForErrors(buffer, token) {
|
|
262
270
|
const models = await this._languageModelsService.selectLanguageModels({ vendor: 'copilot', family: 'gpt-4o-mini' });
|
|
@@ -282,32 +290,35 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
282
290
|
return undefined;
|
|
283
291
|
}
|
|
284
292
|
const lastFiveLines = execution.getOutput(this._lastPromptMarker).trimEnd().split('\n').slice(-5).join('\n');
|
|
285
|
-
const promptText = `Analyze the following terminal output. If it contains a prompt requesting user input (such as a confirmation, selection, or yes/no question) and that prompt has NOT already been answered, extract the prompt text
|
|
293
|
+
const promptText = `Analyze the following terminal output. If it contains a prompt requesting user input (such as a confirmation, selection, or yes/no question) and that prompt has NOT already been answered, extract the prompt text. The prompt may ask to choose from a set. If so, extract the possible options as a JSON object with keys 'prompt', 'options' (an array of strings or an object with option to description mappings), and 'freeFormInput': false. If no options are provided, and free form input is requested, for example: Password:, return the word freeFormInput. For example, if the options are "[Y] Yes [A] Yes to All [N] No [L] No to All [C] Cancel", the option to description mappings would be {"Y": "Yes", "A": "Yes to All", "N": "No", "L": "No to All", "C": "Cancel"}. If there is no such prompt, return null. If the option is ambiguous, like "any key", return null.
|
|
286
294
|
Examples:
|
|
287
295
|
1. Output: "Do you want to overwrite? (y/n)"
|
|
288
|
-
Response: {"prompt": "Do you want to overwrite?", "options": ["y", "n"]}
|
|
296
|
+
Response: {"prompt": "Do you want to overwrite?", "options": ["y", "n"], "freeFormInput": false}
|
|
289
297
|
|
|
290
298
|
2. Output: "Confirm: [Y] Yes [A] Yes to All [N] No [L] No to All [C] Cancel"
|
|
291
|
-
Response: {"prompt": "Confirm", "options": ["Y", "A", "N", "L", "C"]}
|
|
299
|
+
Response: {"prompt": "Confirm", "options": ["Y", "A", "N", "L", "C"], "freeFormInput": false}
|
|
292
300
|
|
|
293
301
|
3. Output: "Accept license terms? (yes/no)"
|
|
294
|
-
Response: {"prompt": "Accept license terms?", "options": ["yes", "no"]}
|
|
302
|
+
Response: {"prompt": "Accept license terms?", "options": ["yes", "no"], "freeFormInput": false}
|
|
295
303
|
|
|
296
304
|
4. Output: "Press Enter to continue"
|
|
297
|
-
Response: {"prompt": "Press Enter to continue", "options": ["Enter"]}
|
|
305
|
+
Response: {"prompt": "Press Enter to continue", "options": ["Enter"], "freeFormInput": false}
|
|
298
306
|
|
|
299
307
|
5. Output: "Type Yes to proceed"
|
|
300
|
-
Response: {"prompt": "Type Yes to proceed", "options": ["Yes"]}
|
|
308
|
+
Response: {"prompt": "Type Yes to proceed", "options": ["Yes"], "freeFormInput": false}
|
|
301
309
|
|
|
302
310
|
6. Output: "Continue [y/N]"
|
|
303
|
-
Response: {"prompt": "Continue", "options": ["y", "N"]}
|
|
311
|
+
Response: {"prompt": "Continue", "options": ["y", "N"], "freeFormInput": false}
|
|
304
312
|
|
|
313
|
+
Alternatively, the prompt may request free form input, for example:
|
|
314
|
+
1. Output: "Enter your username:"
|
|
315
|
+
Response: {"prompt": "Enter your username:", "freeFormInput": true, "options": []}
|
|
316
|
+
2. Output: "Password:"
|
|
317
|
+
Response: {"prompt": "Password:", "freeFormInput": true, "options": []}
|
|
305
318
|
Now, analyze this output:
|
|
306
319
|
${lastFiveLines}
|
|
307
320
|
`;
|
|
308
|
-
const response = await this._languageModelsService.sendChatRequest(models[0], ( new ExtensionIdentifier('core')), [
|
|
309
|
-
{ role: ChatMessageRole.User, content: [{ type: 'text', value: promptText }] }
|
|
310
|
-
], {}, token);
|
|
321
|
+
const response = await this._languageModelsService.sendChatRequest(models[0], ( new ExtensionIdentifier('core')), [{ role: ChatMessageRole.User, content: [{ type: 'text', value: promptText }] }], {}, token);
|
|
311
322
|
const responseText = await getTextResponseFromStream(response);
|
|
312
323
|
try {
|
|
313
324
|
const match = responseText.match(/\{[\s\S]*\}/);
|
|
@@ -315,12 +326,17 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
315
326
|
const obj = JSON.parse(match[0]);
|
|
316
327
|
if (isObject(obj) &&
|
|
317
328
|
'prompt' in obj && isString(obj.prompt) &&
|
|
318
|
-
'options' in obj
|
|
329
|
+
'options' in obj &&
|
|
330
|
+
'options' in obj &&
|
|
331
|
+
'freeFormInput' in obj && typeof obj.freeFormInput === 'boolean') {
|
|
332
|
+
if (this._lastPrompt === obj.prompt) {
|
|
333
|
+
return;
|
|
334
|
+
}
|
|
319
335
|
if (Array.isArray(obj.options) && obj.options.every(isString)) {
|
|
320
|
-
return { prompt: obj.prompt, options: obj.options };
|
|
336
|
+
return { prompt: obj.prompt, options: obj.options, detectedRequestForFreeFormInput: obj.freeFormInput };
|
|
321
337
|
}
|
|
322
338
|
else if (isObject(obj.options) && ( Object.values(obj.options)).every(isString)) {
|
|
323
|
-
return { prompt: obj.prompt, options: ( Object.keys(obj.options)), descriptions: ( Object.values(obj.options)) };
|
|
339
|
+
return { prompt: obj.prompt, options: ( Object.keys(obj.options)), descriptions: ( Object.values(obj.options)), detectedRequestForFreeFormInput: obj.freeFormInput };
|
|
324
340
|
}
|
|
325
341
|
}
|
|
326
342
|
}
|
|
@@ -334,7 +350,7 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
334
350
|
if (!confirmationPrompt?.options.length) {
|
|
335
351
|
return undefined;
|
|
336
352
|
}
|
|
337
|
-
const model = this._chatWidgetService.getWidgetsByLocations(ChatAgentLocation.
|
|
353
|
+
const model = this._chatWidgetService.getWidgetsByLocations(ChatAgentLocation.Chat)[0]?.input.currentLanguageModel;
|
|
338
354
|
if (!model) {
|
|
339
355
|
return undefined;
|
|
340
356
|
}
|
|
@@ -348,9 +364,6 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
348
364
|
if (!currentMarker) {
|
|
349
365
|
return undefined;
|
|
350
366
|
}
|
|
351
|
-
if (this._lastPrompt === prompt) {
|
|
352
|
-
return;
|
|
353
|
-
}
|
|
354
367
|
this._lastPromptMarker = currentMarker;
|
|
355
368
|
this._lastPrompt = prompt;
|
|
356
369
|
const promptText = `Given the following confirmation prompt and options from a terminal output, which option is the default?\nPrompt: "${prompt}"\nOptions: ${JSON.stringify(options)}\nRespond with only the option string.`;
|
|
@@ -358,76 +371,133 @@ let OutputMonitor = class OutputMonitor extends Disposable {
|
|
|
358
371
|
{ role: ChatMessageRole.User, content: [{ type: 'text', value: promptText }] }
|
|
359
372
|
], {}, token);
|
|
360
373
|
const suggestedOption = (await getTextResponseFromStream(response)).trim();
|
|
361
|
-
if (suggestedOption) {
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
374
|
+
if (!suggestedOption) {
|
|
375
|
+
return;
|
|
376
|
+
}
|
|
377
|
+
const parsed = suggestedOption.replace(/['"`]/g, '').trim();
|
|
378
|
+
const index = confirmationPrompt.options.indexOf(parsed);
|
|
379
|
+
const validOption = confirmationPrompt.options.find(opt => parsed === opt.replace(/['"`]/g, '').trim());
|
|
380
|
+
if (!validOption || index === -1) {
|
|
381
|
+
return;
|
|
382
|
+
}
|
|
383
|
+
let sentToTerminal = false;
|
|
384
|
+
if (this._configurationService.getValue(TerminalChatAgentToolsSettingId.AutoReplyToPrompts)) {
|
|
385
|
+
await this._execution.instance.sendText(validOption, true);
|
|
386
|
+
this._outputMonitorTelemetryCounters.inputToolAutoAcceptCount++;
|
|
387
|
+
this._outputMonitorTelemetryCounters.inputToolAutoChars += validOption?.length || 0;
|
|
388
|
+
sentToTerminal = true;
|
|
389
|
+
}
|
|
390
|
+
const description = confirmationPrompt.descriptions?.[index];
|
|
391
|
+
return description ? { suggestedOption: { description, option: validOption }, sentToTerminal } : { suggestedOption: validOption, sentToTerminal };
|
|
392
|
+
}
|
|
393
|
+
async _requestFreeFormTerminalInput(token, execution, confirmationPrompt) {
|
|
394
|
+
const { promise: userPrompt, part } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(11560, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
|
|
395
|
+
11561,
|
|
396
|
+
"{0}\nPlease provide the required input to the terminal.\n\n",
|
|
397
|
+
confirmationPrompt.prompt
|
|
398
|
+
)))), '', ( localize(11562, 'Focus terminal')), undefined, async () => { execution.instance.focus(true); return true; });
|
|
399
|
+
const inputPromise = ( new Promise(resolve => {
|
|
400
|
+
const inputDataDisposable = this._register(execution.instance.onDidInputData((data) => {
|
|
401
|
+
if (!data || data === '\r' || data === '\n' || data === '\r\n') {
|
|
402
|
+
part.hide();
|
|
403
|
+
inputDataDisposable.dispose();
|
|
404
|
+
this._state = OutputMonitorState.PollingForIdle;
|
|
405
|
+
resolve(true);
|
|
406
|
+
}
|
|
407
|
+
}));
|
|
408
|
+
}));
|
|
409
|
+
const result = await Promise.race([userPrompt, inputPromise]);
|
|
410
|
+
return !!result;
|
|
411
|
+
}
|
|
412
|
+
async _confirmRunInTerminal(token, suggestedOption, execution, confirmationPrompt) {
|
|
413
|
+
const suggestedOptionValue = typeof suggestedOption === 'string' ? suggestedOption : suggestedOption.option;
|
|
414
|
+
let inputDataDisposable = Disposable.None;
|
|
415
|
+
const { promise: userPrompt, part } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(11563, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
|
|
416
|
+
11564,
|
|
417
|
+
"{0}\n Do you want to send `{1}`{2} followed by `Enter` to the terminal?",
|
|
418
|
+
confirmationPrompt.prompt,
|
|
419
|
+
suggestedOptionValue,
|
|
420
|
+
typeof suggestedOption === 'string' ? '' : suggestedOption.description ? ' (' + suggestedOption.description + ')' : ''
|
|
421
|
+
)))), '', ( localize(11565, 'Allow')), ( localize(11566, 'Focus Terminal')), async (value) => {
|
|
422
|
+
let option = undefined;
|
|
423
|
+
if (value === true) {
|
|
424
|
+
option = suggestedOptionValue;
|
|
425
|
+
}
|
|
426
|
+
else if (typeof value === 'object' && 'label' in value) {
|
|
427
|
+
option = value.label.split(' (')[0];
|
|
367
428
|
}
|
|
429
|
+
this._outputMonitorTelemetryCounters.inputToolManualAcceptCount++;
|
|
430
|
+
this._outputMonitorTelemetryCounters.inputToolManualChars += option?.length || 0;
|
|
431
|
+
return option;
|
|
432
|
+
}, async () => {
|
|
433
|
+
this._state = OutputMonitorState.Cancelled;
|
|
434
|
+
this._outputMonitorTelemetryCounters.inputToolManualRejectCount++;
|
|
435
|
+
inputDataDisposable.dispose();
|
|
436
|
+
return undefined;
|
|
437
|
+
}, getMoreActions(suggestedOption, confirmationPrompt));
|
|
438
|
+
const inputPromise = ( new Promise(resolve => {
|
|
439
|
+
inputDataDisposable = this._register(execution.instance.onDidInputData(() => {
|
|
440
|
+
part.hide();
|
|
441
|
+
inputDataDisposable.dispose();
|
|
442
|
+
this._state = OutputMonitorState.PollingForIdle;
|
|
443
|
+
resolve(undefined);
|
|
444
|
+
}));
|
|
445
|
+
}));
|
|
446
|
+
const optionToRun = await Promise.race([userPrompt, inputPromise]);
|
|
447
|
+
if (optionToRun) {
|
|
448
|
+
await execution.instance.sendText(optionToRun, true);
|
|
368
449
|
}
|
|
369
|
-
return
|
|
450
|
+
return optionToRun;
|
|
370
451
|
}
|
|
371
|
-
|
|
372
|
-
const chatModel = this._chatService.getSession(
|
|
452
|
+
_createElicitationPart(token, sessionId, title, detail, subtitle, acceptLabel, rejectLabel, onAccept, onReject, moreActions) {
|
|
453
|
+
const chatModel = sessionId && this._chatService.getSession(sessionId);
|
|
373
454
|
if (!(chatModel instanceof ChatModel)) {
|
|
374
|
-
|
|
455
|
+
throw ( new Error('No model'));
|
|
375
456
|
}
|
|
376
457
|
const request = chatModel.getRequests().at(-1);
|
|
377
458
|
if (!request) {
|
|
378
|
-
|
|
459
|
+
throw ( new Error('No request'));
|
|
379
460
|
}
|
|
380
|
-
|
|
381
|
-
const
|
|
382
|
-
const thePart = this._register(( new ChatElicitationRequestPart(
|
|
383
|
-
11461,
|
|
384
|
-
"{0}\n Do you want to send `{1}`{2} followed by `Enter` to the terminal?",
|
|
385
|
-
confirmationPrompt.prompt,
|
|
386
|
-
suggestedOptionValue,
|
|
387
|
-
typeof suggestedOption === 'string' ? '' : suggestedOption.description ? ' (' + suggestedOption.description + ')' : ''
|
|
388
|
-
)))), '', ( localize(11462, 'Allow')), ( localize(11463, 'Focus Terminal')), async (value) => {
|
|
461
|
+
let part;
|
|
462
|
+
const promise = ( new Promise(resolve => {
|
|
463
|
+
const thePart = part = this._register(( new ChatElicitationRequestPart(title, detail, subtitle, acceptLabel, rejectLabel, async (value) => {
|
|
389
464
|
thePart.state = 'accepted';
|
|
390
465
|
thePart.hide();
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
466
|
+
this._promptPart = undefined;
|
|
467
|
+
try {
|
|
468
|
+
const r = await (onAccept ? onAccept(value) : undefined);
|
|
469
|
+
resolve(r);
|
|
395
470
|
}
|
|
396
|
-
|
|
397
|
-
|
|
471
|
+
catch {
|
|
472
|
+
resolve(undefined);
|
|
398
473
|
}
|
|
399
|
-
this._outputMonitorTelemetryCounters.inputToolManualAcceptCount++;
|
|
400
|
-
this._outputMonitorTelemetryCounters.inputToolManualChars += option?.length || 0;
|
|
401
|
-
resolve(option);
|
|
402
474
|
}, async () => {
|
|
403
475
|
thePart.state = 'rejected';
|
|
404
476
|
thePart.hide();
|
|
405
|
-
this.
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
resolve(undefined);
|
|
416
|
-
}));
|
|
477
|
+
this._promptPart = undefined;
|
|
478
|
+
try {
|
|
479
|
+
const r = await (onReject ? onReject() : undefined);
|
|
480
|
+
resolve(r);
|
|
481
|
+
}
|
|
482
|
+
catch {
|
|
483
|
+
resolve(undefined);
|
|
484
|
+
}
|
|
485
|
+
},
|
|
486
|
+
undefined, moreActions, () => this._outputMonitorTelemetryCounters.inputToolManualShownCount++)));
|
|
417
487
|
chatModel.acceptResponseProgress(request, thePart);
|
|
488
|
+
this._promptPart = thePart;
|
|
418
489
|
}));
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
await execution.instance.sendText(optionToRun, true);
|
|
422
|
-
}
|
|
423
|
-
return optionToRun;
|
|
490
|
+
this._register(token.onCancellationRequested(() => part.hide()));
|
|
491
|
+
return { promise, part };
|
|
424
492
|
}
|
|
425
493
|
};
|
|
426
494
|
OutputMonitor = ( __decorate([
|
|
427
495
|
( __param(5, ILanguageModelsService)),
|
|
428
496
|
( __param(6, ITaskService)),
|
|
429
497
|
( __param(7, IChatService)),
|
|
430
|
-
( __param(8, IChatWidgetService))
|
|
498
|
+
( __param(8, IChatWidgetService)),
|
|
499
|
+
( __param(9, IConfigurationService)),
|
|
500
|
+
( __param(10, ILogService))
|
|
431
501
|
], OutputMonitor));
|
|
432
502
|
function getMoreActions(suggestedOption, confirmationPrompt) {
|
|
433
503
|
const moreActions = [];
|
|
@@ -6,13 +6,14 @@ export interface IConfirmationPrompt {
|
|
|
6
6
|
prompt: string;
|
|
7
7
|
options: string[];
|
|
8
8
|
descriptions?: string[];
|
|
9
|
+
detectedRequestForFreeFormInput: boolean;
|
|
9
10
|
}
|
|
10
11
|
export interface IExecution {
|
|
11
12
|
getOutput: (marker?: XtermMarker) => string;
|
|
12
13
|
isActive?: () => Promise<boolean>;
|
|
13
14
|
task?: Task | Pick<Task, "configurationProperties">;
|
|
14
15
|
instance: Pick<ITerminalInstance, "sendText" | "instanceId" | "onDidInputData" | "onData" | "focus" | "registerMarker">;
|
|
15
|
-
sessionId: string;
|
|
16
|
+
sessionId: string | undefined;
|
|
16
17
|
}
|
|
17
18
|
export interface IPollingResult {
|
|
18
19
|
output: string;
|
|
@@ -4,6 +4,7 @@ import { OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/com
|
|
|
4
4
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
5
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
6
6
|
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
7
|
+
import { ITerminalProfile } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal";
|
|
7
8
|
import { ITerminalLogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service";
|
|
8
9
|
import { IRemoteAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service";
|
|
9
10
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
@@ -40,7 +41,10 @@ export declare class RunInTerminalTool extends Disposable implements IToolImpl {
|
|
|
40
41
|
constructor(_instantiationService: IInstantiationService, _configurationService: IConfigurationService, _languageModelToolsService: ILanguageModelToolsService, _storageService: IStorageService, _logService: ITerminalLogService, _terminalProfileResolverService: ITerminalProfileResolverService, _terminalService: ITerminalService, _remoteAgentService: IRemoteAgentService, _chatService: IChatService);
|
|
41
42
|
prepareToolInvocation(context: IToolInvocationPreparationContext, token: CancellationToken): Promise<IPreparedToolInvocation | undefined>;
|
|
42
43
|
invoke(invocation: IToolInvocation, _countTokens: CountTokensCallback, _progress: ToolProgress, token: CancellationToken): Promise<IToolResult>;
|
|
44
|
+
protected _getCopilotShellOrProfile(): Promise<string | ITerminalProfile>;
|
|
43
45
|
private _getCopilotShell;
|
|
46
|
+
private _getChatTerminalProfile;
|
|
47
|
+
private _isValidChatAgentTerminalProfile;
|
|
44
48
|
private _initBackgroundTerminal;
|
|
45
49
|
private _initForegroundTerminal;
|
|
46
50
|
private _registerInputListener;
|