@codingame/monaco-vscode-chat-service-override 18.4.0 → 19.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 +17 -10
- package/package.json +31 -35
- package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.d.ts +11 -0
- package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.js +42 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +52 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +16 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +32 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +41 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +21 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +179 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +44 -27
- 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 +32 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +46 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +116 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +234 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEdinputInputContentProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +44 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +10 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +42 -312
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +10 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +18 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +42 -22
- 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 +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +52 -70
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +332 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNewNotebookContentEdits.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNewNotebookContentEdits.js +69 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +10 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +30 -235
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +35 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +14 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +172 -348
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +150 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +15 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +40 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSetup.css +6 -90
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-dark.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-light.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/chatAttachInstructionsAction.d.ts → promptSyntax/attachInstructionsAction.d.ts} +8 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/chatAttachInstructionsAction.js → promptSyntax/attachInstructionsAction.js} +43 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/createPromptCommand.d.ts → newPromptFileActions.d.ts} +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/createPromptCommand.js → newPromptFileActions.js} +95 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/dialogs → pickers}/askForPromptName.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/dialogs → pickers}/askForPromptName.js +11 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/dialogs → pickers}/askForPromptSourceFolder.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/{contributions/createPromptCommand/dialogs → pickers}/askForPromptSourceFolder.js +27 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/dialogs/askToSelectPrompt → promptSyntax/pickers}/promptFilePickers.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/dialogs/askToSelectPrompt → promptSyntax/pickers}/promptFilePickers.js +33 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +117 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +15 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +153 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/chatRunPromptAction.js → promptSyntax/runPromptAction.js} +38 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{actions/promptActions/chatSaveToPromptAction.js → promptSyntax/saveToPromptAction.js} +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +20 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.js +107 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.js +45 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.js +150 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.js +69 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.js +33 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.js +29 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.js +118 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.js +134 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.js +34 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.js +134 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.js +75 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.js +41 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.js +63 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.js +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.js +57 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.js +18 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.js +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.js +100 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.js +72 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.js +113 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.js +99 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.js +54 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.js +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.js +199 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.js +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.js +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.js +30 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.js +66 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.js +29 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.js +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.js +126 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.js +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.js +109 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.js +80 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.js +81 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.js +100 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.js +149 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.js +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.js +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.js +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.js +48 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions → config}/configMigration.js +8 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +97 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +67 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.js +46 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +241 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +155 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +162 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/promptLinkDiagnosticsProvider.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/promptLinkDiagnosticsProvider.js +17 -27
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +39 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/promptPathAutocompletion.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/promptPathAutocompletion.js +11 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/providerInstanceBase.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/providerInstanceBase.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/providerInstanceManagerBase.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +333 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +101 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +87 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +63 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +54 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.js +43 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.js +41 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.js +43 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +98 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.js +24 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.js +36 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +50 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/index.d.ts → promptFileContributions.d.ts} +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +29 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{promptsService.d.ts → promptsServiceImpl.d.ts} +14 -11
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{promptsService.js → promptsServiceImpl.js} +78 -121
- package/vscode/src/vs/{base/common → workbench/contrib/chat/common/promptSyntax/utils}/objectCache.d.ts +1 -1
- package/vscode/src/vs/{base/common → workbench/contrib/chat/common/promptSyntax/utils}/objectCache.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.js +41 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +11 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +64 -34
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +13 -17
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +100 -0
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatModeActions.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatModeActions.js +0 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatRunPromptAction.d.ts +0 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatSaveToPromptAction.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/attachInstructions.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/attachInstructions.js +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/runPrompt.d.ts +0 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/runPrompt.js +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/index.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/index.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/errors.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/errors.js +0 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/utils/createPromptFile.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/utils/createPromptFile.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/index.js +0 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/index.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/index.js +0 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptHeaderDiagnosticsProvider.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptHeaderDiagnosticsProvider.js +0 -66
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptLinkProvider.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptLinkProvider.js +0 -56
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/treeUtils.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/treeUtils.js +0 -13
- /package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions → config}/configMigration.d.ts +0 -0
- /package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{contributions/languageFeatures/providers → languageProviders}/providerInstanceManagerBase.d.ts +0 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
4
|
+
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
5
|
+
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
6
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
|
+
import { ILanguageModelChatMetadata } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels';
|
|
8
|
+
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
9
|
+
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service';
|
|
10
|
+
import { InstructionsHeader } from '../parsers/promptHeader/instructionsHeader.js';
|
|
11
|
+
import { ModeHeader } from '../parsers/promptHeader/modeHeader.js';
|
|
12
|
+
import { ALL_PROMPTS_LANGUAGE_SELECTOR, getPromptsTypeForLanguageId } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
13
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
14
|
+
|
|
15
|
+
let PromptHeaderHoverProvider = class PromptHeaderHoverProvider extends Disposable {
|
|
16
|
+
constructor(promptsService, languageService, languageModelToolsService, languageModelsService) {
|
|
17
|
+
super();
|
|
18
|
+
this.promptsService = promptsService;
|
|
19
|
+
this.languageService = languageService;
|
|
20
|
+
this.languageModelToolsService = languageModelToolsService;
|
|
21
|
+
this.languageModelsService = languageModelsService;
|
|
22
|
+
this._debugDisplayName = 'PromptHeaderHoverProvider';
|
|
23
|
+
this._register(this.languageService.hoverProvider.register(ALL_PROMPTS_LANGUAGE_SELECTOR, this));
|
|
24
|
+
}
|
|
25
|
+
createHover(contents, range) {
|
|
26
|
+
return {
|
|
27
|
+
contents: [( new MarkdownString(contents))],
|
|
28
|
+
range
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
async provideHover(model, position, token, _context) {
|
|
32
|
+
const promptType = getPromptsTypeForLanguageId(model.getLanguageId());
|
|
33
|
+
if (!promptType) {
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
const parser = this.promptsService.getSyntaxParserFor(model);
|
|
37
|
+
await parser.start(token).settled();
|
|
38
|
+
if (token.isCancellationRequested) {
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
const header = parser.header;
|
|
42
|
+
if (!header) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
const completed = await header.settled;
|
|
46
|
+
if (!completed || token.isCancellationRequested) {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
if (header instanceof InstructionsHeader) {
|
|
50
|
+
const descriptionRange = header.metadataUtility.description?.range;
|
|
51
|
+
if (descriptionRange?.containsPosition(position)) {
|
|
52
|
+
return this.createHover(( localize(
|
|
53
|
+
5325,
|
|
54
|
+
'The description of the instruction file. It can be used to provide additional context or information about the instructions and is passed to the language model as part of the prompt.'
|
|
55
|
+
)), descriptionRange);
|
|
56
|
+
}
|
|
57
|
+
const applyToRange = header.metadataUtility.applyTo?.range;
|
|
58
|
+
if (applyToRange?.containsPosition(position)) {
|
|
59
|
+
return this.createHover(( localize(
|
|
60
|
+
5326,
|
|
61
|
+
'One or more glob pattern (separated by comma) that describe for which files the instructions apply to. Based on these patterns, the file is automatically included in the prompt, when the context contains a file that matches one or more of these patterns. Use `**` when you want this file to always be added.\nExample: **/*.ts, **/*.js, client/**'
|
|
62
|
+
)), applyToRange);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
else if (header instanceof ModeHeader) {
|
|
66
|
+
const descriptionRange = header.metadataUtility.description?.range;
|
|
67
|
+
if (descriptionRange?.containsPosition(position)) {
|
|
68
|
+
return this.createHover(( localize(
|
|
69
|
+
5327,
|
|
70
|
+
'The description of the mode file. It can be used to provide additional context or information about the mode to the mode author.'
|
|
71
|
+
)), descriptionRange);
|
|
72
|
+
}
|
|
73
|
+
const model = header.metadataUtility.model;
|
|
74
|
+
if (model?.range.containsPosition(position)) {
|
|
75
|
+
return this.getModelHover(model, model.range, ( localize(5328, 'The model to use in this mode.')));
|
|
76
|
+
}
|
|
77
|
+
const tools = header.metadataUtility.tools;
|
|
78
|
+
if (tools?.range?.containsPosition(position)) {
|
|
79
|
+
return this.getToolHover(tools, position, ( localize(5329, 'The tools to use in this mode.')));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
const descriptionRange = header.metadataUtility.description?.range;
|
|
84
|
+
if (descriptionRange?.containsPosition(position)) {
|
|
85
|
+
return this.createHover(( localize(
|
|
86
|
+
5330,
|
|
87
|
+
'The description of the prompt file. It can be used to provide additional context or information about the prompt to the prompt author.'
|
|
88
|
+
)), descriptionRange);
|
|
89
|
+
}
|
|
90
|
+
const model = header.metadataUtility.model;
|
|
91
|
+
if (model?.range.containsPosition(position)) {
|
|
92
|
+
return this.getModelHover(model, model.range, ( localize(5331, 'The model to use in this prompt.')));
|
|
93
|
+
}
|
|
94
|
+
const tools = header.metadataUtility.tools;
|
|
95
|
+
if (tools?.range?.containsPosition(position)) {
|
|
96
|
+
return this.getToolHover(tools, position, ( localize(5332, 'The tools to use in this prompt.')));
|
|
97
|
+
}
|
|
98
|
+
const modeRange = header.metadataUtility.mode?.range;
|
|
99
|
+
if (modeRange?.containsPosition(position)) {
|
|
100
|
+
return this.createHover(( localize(5333, 'The mode (ask, edit or agent) to use when running this prompt.')), modeRange);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
getToolHover(node, position, baseMessage) {
|
|
106
|
+
if (node.value) {
|
|
107
|
+
for (const toolName of node.value) {
|
|
108
|
+
const toolRange = node.getToolRange(toolName);
|
|
109
|
+
if (toolRange?.containsPosition(position)) {
|
|
110
|
+
const tool = this.languageModelToolsService.getToolByName(toolName);
|
|
111
|
+
if (tool) {
|
|
112
|
+
return this.createHover(tool.modelDescription, toolRange);
|
|
113
|
+
}
|
|
114
|
+
const toolSet = this.languageModelToolsService.getToolSetByName(toolName);
|
|
115
|
+
if (toolSet) {
|
|
116
|
+
return this.getToolsetHover(toolSet, toolRange);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return this.createHover(baseMessage, node.range);
|
|
122
|
+
}
|
|
123
|
+
getToolsetHover(toolSet, range) {
|
|
124
|
+
const lines = [];
|
|
125
|
+
lines.push(( localize(5334, 'ToolSet: {0}\n\n', toolSet.referenceName)));
|
|
126
|
+
if (toolSet.description) {
|
|
127
|
+
lines.push(toolSet.description);
|
|
128
|
+
}
|
|
129
|
+
for (const tool of toolSet.getTools()) {
|
|
130
|
+
lines.push(`- ${tool.toolReferenceName ?? tool.displayName}`);
|
|
131
|
+
}
|
|
132
|
+
return this.createHover(lines.join('\n'), range);
|
|
133
|
+
}
|
|
134
|
+
getModelHover(node, range, baseMessage) {
|
|
135
|
+
const modelName = node.value;
|
|
136
|
+
if (modelName) {
|
|
137
|
+
for (const id of this.languageModelsService.getLanguageModelIds()) {
|
|
138
|
+
const meta = this.languageModelsService.lookupLanguageModel(id);
|
|
139
|
+
if (meta && ILanguageModelChatMetadata.asQualifiedName(meta) === modelName) {
|
|
140
|
+
const lines = [];
|
|
141
|
+
lines.push(baseMessage + '\n');
|
|
142
|
+
lines.push(( localize(5335, '- Name: {0}', meta.name)));
|
|
143
|
+
lines.push(( localize(5336, '- Family: {0}', meta.family)));
|
|
144
|
+
lines.push(( localize(5337, '- Vendor: {0}', meta.vendor)));
|
|
145
|
+
if (meta.description) {
|
|
146
|
+
lines.push('', '', meta.description);
|
|
147
|
+
}
|
|
148
|
+
return this.createHover(lines.join('\n'), range);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return this.createHover(baseMessage, range);
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
PromptHeaderHoverProvider = ( __decorate([
|
|
156
|
+
( __param(0, IPromptsService)),
|
|
157
|
+
( __param(1, ILanguageFeaturesService)),
|
|
158
|
+
( __param(2, ILanguageModelToolsService)),
|
|
159
|
+
( __param(3, ILanguageModelsService))
|
|
160
|
+
], PromptHeaderHoverProvider));
|
|
161
|
+
|
|
162
|
+
export { PromptHeaderHoverProvider };
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
1
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service";
|
|
2
2
|
import { ProviderInstanceBase } from "./providerInstanceBase.js";
|
|
3
3
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
4
4
|
import { ProviderInstanceManagerBase, TProviderClass } from "./providerInstanceManagerBase.js";
|
|
5
5
|
import { IMarkerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers.service";
|
|
6
|
+
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
6
7
|
declare class PromptLinkDiagnosticsProvider extends ProviderInstanceBase {
|
|
7
8
|
private readonly markerService;
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
private readonly fileService;
|
|
10
|
+
constructor(model: ITextModel, promptsService: IPromptsService, markerService: IMarkerService, fileService: IFileService);
|
|
11
|
+
protected onPromptSettled(): Promise<void>;
|
|
10
12
|
toString(): string;
|
|
11
13
|
}
|
|
12
14
|
export declare class PromptLinkDiagnosticsInstanceManager extends ProviderInstanceManagerBase<PromptLinkDiagnosticsProvider> {
|
|
@@ -1,36 +1,31 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
4
4
|
import { ProviderInstanceBase } from './providerInstanceBase.js';
|
|
5
|
-
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
6
|
-
import { NotPromptFile } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptFileReferenceErrors';
|
|
7
5
|
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
8
6
|
import { ProviderInstanceManagerBase } from './providerInstanceManagerBase.js';
|
|
9
7
|
import { MarkerSeverity } from '@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers';
|
|
10
8
|
import { IMarkerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers.service';
|
|
9
|
+
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
10
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
11
11
|
|
|
12
12
|
const MARKERS_OWNER_ID = 'prompt-link-diagnostics-provider';
|
|
13
13
|
let PromptLinkDiagnosticsProvider = class PromptLinkDiagnosticsProvider extends ProviderInstanceBase {
|
|
14
|
-
constructor(model, promptsService, markerService) {
|
|
14
|
+
constructor(model, promptsService, markerService, fileService) {
|
|
15
15
|
super(model, promptsService);
|
|
16
16
|
this.markerService = markerService;
|
|
17
|
+
this.fileService = fileService;
|
|
17
18
|
}
|
|
18
|
-
onPromptSettled() {
|
|
19
|
+
async onPromptSettled() {
|
|
19
20
|
this.markerService.remove(MARKERS_OWNER_ID, [this.model.uri]);
|
|
20
21
|
const markers = [];
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
if (!
|
|
24
|
-
|
|
22
|
+
const stats = await this.fileService.resolveAll(( this.parser.references.map(ref => ({ resource: ref.uri }))));
|
|
23
|
+
for (let i = 0; i < stats.length; i++) {
|
|
24
|
+
if (!stats[i].success) {
|
|
25
|
+
markers.push(toMarker(this.parser.references[i], ( localize(5338, 'File not found.'))));
|
|
25
26
|
}
|
|
26
|
-
const { originalError } = topError;
|
|
27
|
-
if (originalError instanceof NotPromptFile) {
|
|
28
|
-
continue;
|
|
29
|
-
}
|
|
30
|
-
markers.push(toMarker(link));
|
|
31
27
|
}
|
|
32
28
|
this.markerService.changeOne(MARKERS_OWNER_ID, this.model.uri, markers);
|
|
33
|
-
return this;
|
|
34
29
|
}
|
|
35
30
|
toString() {
|
|
36
31
|
return `prompt-link-diagnostics:${this.model.uri.path}`;
|
|
@@ -38,23 +33,18 @@ let PromptLinkDiagnosticsProvider = class PromptLinkDiagnosticsProvider extends
|
|
|
38
33
|
};
|
|
39
34
|
PromptLinkDiagnosticsProvider = ( __decorate([
|
|
40
35
|
( __param(1, IPromptsService)),
|
|
41
|
-
( __param(2, IMarkerService))
|
|
36
|
+
( __param(2, IMarkerService)),
|
|
37
|
+
( __param(3, IFileService))
|
|
42
38
|
], PromptLinkDiagnosticsProvider));
|
|
43
|
-
|
|
44
|
-
const {
|
|
45
|
-
assertDefined(topError, 'Top error must to be defined.');
|
|
39
|
+
function toMarker(link, message) {
|
|
40
|
+
const { linkRange } = link;
|
|
46
41
|
assertDefined(linkRange, 'Link range must to be defined.');
|
|
47
|
-
const { originalError } = topError;
|
|
48
|
-
assert(!(originalError instanceof NotPromptFile), 'Error must not be of "not prompt file" type.');
|
|
49
|
-
const severity = (topError.errorSubject === 'root')
|
|
50
|
-
? MarkerSeverity.Error
|
|
51
|
-
: MarkerSeverity.Warning;
|
|
52
42
|
return {
|
|
53
|
-
message:
|
|
54
|
-
severity,
|
|
43
|
+
message: message,
|
|
44
|
+
severity: MarkerSeverity.Warning,
|
|
55
45
|
...linkRange,
|
|
56
46
|
};
|
|
57
|
-
}
|
|
47
|
+
}
|
|
58
48
|
class PromptLinkDiagnosticsInstanceManager extends ProviderInstanceManagerBase {
|
|
59
49
|
get InstanceClass() {
|
|
60
50
|
return PromptLinkDiagnosticsProvider;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service";
|
|
2
|
+
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
3
|
+
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
4
|
+
import { ILinksList, LinkProvider } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages";
|
|
5
|
+
export declare class PromptLinkProvider implements LinkProvider {
|
|
6
|
+
private readonly promptsService;
|
|
7
|
+
constructor(promptsService: IPromptsService);
|
|
8
|
+
provideLinks(model: ITextModel, token: CancellationToken): Promise<ILinksList | undefined>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
4
|
+
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
5
|
+
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
6
|
+
import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
7
|
+
|
|
8
|
+
let PromptLinkProvider = class PromptLinkProvider {
|
|
9
|
+
constructor(promptsService) {
|
|
10
|
+
this.promptsService = promptsService;
|
|
11
|
+
}
|
|
12
|
+
async provideLinks(model, token) {
|
|
13
|
+
assert(!token.isCancellationRequested, ( new CancellationError()));
|
|
14
|
+
const parser = this.promptsService.getSyntaxParserFor(model);
|
|
15
|
+
assert(parser.isDisposed === false, 'Prompt parser must not be disposed.');
|
|
16
|
+
const completed = await parser.start(token).settled();
|
|
17
|
+
if (!completed || token.isCancellationRequested) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
const { references } = parser;
|
|
21
|
+
const links = ( references
|
|
22
|
+
.map((reference) => {
|
|
23
|
+
const { uri, linkRange } = reference;
|
|
24
|
+
assertDefined(linkRange, 'Link range must be defined.');
|
|
25
|
+
return {
|
|
26
|
+
range: linkRange,
|
|
27
|
+
url: uri,
|
|
28
|
+
};
|
|
29
|
+
}));
|
|
30
|
+
return {
|
|
31
|
+
links,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
PromptLinkProvider = ( __decorate([
|
|
36
|
+
( __param(0, IPromptsService))
|
|
37
|
+
], PromptLinkProvider));
|
|
38
|
+
|
|
39
|
+
export { PromptLinkProvider };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
1
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service";
|
|
2
2
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
3
3
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
4
4
|
import { Position } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
4
4
|
import { isOneOf } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
5
|
-
import { extUri } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
5
|
+
import { dirname, extUri } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
6
6
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
7
7
|
import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
8
|
-
import { ALL_PROMPTS_LANGUAGE_SELECTOR } from '@codingame/monaco-vscode-
|
|
8
|
+
import { ALL_PROMPTS_LANGUAGE_SELECTOR } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
9
9
|
import { assert, assertNever } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
10
10
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
11
11
|
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
12
12
|
import { CompletionItemKind } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages';
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
function findFileReference(references, position) {
|
|
15
15
|
for (const reference of references) {
|
|
16
16
|
const { range } = reference;
|
|
17
17
|
if (reference.type !== 'file') {
|
|
@@ -27,7 +27,7 @@ const findFileReference = (references, position) => {
|
|
|
27
27
|
return reference;
|
|
28
28
|
}
|
|
29
29
|
return undefined;
|
|
30
|
-
}
|
|
30
|
+
}
|
|
31
31
|
let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable {
|
|
32
32
|
constructor(fileService, promptsService, languageService) {
|
|
33
33
|
super();
|
|
@@ -47,18 +47,16 @@ let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable
|
|
|
47
47
|
assert(isOneOf(triggerCharacter, this.triggerCharacters), `Prompt path autocompletion provider`);
|
|
48
48
|
const parser = this.promptsService.getSyntaxParserFor(model);
|
|
49
49
|
assert(parser.isDisposed === false, 'Prompt parser must not be disposed.');
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
.settled();
|
|
53
|
-
assert(!token.isCancellationRequested, ( new CancellationError()));
|
|
54
|
-
const fileReference = findFileReference(references, position);
|
|
55
|
-
if (!fileReference) {
|
|
50
|
+
const completed = await parser.start(token).settled();
|
|
51
|
+
if (!completed || token.isCancellationRequested) {
|
|
56
52
|
return undefined;
|
|
57
53
|
}
|
|
58
|
-
const {
|
|
59
|
-
|
|
54
|
+
const { references } = parser;
|
|
55
|
+
const fileReference = findFileReference(references, position);
|
|
56
|
+
if (!fileReference) {
|
|
60
57
|
return undefined;
|
|
61
58
|
}
|
|
59
|
+
const parentFolder = dirname(parser.uri);
|
|
62
60
|
if (triggerCharacter === ':' || (triggerCharacter === '.' && fileReference.path === '.')) {
|
|
63
61
|
return {
|
|
64
62
|
suggestions: await this.getFirstFolderSuggestions(triggerCharacter, parentFolder, fileReference),
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { TSharedPrompt } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
2
|
-
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
1
|
+
import { TSharedPrompt } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService";
|
|
2
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service";
|
|
3
3
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
4
|
-
import { ObservableDisposable } from "
|
|
4
|
+
import { ObservableDisposable } from "../utils/observableDisposable.js";
|
|
5
5
|
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
6
6
|
export declare abstract class ProviderInstanceBase extends ObservableDisposable {
|
|
7
7
|
protected readonly model: ITextModel;
|
|
8
|
-
protected abstract onPromptSettled(error: Error | undefined, token: CancellationToken):
|
|
8
|
+
protected abstract onPromptSettled(error: Error | undefined, token: CancellationToken): Promise<void>;
|
|
9
9
|
abstract toString(): string;
|
|
10
10
|
protected readonly parser: TSharedPrompt;
|
|
11
11
|
constructor(model: ITextModel, promptsService: IPromptsService);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/
|
|
4
|
-
import { ObservableDisposable } from '
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
4
|
+
import { ObservableDisposable } from '../utils/observableDisposable.js';
|
|
5
5
|
import { CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
6
6
|
|
|
7
7
|
let ProviderInstanceBase = class ProviderInstanceBase extends ObservableDisposable {
|
|
@@ -3,10 +3,10 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
4
4
|
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
5
5
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
|
-
import { ObjectCache } from '
|
|
7
|
-
import { PROMPT_LANGUAGE_ID, INSTRUCTIONS_LANGUAGE_ID, MODE_LANGUAGE_ID } from '@codingame/monaco-vscode-
|
|
6
|
+
import { ObjectCache } from '../utils/objectCache.js';
|
|
7
|
+
import { PROMPT_LANGUAGE_ID, INSTRUCTIONS_LANGUAGE_ID, MODE_LANGUAGE_ID } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
8
8
|
import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
|
|
9
|
-
import { PromptsConfig } from '@codingame/monaco-vscode-
|
|
9
|
+
import { PromptsConfig } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/config';
|
|
10
10
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
11
11
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
12
12
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
@@ -64,14 +64,14 @@ ProviderInstanceManagerBase = ( __decorate([
|
|
|
64
64
|
( __param(2, IInstantiationService)),
|
|
65
65
|
( __param(3, IConfigurationService))
|
|
66
66
|
], ProviderInstanceManagerBase));
|
|
67
|
-
|
|
67
|
+
function isPromptFile(languageId) {
|
|
68
68
|
return [
|
|
69
69
|
PROMPT_LANGUAGE_ID,
|
|
70
70
|
INSTRUCTIONS_LANGUAGE_ID,
|
|
71
71
|
MODE_LANGUAGE_ID,
|
|
72
72
|
].includes(languageId);
|
|
73
|
-
}
|
|
74
|
-
|
|
73
|
+
}
|
|
74
|
+
function isPromptFileModel(model) {
|
|
75
75
|
if ('modified' in model || 'model' in model) {
|
|
76
76
|
return false;
|
|
77
77
|
}
|
|
@@ -82,6 +82,6 @@ const isPromptFileModel = (model) => {
|
|
|
82
82
|
return false;
|
|
83
83
|
}
|
|
84
84
|
return true;
|
|
85
|
-
}
|
|
85
|
+
}
|
|
86
86
|
|
|
87
87
|
export { ProviderInstanceManagerBase };
|
package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.d.ts
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { TMetadata } from "./promptHeader/headerBase.js";
|
|
2
|
+
import { ModeHeader } from "./promptHeader/modeHeader.js";
|
|
3
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
|
+
import { FileReference } from "../codecs/tokens/fileReference.js";
|
|
5
|
+
import { InstructionsHeader } from "./promptHeader/instructionsHeader.js";
|
|
6
|
+
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
7
|
+
import type { IPromptContentsProvider } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/types";
|
|
8
|
+
import type { TPromptReference, ITopError } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/parsers/types";
|
|
9
|
+
import { type IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
10
|
+
import { BaseToken } from "../codecs/base/baseToken.js";
|
|
11
|
+
import { type IRange, Range } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range";
|
|
12
|
+
import { PromptHeader } from "./promptHeader/promptHeader.js";
|
|
13
|
+
import { ObservableDisposable } from "../utils/observableDisposable.js";
|
|
14
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
15
|
+
import { MarkdownLink } from "../codecs/base/markdownCodec/tokens/markdownLink.js";
|
|
16
|
+
import { OpenFailed, NotPromptFile, RecursiveReference, FolderReference, ResolveError } from "../../promptFileReferenceErrors.js";
|
|
17
|
+
import { type IPromptContentsProviderOptions } from "../contentProviders/promptContentsProviderBase.js";
|
|
18
|
+
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
19
|
+
import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service";
|
|
20
|
+
export interface IBasePromptParserOptions {
|
|
21
|
+
}
|
|
22
|
+
export type IPromptParserOptions = IBasePromptParserOptions & IPromptContentsProviderOptions;
|
|
23
|
+
export type TErrorCondition = OpenFailed | RecursiveReference | FolderReference | NotPromptFile;
|
|
24
|
+
export declare class BasePromptParser<TContentsProvider extends IPromptContentsProvider> extends ObservableDisposable {
|
|
25
|
+
private readonly promptContentsProvider;
|
|
26
|
+
protected readonly instantiationService: IInstantiationService;
|
|
27
|
+
private readonly envService;
|
|
28
|
+
protected readonly logService: ILogService;
|
|
29
|
+
protected readonly options: IBasePromptParserOptions;
|
|
30
|
+
get tokens(): readonly BaseToken[];
|
|
31
|
+
private receivedTokens;
|
|
32
|
+
private readonly _references;
|
|
33
|
+
private promptHeader?;
|
|
34
|
+
get header(): PromptHeader | InstructionsHeader | ModeHeader | undefined;
|
|
35
|
+
getBody(): Promise<string>;
|
|
36
|
+
private readonly _onUpdate;
|
|
37
|
+
readonly onUpdate: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
|
|
38
|
+
private readonly _onSettled;
|
|
39
|
+
onSettled(callback: (error?: Error) => void): IDisposable;
|
|
40
|
+
private _errorCondition?;
|
|
41
|
+
get errorCondition(): ResolveError | undefined;
|
|
42
|
+
get resolveFailed(): boolean | undefined;
|
|
43
|
+
private readonly firstParseResult;
|
|
44
|
+
settled(): Promise<boolean>;
|
|
45
|
+
constructor(promptContentsProvider: TContentsProvider, options: IBasePromptParserOptions, instantiationService: IInstantiationService, envService: IWorkbenchEnvironmentService, logService: ILogService);
|
|
46
|
+
private stream;
|
|
47
|
+
private onContentsChanged;
|
|
48
|
+
private createHeader;
|
|
49
|
+
private handleLinkToken;
|
|
50
|
+
private onStreamEnd;
|
|
51
|
+
private disposeReferences;
|
|
52
|
+
private started;
|
|
53
|
+
start(token?: CancellationToken): this;
|
|
54
|
+
get uri(): URI;
|
|
55
|
+
get references(): readonly TPromptReference[];
|
|
56
|
+
get metadata(): TMetadata | null;
|
|
57
|
+
get topError(): ITopError | undefined;
|
|
58
|
+
toString(): string;
|
|
59
|
+
dispose(): void;
|
|
60
|
+
}
|
|
61
|
+
export declare class PromptReference implements TPromptReference {
|
|
62
|
+
readonly uri: URI;
|
|
63
|
+
readonly token: FileReference | MarkdownLink;
|
|
64
|
+
constructor(uri: URI, token: FileReference | MarkdownLink);
|
|
65
|
+
get linkRange(): IRange | undefined;
|
|
66
|
+
get type(): "file";
|
|
67
|
+
get subtype(): "prompt" | "markdown";
|
|
68
|
+
get range(): Range;
|
|
69
|
+
get path(): string;
|
|
70
|
+
get text(): string;
|
|
71
|
+
toString(): string;
|
|
72
|
+
}
|