Skip to content

Commit bfc0081

Browse files
committed
Updates
1 parent 27e5400 commit bfc0081

File tree

2 files changed

+169
-126
lines changed

2 files changed

+169
-126
lines changed

src/client/chat/installPackagesTool.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ import { IModuleInstaller } from '../common/installer/types';
2626
import { ModuleInstallerType } from '../pythonEnvironments/info';
2727
import { IDiscoveryAPI } from '../pythonEnvironments/base/locator';
2828
import { getEnvExtApi, useEnvExtension } from '../envExt/api.internal';
29-
import { traceError } from '../logging';
3029

3130
export interface IInstallPackageArgs extends IResourceReference {
3231
packageList: string[];
@@ -55,15 +54,18 @@ export class InstallPackagesTool implements LanguageModelTool<IInstallPackageArg
5554
if (useEnvExtension()) {
5655
const api = await getEnvExtApi();
5756
const env = await api.getEnvironment(resourcePath);
58-
if (env && (api as Partial<typeof api>).installPackages) {
59-
await raceCancellationError(api.installPackages(env, options.input.packageList), token);
57+
if (env) {
58+
await raceCancellationError(api.managePackages(env, { install: options.input.packageList }), token);
6059
const resultMessage = `Successfully installed ${packagePlurality}: ${options.input.packageList.join(
6160
', ',
6261
)}`;
6362
return new LanguageModelToolResult([new LanguageModelTextPart(resultMessage)]);
64-
}
65-
if (env && !(api as Partial<typeof api>).installPackages) {
66-
traceError(`API does not expose installPackages method for environment: ${env.displayName}`);
63+
} else {
64+
return new LanguageModelToolResult([
65+
new LanguageModelTextPart(
66+
`Packages not installed. No environment found for: ${resourcePath?.fsPath}`,
67+
),
68+
]);
6769
}
6870
}
6971

0 commit comments

Comments
 (0)