Path: blob/main/src/vs/workbench/contrib/chat/electron-browser/builtInTools/tools.ts
4780 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { Disposable } from '../../../../../base/common/lifecycle.js';6import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js';7import { IWorkbenchContribution } from '../../../../common/contributions.js';8import { ChatUrlFetchingConfirmationContribution } from '../../common/tools/builtinTools/chatUrlFetchingConfirmation.js';9import { ILanguageModelToolsConfirmationService } from '../../common/tools/languageModelToolsConfirmationService.js';10import { ILanguageModelToolsService } from '../../common/tools/languageModelToolsService.js';11import { InternalFetchWebPageToolId } from '../../common/tools/builtinTools/tools.js';12import { FetchWebPageTool, FetchWebPageToolData, IFetchWebPageToolParams } from './fetchPageTool.js';1314export class NativeBuiltinToolsContribution extends Disposable implements IWorkbenchContribution {1516static readonly ID = 'chat.nativeBuiltinTools';1718constructor(19@ILanguageModelToolsService toolsService: ILanguageModelToolsService,20@IInstantiationService instantiationService: IInstantiationService,21@ILanguageModelToolsConfirmationService confirmationService: ILanguageModelToolsConfirmationService,22) {23super();2425const editTool = instantiationService.createInstance(FetchWebPageTool);26this._register(toolsService.registerTool(FetchWebPageToolData, editTool));2728this._register(confirmationService.registerConfirmationContribution(29InternalFetchWebPageToolId,30instantiationService.createInstance(31ChatUrlFetchingConfirmationContribution,32params => (params as IFetchWebPageToolParams).urls33)34));35}36}373839