@harborclient/core 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/LICENSE +21 -0
- package/README.md +36 -0
- package/dist/ai/chatComposer.d.ts +12 -0
- package/dist/ai/chatComposer.d.ts.map +1 -0
- package/dist/ai/chatComposer.js +20 -0
- package/dist/ai/chatComposer.js.map +1 -0
- package/dist/ai/chatContext.d.ts +181 -0
- package/dist/ai/chatContext.d.ts.map +1 -0
- package/dist/ai/chatContext.js +168 -0
- package/dist/ai/chatContext.js.map +1 -0
- package/dist/ai/chatStepMode.d.ts +43 -0
- package/dist/ai/chatStepMode.d.ts.map +1 -0
- package/dist/ai/chatStepMode.js +64 -0
- package/dist/ai/chatStepMode.js.map +1 -0
- package/dist/ai/chatTitle.d.ts +35 -0
- package/dist/ai/chatTitle.d.ts.map +1 -0
- package/dist/ai/chatTitle.js +109 -0
- package/dist/ai/chatTitle.js.map +1 -0
- package/dist/ai/gitCommitMessage.d.ts +47 -0
- package/dist/ai/gitCommitMessage.d.ts.map +1 -0
- package/dist/ai/gitCommitMessage.js +139 -0
- package/dist/ai/gitCommitMessage.js.map +1 -0
- package/dist/ai/models.d.ts +115 -0
- package/dist/ai/models.d.ts.map +1 -0
- package/dist/ai/models.js +209 -0
- package/dist/ai/models.js.map +1 -0
- package/dist/ai/requestUpdate.d.ts +273 -0
- package/dist/ai/requestUpdate.d.ts.map +1 -0
- package/dist/ai/requestUpdate.js +274 -0
- package/dist/ai/requestUpdate.js.map +1 -0
- package/dist/ai/scriptAsk.d.ts +115 -0
- package/dist/ai/scriptAsk.d.ts.map +1 -0
- package/dist/ai/scriptAsk.js +243 -0
- package/dist/ai/scriptAsk.js.map +1 -0
- package/dist/ai/scriptReferences.d.ts +377 -0
- package/dist/ai/scriptReferences.d.ts.map +1 -0
- package/dist/ai/scriptReferences.js +787 -0
- package/dist/ai/scriptReferences.js.map +1 -0
- package/dist/ai/settings.d.ts +8 -0
- package/dist/ai/settings.d.ts.map +1 -0
- package/dist/ai/settings.js +11 -0
- package/dist/ai/settings.js.map +1 -0
- package/dist/ai/tools/ITool.d.ts +26 -0
- package/dist/ai/tools/ITool.d.ts.map +1 -0
- package/dist/ai/tools/ITool.js +2 -0
- package/dist/ai/tools/ITool.js.map +1 -0
- package/dist/ai/tools/createCollection.d.ts +164 -0
- package/dist/ai/tools/createCollection.d.ts.map +1 -0
- package/dist/ai/tools/createCollection.js +36 -0
- package/dist/ai/tools/createCollection.js.map +1 -0
- package/dist/ai/tools/createFolder.d.ts +50 -0
- package/dist/ai/tools/createFolder.d.ts.map +1 -0
- package/dist/ai/tools/createFolder.js +34 -0
- package/dist/ai/tools/createFolder.js.map +1 -0
- package/dist/ai/tools/createRequest.d.ts +210 -0
- package/dist/ai/tools/createRequest.d.ts.map +1 -0
- package/dist/ai/tools/createRequest.js +88 -0
- package/dist/ai/tools/createRequest.js.map +1 -0
- package/dist/ai/tools/getActiveRequest.d.ts +20 -0
- package/dist/ai/tools/getActiveRequest.d.ts.map +1 -0
- package/dist/ai/tools/getActiveRequest.js +16 -0
- package/dist/ai/tools/getActiveRequest.js.map +1 -0
- package/dist/ai/tools/getActiveRequestDetails.d.ts +20 -0
- package/dist/ai/tools/getActiveRequestDetails.d.ts.map +1 -0
- package/dist/ai/tools/getActiveRequestDetails.js +16 -0
- package/dist/ai/tools/getActiveRequestDetails.js.map +1 -0
- package/dist/ai/tools/getActiveResponse.d.ts +39 -0
- package/dist/ai/tools/getActiveResponse.d.ts.map +1 -0
- package/dist/ai/tools/getActiveResponse.js +30 -0
- package/dist/ai/tools/getActiveResponse.js.map +1 -0
- package/dist/ai/tools/getActiveResponseSummary.d.ts +20 -0
- package/dist/ai/tools/getActiveResponseSummary.d.ts.map +1 -0
- package/dist/ai/tools/getActiveResponseSummary.js +16 -0
- package/dist/ai/tools/getActiveResponseSummary.js.map +1 -0
- package/dist/ai/tools/getActiveTerminal.d.ts +20 -0
- package/dist/ai/tools/getActiveTerminal.d.ts.map +1 -0
- package/dist/ai/tools/getActiveTerminal.js +16 -0
- package/dist/ai/tools/getActiveTerminal.js.map +1 -0
- package/dist/ai/tools/getActiveTerminalLines.d.ts +50 -0
- package/dist/ai/tools/getActiveTerminalLines.d.ts.map +1 -0
- package/dist/ai/tools/getActiveTerminalLines.js +37 -0
- package/dist/ai/tools/getActiveTerminalLines.js.map +1 -0
- package/dist/ai/tools/getCollection.d.ts +31 -0
- package/dist/ai/tools/getCollection.d.ts.map +1 -0
- package/dist/ai/tools/getCollection.js +28 -0
- package/dist/ai/tools/getCollection.js.map +1 -0
- package/dist/ai/tools/getFolder.d.ts +31 -0
- package/dist/ai/tools/getFolder.d.ts.map +1 -0
- package/dist/ai/tools/getFolder.js +28 -0
- package/dist/ai/tools/getFolder.js.map +1 -0
- package/dist/ai/tools/getMarkdownDocument.d.ts +40 -0
- package/dist/ai/tools/getMarkdownDocument.d.ts.map +1 -0
- package/dist/ai/tools/getMarkdownDocument.js +31 -0
- package/dist/ai/tools/getMarkdownDocument.js.map +1 -0
- package/dist/ai/tools/getRequest.d.ts +31 -0
- package/dist/ai/tools/getRequest.d.ts.map +1 -0
- package/dist/ai/tools/getRequest.js +28 -0
- package/dist/ai/tools/getRequest.js.map +1 -0
- package/dist/ai/tools/getSelectedCollection.d.ts +20 -0
- package/dist/ai/tools/getSelectedCollection.d.ts.map +1 -0
- package/dist/ai/tools/getSelectedCollection.js +16 -0
- package/dist/ai/tools/getSelectedCollection.js.map +1 -0
- package/dist/ai/tools/getSidebarRequest.d.ts +20 -0
- package/dist/ai/tools/getSidebarRequest.d.ts.map +1 -0
- package/dist/ai/tools/getSidebarRequest.js +16 -0
- package/dist/ai/tools/getSidebarRequest.js.map +1 -0
- package/dist/ai/tools/gitCommits.d.ts +50 -0
- package/dist/ai/tools/gitCommits.d.ts.map +1 -0
- package/dist/ai/tools/gitCommits.js +37 -0
- package/dist/ai/tools/gitCommits.js.map +1 -0
- package/dist/ai/tools/gitDiff.d.ts +70 -0
- package/dist/ai/tools/gitDiff.d.ts.map +1 -0
- package/dist/ai/tools/gitDiff.js +49 -0
- package/dist/ai/tools/gitDiff.js.map +1 -0
- package/dist/ai/tools/gitFileDiff.d.ts +80 -0
- package/dist/ai/tools/gitFileDiff.d.ts.map +1 -0
- package/dist/ai/tools/gitFileDiff.js +55 -0
- package/dist/ai/tools/gitFileDiff.js.map +1 -0
- package/dist/ai/tools/gitFileInfo.d.ts +60 -0
- package/dist/ai/tools/gitFileInfo.d.ts.map +1 -0
- package/dist/ai/tools/gitFileInfo.js +43 -0
- package/dist/ai/tools/gitFileInfo.js.map +1 -0
- package/dist/ai/tools/gitRepoInfo.d.ts +40 -0
- package/dist/ai/tools/gitRepoInfo.d.ts.map +1 -0
- package/dist/ai/tools/gitRepoInfo.js +31 -0
- package/dist/ai/tools/gitRepoInfo.js.map +1 -0
- package/dist/ai/tools/index.d.ts +1260 -0
- package/dist/ai/tools/index.d.ts.map +1 -0
- package/dist/ai/tools/index.js +100 -0
- package/dist/ai/tools/index.js.map +1 -0
- package/dist/ai/tools/listCollections.d.ts +20 -0
- package/dist/ai/tools/listCollections.d.ts.map +1 -0
- package/dist/ai/tools/listCollections.js +16 -0
- package/dist/ai/tools/listCollections.js.map +1 -0
- package/dist/ai/tools/listEnvironments.d.ts +20 -0
- package/dist/ai/tools/listEnvironments.d.ts.map +1 -0
- package/dist/ai/tools/listEnvironments.js +16 -0
- package/dist/ai/tools/listEnvironments.js.map +1 -0
- package/dist/ai/tools/listRequests.d.ts +40 -0
- package/dist/ai/tools/listRequests.d.ts.map +1 -0
- package/dist/ai/tools/listRequests.js +28 -0
- package/dist/ai/tools/listRequests.js.map +1 -0
- package/dist/ai/tools/queryResponseBody.d.ts +50 -0
- package/dist/ai/tools/queryResponseBody.d.ts.map +1 -0
- package/dist/ai/tools/queryResponseBody.js +37 -0
- package/dist/ai/tools/queryResponseBody.js.map +1 -0
- package/dist/ai/tools/schemas.d.ts +152 -0
- package/dist/ai/tools/schemas.d.ts.map +1 -0
- package/dist/ai/tools/schemas.js +81 -0
- package/dist/ai/tools/schemas.js.map +1 -0
- package/dist/ai/tools/searchDocs.d.ts +64 -0
- package/dist/ai/tools/searchDocs.d.ts.map +1 -0
- package/dist/ai/tools/searchDocs.js +44 -0
- package/dist/ai/tools/searchDocs.js.map +1 -0
- package/dist/ai/tools/sendActiveRequest.d.ts +39 -0
- package/dist/ai/tools/sendActiveRequest.d.ts.map +1 -0
- package/dist/ai/tools/sendActiveRequest.js +30 -0
- package/dist/ai/tools/sendActiveRequest.js.map +1 -0
- package/dist/ai/tools/setActiveEnvironment.d.ts +49 -0
- package/dist/ai/tools/setActiveEnvironment.d.ts.map +1 -0
- package/dist/ai/tools/setActiveEnvironment.js +36 -0
- package/dist/ai/tools/setActiveEnvironment.js.map +1 -0
- package/dist/ai/tools/systemPrompt.d.ts +5 -0
- package/dist/ai/tools/systemPrompt.d.ts.map +1 -0
- package/dist/ai/tools/systemPrompt.js +34 -0
- package/dist/ai/tools/systemPrompt.js.map +1 -0
- package/dist/ai/tools/terminalExec.d.ts +40 -0
- package/dist/ai/tools/terminalExec.d.ts.map +1 -0
- package/dist/ai/tools/terminalExec.js +31 -0
- package/dist/ai/tools/terminalExec.js.map +1 -0
- package/dist/ai/tools/types.d.ts +68 -0
- package/dist/ai/tools/types.d.ts.map +1 -0
- package/dist/ai/tools/types.js +2 -0
- package/dist/ai/tools/types.js.map +1 -0
- package/dist/ai/tools/updateActiveRequest.d.ts +279 -0
- package/dist/ai/tools/updateActiveRequest.d.ts.map +1 -0
- package/dist/ai/tools/updateActiveRequest.js +175 -0
- package/dist/ai/tools/updateActiveRequest.js.map +1 -0
- package/dist/ai/tools/updateRequestScript.d.ts +93 -0
- package/dist/ai/tools/updateRequestScript.d.ts.map +1 -0
- package/dist/ai/tools/updateRequestScript.js +57 -0
- package/dist/ai/tools/updateRequestScript.js.map +1 -0
- package/dist/auth.d.ts +192 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +294 -0
- package/dist/auth.js.map +1 -0
- package/dist/bodyRawSend.d.ts +25 -0
- package/dist/bodyRawSend.d.ts.map +1 -0
- package/dist/bodyRawSend.js +61 -0
- package/dist/bodyRawSend.js.map +1 -0
- package/dist/builtinThemes.d.ts +33 -0
- package/dist/builtinThemes.d.ts.map +1 -0
- package/dist/builtinThemes.js +40 -0
- package/dist/builtinThemes.js.map +1 -0
- package/dist/codeEditorSettings.d.ts +2 -0
- package/dist/codeEditorSettings.d.ts.map +1 -0
- package/dist/codeEditorSettings.js +2 -0
- package/dist/codeEditorSettings.js.map +1 -0
- package/dist/collectionContainerOrder.d.ts +42 -0
- package/dist/collectionContainerOrder.d.ts.map +1 -0
- package/dist/collectionContainerOrder.js +62 -0
- package/dist/collectionContainerOrder.js.map +1 -0
- package/dist/collectionRunner.d.ts +510 -0
- package/dist/collectionRunner.d.ts.map +1 -0
- package/dist/collectionRunner.js +296 -0
- package/dist/collectionRunner.js.map +1 -0
- package/dist/contrast.d.ts +16 -0
- package/dist/contrast.d.ts.map +1 -0
- package/dist/contrast.js +51 -0
- package/dist/contrast.js.map +1 -0
- package/dist/cookies/CookieJar.d.ts +151 -0
- package/dist/cookies/CookieJar.d.ts.map +1 -0
- package/dist/cookies/CookieJar.js +318 -0
- package/dist/cookies/CookieJar.js.map +1 -0
- package/dist/deepLink.d.ts +98 -0
- package/dist/deepLink.d.ts.map +1 -0
- package/dist/deepLink.js +211 -0
- package/dist/deepLink.js.map +1 -0
- package/dist/environmentVariables.d.ts +34 -0
- package/dist/environmentVariables.d.ts.map +1 -0
- package/dist/environmentVariables.js +56 -0
- package/dist/environmentVariables.js.map +1 -0
- package/dist/filestore/index.d.ts +16 -0
- package/dist/filestore/index.d.ts.map +1 -0
- package/dist/filestore/index.js +16 -0
- package/dist/filestore/index.js.map +1 -0
- package/dist/filestore/parse.d.ts +44 -0
- package/dist/filestore/parse.d.ts.map +1 -0
- package/dist/filestore/parse.js +80 -0
- package/dist/filestore/parse.js.map +1 -0
- package/dist/filestore/schemas.d.ts +1612 -0
- package/dist/filestore/schemas.d.ts.map +1 -0
- package/dist/filestore/schemas.js +586 -0
- package/dist/filestore/schemas.js.map +1 -0
- package/dist/filestore/snippet.d.ts +10 -0
- package/dist/filestore/snippet.d.ts.map +1 -0
- package/dist/filestore/snippet.js +43 -0
- package/dist/filestore/snippet.js.map +1 -0
- package/dist/filestore/storageSchemas.d.ts +123 -0
- package/dist/filestore/storageSchemas.d.ts.map +1 -0
- package/dist/filestore/storageSchemas.js +94 -0
- package/dist/filestore/storageSchemas.js.map +1 -0
- package/dist/filestore/stringify.d.ts +59 -0
- package/dist/filestore/stringify.d.ts.map +1 -0
- package/dist/filestore/stringify.js +103 -0
- package/dist/filestore/stringify.js.map +1 -0
- package/dist/filestore/validate.d.ts +60 -0
- package/dist/filestore/validate.d.ts.map +1 -0
- package/dist/filestore/validate.js +118 -0
- package/dist/filestore/validate.js.map +1 -0
- package/dist/filestore/variables.d.ts +9 -0
- package/dist/filestore/variables.d.ts.map +1 -0
- package/dist/filestore/variables.js +15 -0
- package/dist/filestore/variables.js.map +1 -0
- package/dist/formData.d.ts +2 -0
- package/dist/formData.d.ts.map +1 -0
- package/dist/formData.js +2 -0
- package/dist/formData.js.map +1 -0
- package/dist/generalSettings.d.ts +22 -0
- package/dist/generalSettings.d.ts.map +1 -0
- package/dist/generalSettings.js +188 -0
- package/dist/generalSettings.js.map +1 -0
- package/dist/gitHttpErrors.d.ts +125 -0
- package/dist/gitHttpErrors.d.ts.map +1 -0
- package/dist/gitHttpErrors.js +271 -0
- package/dist/gitHttpErrors.js.map +1 -0
- package/dist/gitSidebarExpansion.d.ts +22 -0
- package/dist/gitSidebarExpansion.d.ts.map +1 -0
- package/dist/gitSidebarExpansion.js +16 -0
- package/dist/gitSidebarExpansion.js.map +1 -0
- package/dist/gitUrl.d.ts +39 -0
- package/dist/gitUrl.d.ts.map +1 -0
- package/dist/gitUrl.js +105 -0
- package/dist/gitUrl.js.map +1 -0
- package/dist/harborclientExport.d.ts +23 -0
- package/dist/harborclientExport.d.ts.map +1 -0
- package/dist/harborclientExport.js +39 -0
- package/dist/harborclientExport.js.map +1 -0
- package/dist/highContrastPalette.d.ts +91 -0
- package/dist/highContrastPalette.d.ts.map +1 -0
- package/dist/highContrastPalette.js +118 -0
- package/dist/highContrastPalette.js.map +1 -0
- package/dist/httpHeaders.d.ts +2 -0
- package/dist/httpHeaders.d.ts.map +1 -0
- package/dist/httpHeaders.js +2 -0
- package/dist/httpHeaders.js.map +1 -0
- package/dist/httpMethod.d.ts +9 -0
- package/dist/httpMethod.d.ts.map +1 -0
- package/dist/httpMethod.js +23 -0
- package/dist/httpMethod.js.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/ICookieJar.d.ts +41 -0
- package/dist/interfaces/ICookieJar.d.ts.map +1 -0
- package/dist/interfaces/ICookieJar.js +2 -0
- package/dist/interfaces/ICookieJar.js.map +1 -0
- package/dist/interfaces/IScriptRunner.d.ts +20 -0
- package/dist/interfaces/IScriptRunner.d.ts.map +1 -0
- package/dist/interfaces/IScriptRunner.js +2 -0
- package/dist/interfaces/IScriptRunner.js.map +1 -0
- package/dist/interfaces/PluginHooks.d.ts +24 -0
- package/dist/interfaces/PluginHooks.d.ts.map +1 -0
- package/dist/interfaces/PluginHooks.js +2 -0
- package/dist/interfaces/PluginHooks.js.map +1 -0
- package/dist/interfaces/SettingsProvider.d.ts +20 -0
- package/dist/interfaces/SettingsProvider.d.ts.map +1 -0
- package/dist/interfaces/SettingsProvider.js +2 -0
- package/dist/interfaces/SettingsProvider.js.map +1 -0
- package/dist/interfaces/index.d.ts +5 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +2 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/mcpToolNames.d.ts +27 -0
- package/dist/mcpToolNames.d.ts.map +1 -0
- package/dist/mcpToolNames.js +41 -0
- package/dist/mcpToolNames.js.map +1 -0
- package/dist/multipartRaw.d.ts +85 -0
- package/dist/multipartRaw.d.ts.map +1 -0
- package/dist/multipartRaw.js +244 -0
- package/dist/multipartRaw.js.map +1 -0
- package/dist/network/executeHttpSend.d.ts +39 -0
- package/dist/network/executeHttpSend.d.ts.map +1 -0
- package/dist/network/executeHttpSend.js +60 -0
- package/dist/network/executeHttpSend.js.map +1 -0
- package/dist/pageSidebarSection.d.ts +35 -0
- package/dist/pageSidebarSection.d.ts.map +1 -0
- package/dist/pageSidebarSection.js +76 -0
- package/dist/pageSidebarSection.js.map +1 -0
- package/dist/parseJson.d.ts +8 -0
- package/dist/parseJson.d.ts.map +1 -0
- package/dist/parseJson.js +17 -0
- package/dist/parseJson.js.map +1 -0
- package/dist/plugin/catalog.d.ts +229 -0
- package/dist/plugin/catalog.d.ts.map +1 -0
- package/dist/plugin/catalog.js +248 -0
- package/dist/plugin/catalog.js.map +1 -0
- package/dist/plugin/catalogCategories.d.ts +30 -0
- package/dist/plugin/catalogCategories.d.ts.map +1 -0
- package/dist/plugin/catalogCategories.js +88 -0
- package/dist/plugin/catalogCategories.js.map +1 -0
- package/dist/plugin/customThemeExport.d.ts +95 -0
- package/dist/plugin/customThemeExport.d.ts.map +1 -0
- package/dist/plugin/customThemeExport.js +264 -0
- package/dist/plugin/customThemeExport.js.map +1 -0
- package/dist/plugin/databaseTypes.d.ts +90 -0
- package/dist/plugin/databaseTypes.d.ts.map +1 -0
- package/dist/plugin/databaseTypes.js +2 -0
- package/dist/plugin/databaseTypes.js.map +1 -0
- package/dist/plugin/githubRaw.d.ts +54 -0
- package/dist/plugin/githubRaw.d.ts.map +1 -0
- package/dist/plugin/githubRaw.js +138 -0
- package/dist/plugin/githubRaw.js.map +1 -0
- package/dist/plugin/httpRequest.d.ts +17 -0
- package/dist/plugin/httpRequest.d.ts.map +1 -0
- package/dist/plugin/httpRequest.js +45 -0
- package/dist/plugin/httpRequest.js.map +1 -0
- package/dist/plugin/importHandlers.d.ts +65 -0
- package/dist/plugin/importHandlers.d.ts.map +1 -0
- package/dist/plugin/importHandlers.js +2 -0
- package/dist/plugin/importHandlers.js.map +1 -0
- package/dist/plugin/pluginDatabaseApi.d.ts +39 -0
- package/dist/plugin/pluginDatabaseApi.d.ts.map +1 -0
- package/dist/plugin/pluginDatabaseApi.js +45 -0
- package/dist/plugin/pluginDatabaseApi.js.map +1 -0
- package/dist/plugin/pluginSurface.d.ts +20 -0
- package/dist/plugin/pluginSurface.d.ts.map +1 -0
- package/dist/plugin/pluginSurface.js +31 -0
- package/dist/plugin/pluginSurface.js.map +1 -0
- package/dist/plugin/stripPluginScreenshotImagesFromMarkdown.d.ts +9 -0
- package/dist/plugin/stripPluginScreenshotImagesFromMarkdown.d.ts.map +1 -0
- package/dist/plugin/stripPluginScreenshotImagesFromMarkdown.js +132 -0
- package/dist/plugin/stripPluginScreenshotImagesFromMarkdown.js.map +1 -0
- package/dist/plugin/themeCategory.d.ts +62 -0
- package/dist/plugin/themeCategory.d.ts.map +1 -0
- package/dist/plugin/themeCategory.js +84 -0
- package/dist/plugin/themeCategory.js.map +1 -0
- package/dist/plugin/types.d.ts +415 -0
- package/dist/plugin/types.d.ts.map +1 -0
- package/dist/plugin/types.js +81 -0
- package/dist/plugin/types.js.map +1 -0
- package/dist/queryParams.d.ts +63 -0
- package/dist/queryParams.d.ts.map +1 -0
- package/dist/queryParams.js +170 -0
- package/dist/queryParams.js.map +1 -0
- package/dist/requestEditorTab.d.ts +24 -0
- package/dist/requestEditorTab.d.ts.map +1 -0
- package/dist/requestEditorTab.js +44 -0
- package/dist/requestEditorTab.js.map +1 -0
- package/dist/requestRunner/RequestRunner.d.ts +39 -0
- package/dist/requestRunner/RequestRunner.d.ts.map +1 -0
- package/dist/requestRunner/RequestRunner.js +298 -0
- package/dist/requestRunner/RequestRunner.js.map +1 -0
- package/dist/requestRunner/helpers.d.ts +52 -0
- package/dist/requestRunner/helpers.d.ts.map +1 -0
- package/dist/requestRunner/helpers.js +195 -0
- package/dist/requestRunner/helpers.js.map +1 -0
- package/dist/requestRunner/index.d.ts +7 -0
- package/dist/requestRunner/index.d.ts.map +1 -0
- package/dist/requestRunner/index.js +6 -0
- package/dist/requestRunner/index.js.map +1 -0
- package/dist/requestRunner/types.d.ts +148 -0
- package/dist/requestRunner/types.d.ts.map +1 -0
- package/dist/requestRunner/types.js +2 -0
- package/dist/requestRunner/types.js.map +1 -0
- package/dist/requestTags.d.ts +22 -0
- package/dist/requestTags.d.ts.map +1 -0
- package/dist/requestTags.js +34 -0
- package/dist/requestTags.js.map +1 -0
- package/dist/scriptRefs.d.ts +190 -0
- package/dist/scriptRefs.d.ts.map +1 -0
- package/dist/scriptRefs.js +387 -0
- package/dist/scriptRefs.js.map +1 -0
- package/dist/scriptStage.d.ts +118 -0
- package/dist/scriptStage.d.ts.map +1 -0
- package/dist/scriptStage.js +204 -0
- package/dist/scriptStage.js.map +1 -0
- package/dist/scripting/scriptApi.d.ts +59 -0
- package/dist/scripting/scriptApi.d.ts.map +1 -0
- package/dist/scripting/scriptApi.js +692 -0
- package/dist/scripting/scriptApi.js.map +1 -0
- package/dist/scripting/scriptAssertionCompat.d.ts +21 -0
- package/dist/scripting/scriptAssertionCompat.d.ts.map +1 -0
- package/dist/scripting/scriptAssertionCompat.js +58 -0
- package/dist/scripting/scriptAssertionCompat.js.map +1 -0
- package/dist/scripting/scriptEvaluator.d.ts +42 -0
- package/dist/scripting/scriptEvaluator.d.ts.map +1 -0
- package/dist/scripting/scriptEvaluator.js +179 -0
- package/dist/scripting/scriptEvaluator.js.map +1 -0
- package/dist/scripting/scriptExpect.d.ts +3 -0
- package/dist/scripting/scriptExpect.d.ts.map +1 -0
- package/dist/scripting/scriptExpect.js +14 -0
- package/dist/scripting/scriptExpect.js.map +1 -0
- package/dist/scripting/scriptFileOperations.d.ts +172 -0
- package/dist/scripting/scriptFileOperations.d.ts.map +1 -0
- package/dist/scripting/scriptFileOperations.js +271 -0
- package/dist/scripting/scriptFileOperations.js.map +1 -0
- package/dist/scripting/scriptResponseAssertions.d.ts +40 -0
- package/dist/scripting/scriptResponseAssertions.d.ts.map +1 -0
- package/dist/scripting/scriptResponseAssertions.js +249 -0
- package/dist/scripting/scriptResponseAssertions.js.map +1 -0
- package/dist/scripting/scriptResponseDocument.d.ts +47 -0
- package/dist/scripting/scriptResponseDocument.d.ts.map +1 -0
- package/dist/scripting/scriptResponseDocument.js +49 -0
- package/dist/scripting/scriptResponseDocument.js.map +1 -0
- package/dist/scripting/scriptRunner.d.ts +2 -0
- package/dist/scripting/scriptRunner.d.ts.map +1 -0
- package/dist/scripting/scriptRunner.js +132 -0
- package/dist/scripting/scriptRunner.js.map +1 -0
- package/dist/scripting/scriptSnippetBundler.d.ts +46 -0
- package/dist/scripting/scriptSnippetBundler.d.ts.map +1 -0
- package/dist/scripting/scriptSnippetBundler.js +136 -0
- package/dist/scripting/scriptSnippetBundler.js.map +1 -0
- package/dist/search/actions.d.ts +44 -0
- package/dist/search/actions.d.ts.map +1 -0
- package/dist/search/actions.js +120 -0
- package/dist/search/actions.js.map +1 -0
- package/dist/search/index.d.ts +13 -0
- package/dist/search/index.d.ts.map +1 -0
- package/dist/search/index.js +13 -0
- package/dist/search/index.js.map +1 -0
- package/dist/search/installedPlugins.d.ts +31 -0
- package/dist/search/installedPlugins.d.ts.map +1 -0
- package/dist/search/installedPlugins.js +73 -0
- package/dist/search/installedPlugins.js.map +1 -0
- package/dist/search/oramaIndex.d.ts +47 -0
- package/dist/search/oramaIndex.d.ts.map +1 -0
- package/dist/search/oramaIndex.js +56 -0
- package/dist/search/oramaIndex.js.map +1 -0
- package/dist/search/pagesCatalog.d.ts +34 -0
- package/dist/search/pagesCatalog.d.ts.map +1 -0
- package/dist/search/pagesCatalog.js +37 -0
- package/dist/search/pagesCatalog.js.map +1 -0
- package/dist/search/plugins.d.ts +40 -0
- package/dist/search/plugins.d.ts.map +1 -0
- package/dist/search/plugins.js +79 -0
- package/dist/search/plugins.js.map +1 -0
- package/dist/search/settings.d.ts +29 -0
- package/dist/search/settings.d.ts.map +1 -0
- package/dist/search/settings.js +63 -0
- package/dist/search/settings.js.map +1 -0
- package/dist/search/settingsCatalog.d.ts +112 -0
- package/dist/search/settingsCatalog.d.ts.map +1 -0
- package/dist/search/settingsCatalog.js +426 -0
- package/dist/search/settingsCatalog.js.map +1 -0
- package/dist/search/sidebar.d.ts +139 -0
- package/dist/search/sidebar.d.ts.map +1 -0
- package/dist/search/sidebar.js +342 -0
- package/dist/search/sidebar.js.map +1 -0
- package/dist/search/slashCommands.d.ts +45 -0
- package/dist/search/slashCommands.d.ts.map +1 -0
- package/dist/search/slashCommands.js +71 -0
- package/dist/search/slashCommands.js.map +1 -0
- package/dist/search/snippets.d.ts +48 -0
- package/dist/search/snippets.d.ts.map +1 -0
- package/dist/search/snippets.js +114 -0
- package/dist/search/snippets.js.map +1 -0
- package/dist/search/types.d.ts +60 -0
- package/dist/search/types.d.ts.map +1 -0
- package/dist/search/types.js +49 -0
- package/dist/search/types.js.map +1 -0
- package/dist/search/unified.d.ts +57 -0
- package/dist/search/unified.d.ts.map +1 -0
- package/dist/search/unified.js +153 -0
- package/dist/search/unified.js.map +1 -0
- package/dist/shortcuts.d.ts +174 -0
- package/dist/shortcuts.d.ts.map +1 -0
- package/dist/shortcuts.js +1040 -0
- package/dist/shortcuts.js.map +1 -0
- package/dist/sidebarColor.d.ts +16 -0
- package/dist/sidebarColor.d.ts.map +1 -0
- package/dist/sidebarColor.js +21 -0
- package/dist/sidebarColor.js.map +1 -0
- package/dist/sidebarExpansion.d.ts +12 -0
- package/dist/sidebarExpansion.d.ts.map +1 -0
- package/dist/sidebarExpansion.js +116 -0
- package/dist/sidebarExpansion.js.map +1 -0
- package/dist/snippet/catalog.d.ts +120 -0
- package/dist/snippet/catalog.d.ts.map +1 -0
- package/dist/snippet/catalog.js +105 -0
- package/dist/snippet/catalog.js.map +1 -0
- package/dist/snippet/types.d.ts +90 -0
- package/dist/snippet/types.d.ts.map +1 -0
- package/dist/snippet/types.js +2 -0
- package/dist/snippet/types.js.map +1 -0
- package/dist/snippetBundle.d.ts +21 -0
- package/dist/snippetBundle.d.ts.map +1 -0
- package/dist/snippetBundle.js +107 -0
- package/dist/snippetBundle.js.map +1 -0
- package/dist/snippetImport.d.ts +19 -0
- package/dist/snippetImport.d.ts.map +1 -0
- package/dist/snippetImport.js +34 -0
- package/dist/snippetImport.js.map +1 -0
- package/dist/snippetScope.d.ts +42 -0
- package/dist/snippetScope.d.ts.map +1 -0
- package/dist/snippetScope.js +50 -0
- package/dist/snippetScope.js.map +1 -0
- package/dist/storage/IStorage.d.ts +375 -0
- package/dist/storage/IStorage.d.ts.map +1 -0
- package/dist/storage/IStorage.js +2 -0
- package/dist/storage/IStorage.js.map +1 -0
- package/dist/themes.d.ts +24 -0
- package/dist/themes.d.ts.map +1 -0
- package/dist/themes.js +10 -0
- package/dist/themes.js.map +1 -0
- package/dist/types/ai.d.ts +304 -0
- package/dist/types/ai.d.ts.map +1 -0
- package/dist/types/ai.js +2 -0
- package/dist/types/ai.js.map +1 -0
- package/dist/types/api/backup.d.ts +27 -0
- package/dist/types/api/backup.d.ts.map +1 -0
- package/dist/types/api/backup.js +2 -0
- package/dist/types/api/backup.js.map +1 -0
- package/dist/types/api/chats.d.ts +88 -0
- package/dist/types/api/chats.d.ts.map +1 -0
- package/dist/types/api/chats.js +2 -0
- package/dist/types/api/chats.js.map +1 -0
- package/dist/types/api/collections.d.ts +251 -0
- package/dist/types/api/collections.d.ts.map +1 -0
- package/dist/types/api/collections.js +2 -0
- package/dist/types/api/collections.js.map +1 -0
- package/dist/types/api/customThemes.d.ts +68 -0
- package/dist/types/api/customThemes.d.ts.map +1 -0
- package/dist/types/api/customThemes.js +2 -0
- package/dist/types/api/customThemes.js.map +1 -0
- package/dist/types/api/docs.d.ts +14 -0
- package/dist/types/api/docs.d.ts.map +1 -0
- package/dist/types/api/docs.js +2 -0
- package/dist/types/api/docs.js.map +1 -0
- package/dist/types/api/documents.d.ts +51 -0
- package/dist/types/api/documents.d.ts.map +1 -0
- package/dist/types/api/documents.js +2 -0
- package/dist/types/api/documents.js.map +1 -0
- package/dist/types/api/environments.d.ts +57 -0
- package/dist/types/api/environments.d.ts.map +1 -0
- package/dist/types/api/environments.js +2 -0
- package/dist/types/api/environments.js.map +1 -0
- package/dist/types/api/git.d.ts +392 -0
- package/dist/types/api/git.d.ts.map +1 -0
- package/dist/types/api/git.js +2 -0
- package/dist/types/api/git.js.map +1 -0
- package/dist/types/api/http.d.ts +47 -0
- package/dist/types/api/http.d.ts.map +1 -0
- package/dist/types/api/http.js +2 -0
- package/dist/types/api/http.js.map +1 -0
- package/dist/types/api/index.d.ts +28 -0
- package/dist/types/api/index.d.ts.map +1 -0
- package/dist/types/api/index.js +2 -0
- package/dist/types/api/index.js.map +1 -0
- package/dist/types/api/mcp.d.ts +77 -0
- package/dist/types/api/mcp.d.ts.map +1 -0
- package/dist/types/api/mcp.js +2 -0
- package/dist/types/api/mcp.js.map +1 -0
- package/dist/types/api/plugins.d.ts +338 -0
- package/dist/types/api/plugins.d.ts.map +1 -0
- package/dist/types/api/plugins.js +2 -0
- package/dist/types/api/plugins.js.map +1 -0
- package/dist/types/api/requestHistory.d.ts +27 -0
- package/dist/types/api/requestHistory.d.ts.map +1 -0
- package/dist/types/api/requestHistory.js +2 -0
- package/dist/types/api/requestHistory.js.map +1 -0
- package/dist/types/api/requests.d.ts +35 -0
- package/dist/types/api/requests.d.ts.map +1 -0
- package/dist/types/api/requests.js +2 -0
- package/dist/types/api/requests.js.map +1 -0
- package/dist/types/api/settings.d.ts +163 -0
- package/dist/types/api/settings.d.ts.map +1 -0
- package/dist/types/api/settings.js +2 -0
- package/dist/types/api/settings.js.map +1 -0
- package/dist/types/api/sharing.d.ts +68 -0
- package/dist/types/api/sharing.d.ts.map +1 -0
- package/dist/types/api/sharing.js +2 -0
- package/dist/types/api/sharing.js.map +1 -0
- package/dist/types/api/snippets.d.ts +159 -0
- package/dist/types/api/snippets.d.ts.map +1 -0
- package/dist/types/api/snippets.js +2 -0
- package/dist/types/api/snippets.js.map +1 -0
- package/dist/types/api/storage.d.ts +57 -0
- package/dist/types/api/storage.d.ts.map +1 -0
- package/dist/types/api/storage.js +2 -0
- package/dist/types/api/storage.js.map +1 -0
- package/dist/types/api/tabGroup.d.ts +43 -0
- package/dist/types/api/tabGroup.d.ts.map +1 -0
- package/dist/types/api/tabGroup.js +2 -0
- package/dist/types/api/tabGroup.js.map +1 -0
- package/dist/types/api/teamHub.d.ts +225 -0
- package/dist/types/api/teamHub.d.ts.map +1 -0
- package/dist/types/api/teamHub.js +2 -0
- package/dist/types/api/teamHub.js.map +1 -0
- package/dist/types/api/terminal.d.ts +101 -0
- package/dist/types/api/terminal.d.ts.map +1 -0
- package/dist/types/api/terminal.js +2 -0
- package/dist/types/api/terminal.js.map +1 -0
- package/dist/types/api/trash.d.ts +27 -0
- package/dist/types/api/trash.d.ts.map +1 -0
- package/dist/types/api/trash.js +2 -0
- package/dist/types/api/trash.js.map +1 -0
- package/dist/types/api/window.d.ts +251 -0
- package/dist/types/api/window.d.ts.map +1 -0
- package/dist/types/api/window.js +2 -0
- package/dist/types/api/window.js.map +1 -0
- package/dist/types/app.d.ts +83 -0
- package/dist/types/app.d.ts.map +1 -0
- package/dist/types/app.js +2 -0
- package/dist/types/app.js.map +1 -0
- package/dist/types/collection.d.ts +559 -0
- package/dist/types/collection.d.ts.map +1 -0
- package/dist/types/collection.js +2 -0
- package/dist/types/collection.js.map +1 -0
- package/dist/types/common.d.ts +23 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +2 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/customTheme.d.ts +163 -0
- package/dist/types/customTheme.d.ts.map +1 -0
- package/dist/types/customTheme.js +311 -0
- package/dist/types/customTheme.js.map +1 -0
- package/dist/types/environment.d.ts +64 -0
- package/dist/types/environment.d.ts.map +1 -0
- package/dist/types/environment.js +2 -0
- package/dist/types/environment.js.map +1 -0
- package/dist/types/index.d.ts +21 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +20 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/mcp.d.ts +153 -0
- package/dist/types/mcp.d.ts.map +1 -0
- package/dist/types/mcp.js +2 -0
- package/dist/types/mcp.js.map +1 -0
- package/dist/types/request.d.ts +294 -0
- package/dist/types/request.d.ts.map +1 -0
- package/dist/types/request.js +2 -0
- package/dist/types/request.js.map +1 -0
- package/dist/types/requestHistory.d.ts +88 -0
- package/dist/types/requestHistory.d.ts.map +1 -0
- package/dist/types/requestHistory.js +5 -0
- package/dist/types/requestHistory.js.map +1 -0
- package/dist/types/script.d.ts +366 -0
- package/dist/types/script.d.ts.map +1 -0
- package/dist/types/script.js +34 -0
- package/dist/types/script.js.map +1 -0
- package/dist/types/settings.d.ts +340 -0
- package/dist/types/settings.d.ts.map +1 -0
- package/dist/types/settings.js +3 -0
- package/dist/types/settings.js.map +1 -0
- package/dist/types/sharing.d.ts +87 -0
- package/dist/types/sharing.d.ts.map +1 -0
- package/dist/types/sharing.js +2 -0
- package/dist/types/sharing.js.map +1 -0
- package/dist/types/snippet.d.ts +150 -0
- package/dist/types/snippet.d.ts.map +1 -0
- package/dist/types/snippet.js +2 -0
- package/dist/types/snippet.js.map +1 -0
- package/dist/types/storage.d.ts +846 -0
- package/dist/types/storage.d.ts.map +1 -0
- package/dist/types/storage.js +2 -0
- package/dist/types/storage.js.map +1 -0
- package/dist/types/tabGroup.d.ts +108 -0
- package/dist/types/tabGroup.d.ts.map +1 -0
- package/dist/types/tabGroup.js +26 -0
- package/dist/types/tabGroup.js.map +1 -0
- package/dist/types/teamHub.d.ts +690 -0
- package/dist/types/teamHub.d.ts.map +1 -0
- package/dist/types/teamHub.js +2 -0
- package/dist/types/teamHub.js.map +1 -0
- package/dist/types/trash.d.ts +63 -0
- package/dist/types/trash.d.ts.map +1 -0
- package/dist/types/trash.js +2 -0
- package/dist/types/trash.js.map +1 -0
- package/dist/types/window.d.ts +14 -0
- package/dist/types/window.d.ts.map +1 -0
- package/dist/types/window.js +2 -0
- package/dist/types/window.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/urlencoded.d.ts +2 -0
- package/dist/urlencoded.d.ts.map +1 -0
- package/dist/urlencoded.js +2 -0
- package/dist/urlencoded.js.map +1 -0
- package/dist/urlencodedRaw.d.ts +23 -0
- package/dist/urlencodedRaw.d.ts.map +1 -0
- package/dist/urlencodedRaw.js +60 -0
- package/dist/urlencodedRaw.js.map +1 -0
- package/dist/userAgent.d.ts +132 -0
- package/dist/userAgent.d.ts.map +1 -0
- package/dist/userAgent.js +178 -0
- package/dist/userAgent.js.map +1 -0
- package/dist/zoomPresets.d.ts +38 -0
- package/dist/zoomPresets.d.ts.map +1 -0
- package/dist/zoomPresets.js +67 -0
- package/dist/zoomPresets.js.map +1 -0
- package/package.json +92 -0
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAI tool definition for the script `/ask` mini-agent response.
|
|
3
|
+
*/
|
|
4
|
+
export const SCRIPT_ASK_TOOL = {
|
|
5
|
+
type: 'function',
|
|
6
|
+
function: {
|
|
7
|
+
name: 'answer_script',
|
|
8
|
+
description: 'Returns a short answer for an inline /ask request in a HarborClient request script editor.',
|
|
9
|
+
parameters: {
|
|
10
|
+
type: 'object',
|
|
11
|
+
properties: {
|
|
12
|
+
note: {
|
|
13
|
+
type: 'string',
|
|
14
|
+
description: 'Optional short explanation inserted as // comment lines. Keep to a few lines.'
|
|
15
|
+
},
|
|
16
|
+
code: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
description: 'Optional JavaScript snippet that replaces the /ask command line in the script.'
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
additionalProperties: false
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Builds a numbered view of script source for the mini-agent system prompt.
|
|
27
|
+
*
|
|
28
|
+
* @param code - Full script source.
|
|
29
|
+
* @returns Lines prefixed with 1-based line numbers.
|
|
30
|
+
*/
|
|
31
|
+
function formatNumberedScript(code) {
|
|
32
|
+
const lines = code.split('\n');
|
|
33
|
+
const width = String(Math.max(lines.length, 1)).length;
|
|
34
|
+
return lines
|
|
35
|
+
.map((line, index) => `${String(index + 1).padStart(width, ' ')}| ${line}`)
|
|
36
|
+
.join('\n');
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Builds the system prompt for an inline script `/ask` request.
|
|
40
|
+
*
|
|
41
|
+
* @param context - Script source, slash-command line, and phase.
|
|
42
|
+
* @returns System prompt instructing the model to call answer_script.
|
|
43
|
+
*/
|
|
44
|
+
export function buildScriptAskSystemPrompt(context) {
|
|
45
|
+
const phaseLabel = context.phase === 'pre' ? 'pre-request' : 'post-request';
|
|
46
|
+
return `You are an assistant embedded in HarborClient, a desktop HTTP API client.
|
|
47
|
+
|
|
48
|
+
The user is editing a ${phaseLabel} request script and typed /ask on line ${context.line}. Answer very briefly about that line or the next line of code when relevant.
|
|
49
|
+
|
|
50
|
+
Rules:
|
|
51
|
+
1. Always respond by calling the answer_script tool exactly once.
|
|
52
|
+
2. Keep answers short: at most a few comment lines or a small code snippet.
|
|
53
|
+
3. Use note for brief explanations (inserted as // comments). Use code when the user needs executable JavaScript; it replaces the /ask line.
|
|
54
|
+
4. Prefer code over note when the user asks for a snippet or example.
|
|
55
|
+
5. Use HarborClient hc API in scripts, never Postman pm syntax.
|
|
56
|
+
6. Do not mention tools, prompts, or that you are an AI.
|
|
57
|
+
7. The /ask line will be replaced entirely. Do not repeat or include code from other lines in note or code.
|
|
58
|
+
8. When using code, output only the new JavaScript that replaces the /ask line — never a // comment in the code field.
|
|
59
|
+
9. When using note, keep it to a short explanation only; it becomes // comment lines.
|
|
60
|
+
|
|
61
|
+
Script with line numbers:
|
|
62
|
+
${formatNumberedScript(context.code)}`;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Parses tool arguments JSON from an answer_script call.
|
|
66
|
+
*
|
|
67
|
+
* @param raw - Raw JSON arguments string from the model.
|
|
68
|
+
* @returns Parsed note and/or code fields.
|
|
69
|
+
*/
|
|
70
|
+
function parseAnswerScriptArgs(raw) {
|
|
71
|
+
if (!raw.trim()) {
|
|
72
|
+
return {};
|
|
73
|
+
}
|
|
74
|
+
const parsed = JSON.parse(raw);
|
|
75
|
+
const answer = {};
|
|
76
|
+
if (typeof parsed.note === 'string' && parsed.note.trim()) {
|
|
77
|
+
answer.note = parsed.note.trim();
|
|
78
|
+
}
|
|
79
|
+
if (typeof parsed.code === 'string' && parsed.code.trim()) {
|
|
80
|
+
answer.code = parsed.code.trim();
|
|
81
|
+
}
|
|
82
|
+
return answer;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Reads an answer_script tool call from a chat step result.
|
|
86
|
+
*
|
|
87
|
+
* @param result - One LLM completion step result.
|
|
88
|
+
* @returns Parsed answer, or null when no usable response is present.
|
|
89
|
+
*/
|
|
90
|
+
export function parseScriptAskResult(result) {
|
|
91
|
+
const toolCall = result.toolCalls?.find((call) => call.name === 'answer_script');
|
|
92
|
+
if (toolCall) {
|
|
93
|
+
try {
|
|
94
|
+
const answer = parseAnswerScriptArgs(toolCall.arguments);
|
|
95
|
+
if (answer.note || answer.code) {
|
|
96
|
+
return answer;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const content = result.content?.trim();
|
|
104
|
+
if (content) {
|
|
105
|
+
return { note: content };
|
|
106
|
+
}
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Renders a short note as one or more // comment lines.
|
|
111
|
+
*
|
|
112
|
+
* @param note - Plain-text explanation from the model.
|
|
113
|
+
* @returns Comment block suitable for insertion into a script.
|
|
114
|
+
*/
|
|
115
|
+
export function renderScriptAskNote(note) {
|
|
116
|
+
return note
|
|
117
|
+
.split('\n')
|
|
118
|
+
.map((line) => (line.trim() ? `// ${line.trim()}` : '//'))
|
|
119
|
+
.join('\n');
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Suffix appended to an inline `/ask` line while the model is thinking.
|
|
123
|
+
*/
|
|
124
|
+
export const SCRIPT_ASK_THINKING_SUFFIX = ' Thinking...';
|
|
125
|
+
/** Matches a full script line containing a slash `/ask` command. */
|
|
126
|
+
const SCRIPT_ASK_LINE_PATTERN = /^(\s*)\/ask(?:[ \t]+(.*))?$/;
|
|
127
|
+
/**
|
|
128
|
+
* Returns whether a script line contains a slash `/ask` command.
|
|
129
|
+
*
|
|
130
|
+
* @param line - Single line of script source (without trailing newline).
|
|
131
|
+
*/
|
|
132
|
+
export function isScriptAskLine(line) {
|
|
133
|
+
return SCRIPT_ASK_LINE_PATTERN.test(line);
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Removes the inline thinking suffix from a script line when present.
|
|
137
|
+
*
|
|
138
|
+
* @param line - Single line of script source.
|
|
139
|
+
* @returns Line without {@link SCRIPT_ASK_THINKING_SUFFIX}.
|
|
140
|
+
*/
|
|
141
|
+
export function stripScriptAskThinking(line) {
|
|
142
|
+
if (line.endsWith(SCRIPT_ASK_THINKING_SUFFIX)) {
|
|
143
|
+
return line.slice(0, -SCRIPT_ASK_THINKING_SUFFIX.length);
|
|
144
|
+
}
|
|
145
|
+
return line;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Appends the thinking suffix to the target `/ask` line only.
|
|
149
|
+
*
|
|
150
|
+
* @param code - Current script source.
|
|
151
|
+
* @param lineNumber - 1-based line number of the `/ask` command.
|
|
152
|
+
* @returns Updated script source.
|
|
153
|
+
*/
|
|
154
|
+
export function appendScriptAskThinking(code, lineNumber) {
|
|
155
|
+
const lines = code.split('\n');
|
|
156
|
+
const index = lineNumber - 1;
|
|
157
|
+
if (index < 0 || index >= lines.length) {
|
|
158
|
+
return code;
|
|
159
|
+
}
|
|
160
|
+
lines[index] = `${lines[index]}${SCRIPT_ASK_THINKING_SUFFIX}`;
|
|
161
|
+
return lines.join('\n');
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Applies an answer by replacing the entire `/ask` line identified by line number.
|
|
165
|
+
*
|
|
166
|
+
* @param code - Current script source.
|
|
167
|
+
* @param lineNumber - 1-based line number of the `/ask` command.
|
|
168
|
+
* @param answer - Parsed note and/or code from the model.
|
|
169
|
+
* @param options - Optional apply behavior overrides.
|
|
170
|
+
* @returns Updated script source; unchanged when the target line is not `/ask` unless
|
|
171
|
+
* {@link ApplyScriptAskAtLineOptions.replaceMissingAskLine} is set.
|
|
172
|
+
*/
|
|
173
|
+
export function applyScriptAskAtLine(code, lineNumber, answer, options) {
|
|
174
|
+
const lines = code.split('\n');
|
|
175
|
+
const index = lineNumber - 1;
|
|
176
|
+
if (index < 0 || index >= lines.length) {
|
|
177
|
+
return code;
|
|
178
|
+
}
|
|
179
|
+
const line = stripScriptAskThinking(lines[index]);
|
|
180
|
+
if (!isScriptAskLine(line) && !options?.replaceMissingAskLine) {
|
|
181
|
+
return code;
|
|
182
|
+
}
|
|
183
|
+
const replacement = answer.code != null && answer.code.length > 0
|
|
184
|
+
? answer.code
|
|
185
|
+
: answer.note
|
|
186
|
+
? renderScriptAskNote(answer.note)
|
|
187
|
+
: '';
|
|
188
|
+
lines[index] = replacement;
|
|
189
|
+
return lines.join('\n');
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Removes the entire `/ask` line when the modal closes without an answer.
|
|
193
|
+
*
|
|
194
|
+
* @param code - Current script source.
|
|
195
|
+
* @param lineNumber - 1-based line number of the `/ask` command.
|
|
196
|
+
* @returns Script source with the command line removed.
|
|
197
|
+
*/
|
|
198
|
+
export function removeScriptAskLine(code, lineNumber) {
|
|
199
|
+
const lines = code.split('\n');
|
|
200
|
+
const index = lineNumber - 1;
|
|
201
|
+
if (index < 0 || index >= lines.length) {
|
|
202
|
+
return code;
|
|
203
|
+
}
|
|
204
|
+
const line = stripScriptAskThinking(lines[index]);
|
|
205
|
+
if (!isScriptAskLine(line)) {
|
|
206
|
+
return code;
|
|
207
|
+
}
|
|
208
|
+
lines.splice(index, 1);
|
|
209
|
+
return lines.join('\n');
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Applies an answer_script result by replacing the slash command span in the script.
|
|
213
|
+
*
|
|
214
|
+
* @param code - Current script source.
|
|
215
|
+
* @param from - Start offset of the slash command span (inclusive).
|
|
216
|
+
* @param to - End offset of the slash command span (exclusive).
|
|
217
|
+
* @param answer - Parsed note and/or code from the model.
|
|
218
|
+
* @returns Updated script source.
|
|
219
|
+
*/
|
|
220
|
+
export function applyScriptAsk(code, from, to, answer) {
|
|
221
|
+
const replacement = answer.code != null && answer.code.length > 0
|
|
222
|
+
? answer.code
|
|
223
|
+
: answer.note
|
|
224
|
+
? renderScriptAskNote(answer.note)
|
|
225
|
+
: '';
|
|
226
|
+
return code.slice(0, from) + replacement + code.slice(to);
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Removes the slash command span from the script when the modal closes without an answer.
|
|
230
|
+
*
|
|
231
|
+
* @param code - Current script source.
|
|
232
|
+
* @param from - Start offset of the slash command span (inclusive).
|
|
233
|
+
* @param to - End offset of the slash command span (exclusive).
|
|
234
|
+
* @returns Script source with the command removed and adjacent blank lines tidied.
|
|
235
|
+
*/
|
|
236
|
+
export function removeScriptAskCommand(code, from, to) {
|
|
237
|
+
let next = code.slice(0, from) + code.slice(to);
|
|
238
|
+
if (from > 0 && next[from - 1] === '\n' && (next[from] === '\n' || next.length === from)) {
|
|
239
|
+
next = next.slice(0, from - 1) + next.slice(from);
|
|
240
|
+
}
|
|
241
|
+
return next;
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=scriptAsk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scriptAsk.js","sourceRoot":"","sources":["../../src/ai/scriptAsk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
import type { ScriptRef, Snippet } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Regex matching `@` script references in chat text:
|
|
4
|
+
* - Request scripts: `@<request-id>.<pre|post>.<script-index>`
|
|
5
|
+
* - Standalone snippets: `@snippet.<uuid>`
|
|
6
|
+
* - Footer terminals: `@term.<terminal-index>`
|
|
7
|
+
* - Collections: `@collection.<uuid>`
|
|
8
|
+
* - Folders: `@folder.<uuid>`
|
|
9
|
+
* - Saved requests: `@request.<uuid>`
|
|
10
|
+
* - Markdown documents and request comments: `@markdown.<uuid>`
|
|
11
|
+
* - Active request raw body: `@body`
|
|
12
|
+
*
|
|
13
|
+
* Request scripts, snippets, markdown, and raw body accept an optional
|
|
14
|
+
* `#<selection-start>.<selection-end>` suffix (character offsets). Terminal references use the
|
|
15
|
+
* same suffix for 1-based line numbers.
|
|
16
|
+
*/
|
|
17
|
+
export declare const AI_SCRIPT_REFERENCE_PATTERN: RegExp;
|
|
18
|
+
/**
|
|
19
|
+
* Shared fields for every parsed `@` script reference.
|
|
20
|
+
*/
|
|
21
|
+
interface ParsedAiScriptReferenceBase {
|
|
22
|
+
/**
|
|
23
|
+
* Start offset of the full `@` token in the source text.
|
|
24
|
+
*/
|
|
25
|
+
start: number;
|
|
26
|
+
/**
|
|
27
|
+
* End offset (exclusive) of the full `@` token in the source text.
|
|
28
|
+
*/
|
|
29
|
+
end: number;
|
|
30
|
+
/**
|
|
31
|
+
* Exact matched substring, including the leading `@`.
|
|
32
|
+
*/
|
|
33
|
+
text: string;
|
|
34
|
+
/**
|
|
35
|
+
* Character offsets into the referenced script source when the user selected a range.
|
|
36
|
+
*/
|
|
37
|
+
selection?: {
|
|
38
|
+
/**
|
|
39
|
+
* Start offset (inclusive) in the script source.
|
|
40
|
+
*/
|
|
41
|
+
start: number;
|
|
42
|
+
/**
|
|
43
|
+
* End offset (exclusive) in the script source.
|
|
44
|
+
*/
|
|
45
|
+
end: number;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A parsed `@` reference to a request script row.
|
|
50
|
+
*/
|
|
51
|
+
export interface ParsedRequestScriptReference extends ParsedAiScriptReferenceBase {
|
|
52
|
+
/**
|
|
53
|
+
* Discriminator for request-script references.
|
|
54
|
+
*/
|
|
55
|
+
kind: 'request-script';
|
|
56
|
+
/**
|
|
57
|
+
* Saved request id from the reference, or the literal `active`.
|
|
58
|
+
*/
|
|
59
|
+
requestId: number | 'active';
|
|
60
|
+
/**
|
|
61
|
+
* Script phase: pre-request or post-request.
|
|
62
|
+
*/
|
|
63
|
+
phase: 'pre' | 'post';
|
|
64
|
+
/**
|
|
65
|
+
* 1-based index of the script in the phase array.
|
|
66
|
+
*/
|
|
67
|
+
scriptIndex: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* A parsed `@` reference to a standalone library snippet.
|
|
71
|
+
*/
|
|
72
|
+
export interface ParsedSnippetReference extends ParsedAiScriptReferenceBase {
|
|
73
|
+
/**
|
|
74
|
+
* Discriminator for standalone snippet references.
|
|
75
|
+
*/
|
|
76
|
+
kind: 'snippet';
|
|
77
|
+
/**
|
|
78
|
+
* UUID of the snippet in the library.
|
|
79
|
+
*/
|
|
80
|
+
snippetUuid: string;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* A parsed `@` reference to a footer terminal selection.
|
|
84
|
+
*/
|
|
85
|
+
export interface ParsedTerminalReference extends ParsedAiScriptReferenceBase {
|
|
86
|
+
/**
|
|
87
|
+
* Discriminator for footer terminal references.
|
|
88
|
+
*/
|
|
89
|
+
kind: 'terminal';
|
|
90
|
+
/**
|
|
91
|
+
* 1-based index of the terminal tab in the footer switcher.
|
|
92
|
+
*/
|
|
93
|
+
terminalIndex: number;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* A parsed `@` reference to a collection in the sidebar.
|
|
97
|
+
*/
|
|
98
|
+
export interface ParsedCollectionReference extends ParsedAiScriptReferenceBase {
|
|
99
|
+
/**
|
|
100
|
+
* Discriminator for collection references.
|
|
101
|
+
*/
|
|
102
|
+
kind: 'collection';
|
|
103
|
+
/**
|
|
104
|
+
* UUID of the collection.
|
|
105
|
+
*/
|
|
106
|
+
collectionUuid: string;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* A parsed `@` reference to a folder in the sidebar.
|
|
110
|
+
*/
|
|
111
|
+
export interface ParsedFolderReference extends ParsedAiScriptReferenceBase {
|
|
112
|
+
/**
|
|
113
|
+
* Discriminator for folder references.
|
|
114
|
+
*/
|
|
115
|
+
kind: 'folder';
|
|
116
|
+
/**
|
|
117
|
+
* UUID of the folder.
|
|
118
|
+
*/
|
|
119
|
+
folderUuid: string;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* A parsed `@` reference to a saved request in the sidebar.
|
|
123
|
+
*/
|
|
124
|
+
export interface ParsedRequestReference extends ParsedAiScriptReferenceBase {
|
|
125
|
+
/**
|
|
126
|
+
* Discriminator for saved-request references.
|
|
127
|
+
*/
|
|
128
|
+
kind: 'request';
|
|
129
|
+
/**
|
|
130
|
+
* UUID of the saved request.
|
|
131
|
+
*/
|
|
132
|
+
requestUuid: string;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* A parsed `@` reference to a collection markdown document or request comment.
|
|
136
|
+
*/
|
|
137
|
+
export interface ParsedMarkdownReference extends ParsedAiScriptReferenceBase {
|
|
138
|
+
/**
|
|
139
|
+
* Discriminator for markdown document and comment references.
|
|
140
|
+
*/
|
|
141
|
+
kind: 'markdown';
|
|
142
|
+
/**
|
|
143
|
+
* UUID of the collection document or saved request.
|
|
144
|
+
*/
|
|
145
|
+
markdownUuid: string;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* A parsed `@` reference to the active request's raw body editor.
|
|
149
|
+
*/
|
|
150
|
+
export interface ParsedRequestBodyReference extends ParsedAiScriptReferenceBase {
|
|
151
|
+
/**
|
|
152
|
+
* Discriminator for raw-body selection references.
|
|
153
|
+
*/
|
|
154
|
+
kind: 'body';
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Snapshot of terminal output captured when the user copies a selection to chat.
|
|
158
|
+
*/
|
|
159
|
+
export interface TerminalSelectionSnapshot {
|
|
160
|
+
/**
|
|
161
|
+
* Display label of the terminal tab at capture time.
|
|
162
|
+
*/
|
|
163
|
+
terminalLabel: string;
|
|
164
|
+
/**
|
|
165
|
+
* 1-based start line of the selection in the xterm buffer.
|
|
166
|
+
*/
|
|
167
|
+
startLine: number;
|
|
168
|
+
/**
|
|
169
|
+
* 1-based end line of the selection in the xterm buffer.
|
|
170
|
+
*/
|
|
171
|
+
endLine: number;
|
|
172
|
+
/**
|
|
173
|
+
* Plain-text content of the user's selection.
|
|
174
|
+
*/
|
|
175
|
+
selectedText: string;
|
|
176
|
+
/**
|
|
177
|
+
* Surrounding terminal lines included for agent context.
|
|
178
|
+
*/
|
|
179
|
+
contextText: string;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Snapshot of markdown text captured when the user copies a selection to chat.
|
|
183
|
+
*/
|
|
184
|
+
export interface MarkdownSelectionSnapshot {
|
|
185
|
+
/**
|
|
186
|
+
* Display label at capture time (for example "Document: README.md").
|
|
187
|
+
*/
|
|
188
|
+
label: string;
|
|
189
|
+
/**
|
|
190
|
+
* Plain-text content of the user's selection.
|
|
191
|
+
*/
|
|
192
|
+
selectedText: string;
|
|
193
|
+
/**
|
|
194
|
+
* Best-effort start offset in the markdown source.
|
|
195
|
+
*/
|
|
196
|
+
startOffset: number;
|
|
197
|
+
/**
|
|
198
|
+
* Best-effort end offset in the markdown source.
|
|
199
|
+
*/
|
|
200
|
+
endOffset: number;
|
|
201
|
+
/**
|
|
202
|
+
* 1-based start line of the selection in the markdown source.
|
|
203
|
+
*/
|
|
204
|
+
startLine: number;
|
|
205
|
+
/**
|
|
206
|
+
* 1-based end line of the selection in the markdown source.
|
|
207
|
+
*/
|
|
208
|
+
endLine: number;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Snapshot of raw request body text captured when the user copies a selection to chat.
|
|
212
|
+
*/
|
|
213
|
+
export interface RequestBodySelectionSnapshot {
|
|
214
|
+
/**
|
|
215
|
+
* Display label at capture time (for example "Raw multipart body").
|
|
216
|
+
*/
|
|
217
|
+
label: string;
|
|
218
|
+
/**
|
|
219
|
+
* Plain-text content of the user's selection.
|
|
220
|
+
*/
|
|
221
|
+
selectedText: string;
|
|
222
|
+
/**
|
|
223
|
+
* Start offset in the raw body editor text.
|
|
224
|
+
*/
|
|
225
|
+
startOffset: number;
|
|
226
|
+
/**
|
|
227
|
+
* End offset in the raw body editor text.
|
|
228
|
+
*/
|
|
229
|
+
endOffset: number;
|
|
230
|
+
/**
|
|
231
|
+
* 1-based start line of the selection in the raw body text.
|
|
232
|
+
*/
|
|
233
|
+
startLine: number;
|
|
234
|
+
/**
|
|
235
|
+
* 1-based end line of the selection in the raw body text.
|
|
236
|
+
*/
|
|
237
|
+
endLine: number;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* A parsed `@` script reference with character offsets in the source text.
|
|
241
|
+
*/
|
|
242
|
+
export type ParsedAiScriptReference = ParsedRequestScriptReference | ParsedSnippetReference | ParsedTerminalReference | ParsedCollectionReference | ParsedFolderReference | ParsedRequestReference | ParsedMarkdownReference | ParsedRequestBodyReference;
|
|
243
|
+
/**
|
|
244
|
+
* Active request tab state used to decide whether an `@` reference is highlightable.
|
|
245
|
+
*/
|
|
246
|
+
export interface AiScriptReferenceValidationContext {
|
|
247
|
+
/**
|
|
248
|
+
* Whether the active tab hosts a request editor draft.
|
|
249
|
+
*/
|
|
250
|
+
hasActiveRequestTab: boolean;
|
|
251
|
+
/**
|
|
252
|
+
* Saved request id on the active draft, when the tab is saved.
|
|
253
|
+
*/
|
|
254
|
+
activeRequestId?: number;
|
|
255
|
+
/**
|
|
256
|
+
* Number of pre-request scripts on the active draft.
|
|
257
|
+
*/
|
|
258
|
+
preScriptCount: number;
|
|
259
|
+
/**
|
|
260
|
+
* Number of post-request scripts on the active draft.
|
|
261
|
+
*/
|
|
262
|
+
postScriptCount: number;
|
|
263
|
+
/**
|
|
264
|
+
* Pre-request script rows on the active draft, when available for name resolution.
|
|
265
|
+
*/
|
|
266
|
+
preScripts?: ScriptRef[];
|
|
267
|
+
/**
|
|
268
|
+
* Post-request script rows on the active draft, when available for name resolution.
|
|
269
|
+
*/
|
|
270
|
+
postScripts?: ScriptRef[];
|
|
271
|
+
/**
|
|
272
|
+
* Snippet library used to resolve snippet-linked script names.
|
|
273
|
+
*/
|
|
274
|
+
snippets?: Snippet[];
|
|
275
|
+
/**
|
|
276
|
+
* Terminal selection snapshots keyed by the full `@term` reference token.
|
|
277
|
+
*/
|
|
278
|
+
terminalSelections?: Record<string, TerminalSelectionSnapshot>;
|
|
279
|
+
/**
|
|
280
|
+
* Markdown selection snapshots keyed by the full `@markdown` reference token.
|
|
281
|
+
*/
|
|
282
|
+
markdownSelections?: Record<string, MarkdownSelectionSnapshot>;
|
|
283
|
+
/**
|
|
284
|
+
* Raw-body selection snapshots keyed by the full `@body` reference token.
|
|
285
|
+
*/
|
|
286
|
+
requestBodySelections?: Record<string, RequestBodySelectionSnapshot>;
|
|
287
|
+
/**
|
|
288
|
+
* Collection display names keyed by uuid for `@collection` badge resolution.
|
|
289
|
+
*/
|
|
290
|
+
collectionNamesByUuid?: Record<string, string>;
|
|
291
|
+
/**
|
|
292
|
+
* Folder display names keyed by uuid for `@folder` badge resolution.
|
|
293
|
+
*/
|
|
294
|
+
folderNamesByUuid?: Record<string, string>;
|
|
295
|
+
/**
|
|
296
|
+
* Saved request display names keyed by uuid for `@request` badge resolution.
|
|
297
|
+
*/
|
|
298
|
+
requestNamesByUuid?: Record<string, string>;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* One render segment for the chat composer backdrop.
|
|
302
|
+
*/
|
|
303
|
+
export interface ChatComposerTextToken {
|
|
304
|
+
/**
|
|
305
|
+
* Substring from the composer draft.
|
|
306
|
+
*/
|
|
307
|
+
text: string;
|
|
308
|
+
/**
|
|
309
|
+
* When true, the segment is a valid `@` script reference and should be highlighted.
|
|
310
|
+
*/
|
|
311
|
+
highlight: boolean;
|
|
312
|
+
/**
|
|
313
|
+
* Parsed reference metadata when {@link highlight} is true.
|
|
314
|
+
*/
|
|
315
|
+
reference?: ParsedAiScriptReference;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Parses one regex match into a structured script reference.
|
|
319
|
+
*
|
|
320
|
+
* @param match - RegExp match for {@link AI_SCRIPT_REFERENCE_PATTERN}.
|
|
321
|
+
* @param start - Document start offset of the match.
|
|
322
|
+
*/
|
|
323
|
+
export declare function parseAiScriptReferenceMatch(match: RegExpMatchArray, start: number): ParsedAiScriptReference | null;
|
|
324
|
+
/**
|
|
325
|
+
* Finds syntactically valid `@` script reference candidates in plain text.
|
|
326
|
+
*
|
|
327
|
+
* @param text - Composer draft that may contain `@` references.
|
|
328
|
+
*/
|
|
329
|
+
export declare function findAiScriptReferenceCandidates(text: string): ParsedAiScriptReference[];
|
|
330
|
+
/**
|
|
331
|
+
* Removes valid `@` script reference tokens from plain text.
|
|
332
|
+
*
|
|
333
|
+
* @param text - Composer or title prompt text that may contain `@` references.
|
|
334
|
+
* @returns Text with script references removed and whitespace collapsed.
|
|
335
|
+
*/
|
|
336
|
+
export declare function stripAiScriptReferences(text: string): string;
|
|
337
|
+
/**
|
|
338
|
+
* Returns whether a parsed `@` reference resolves against the active request tab or snippet library.
|
|
339
|
+
*
|
|
340
|
+
* Mirrors `update_request_script` validation in the AI tool executor for request-script kind.
|
|
341
|
+
*
|
|
342
|
+
* @param reference - Parsed `@` script reference.
|
|
343
|
+
* @param context - Active tab script counts, request id, and snippet library.
|
|
344
|
+
*/
|
|
345
|
+
export declare function isValidAiScriptReference(reference: ParsedAiScriptReference, context: AiScriptReferenceValidationContext): boolean;
|
|
346
|
+
/**
|
|
347
|
+
* Resolves the display name for a valid `@` script reference.
|
|
348
|
+
*
|
|
349
|
+
* @param reference - Parsed `@` script reference.
|
|
350
|
+
* @param context - Active tab script rows and snippet library.
|
|
351
|
+
* @returns Script or snippet name when resolvable, otherwise null.
|
|
352
|
+
*/
|
|
353
|
+
export declare function resolveAiScriptReferenceName(reference: ParsedAiScriptReference, context: AiScriptReferenceValidationContext): string | null;
|
|
354
|
+
export declare function resolveAiScriptReferenceLabel(reference: ParsedAiScriptReference, context: AiScriptReferenceValidationContext): string | null;
|
|
355
|
+
/**
|
|
356
|
+
* Builds an ephemeral system message that expands valid `@` script references in the user message.
|
|
357
|
+
*
|
|
358
|
+
* References with a `#start.end` suffix include the selected substring; whole-script references
|
|
359
|
+
* include the full source so the model can answer questions without relying on tool calls alone.
|
|
360
|
+
*
|
|
361
|
+
* The returned text is injected into the LLM step messages only; it is not persisted in chat
|
|
362
|
+
* history so the composer can keep rendering compact badges.
|
|
363
|
+
*
|
|
364
|
+
* @param text - User message that may contain `@` script references.
|
|
365
|
+
* @param context - Active tab script rows and snippet library.
|
|
366
|
+
* @returns Formatted context block, or null when no valid references are present.
|
|
367
|
+
*/
|
|
368
|
+
export declare function buildAiScriptSelectionContextMessage(text: string, context: AiScriptReferenceValidationContext): string | null;
|
|
369
|
+
/**
|
|
370
|
+
* Splits composer text into plain and highlightable `@` script reference segments.
|
|
371
|
+
*
|
|
372
|
+
* @param text - Composer draft.
|
|
373
|
+
* @param context - Active tab state for semantic validation.
|
|
374
|
+
*/
|
|
375
|
+
export declare function tokenizeChatComposerText(text: string, context: AiScriptReferenceValidationContext): ChatComposerTextToken[];
|
|
376
|
+
export {};
|
|
377
|
+
//# sourceMappingURL=scriptReferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scriptReferences.d.ts","sourceRoot":"","sources":["../../src/ai/scriptReferences.ts"],"names":[],"mappings":"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"}
|