From ca7be6929d5af64a1e960d5d0fb554f8bfcdb07f Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Wed, 21 Jan 2026 00:32:15 +0100 Subject: [PATCH] feat(coding-agent): run npm install after cloning git repos with package.json --- packages/coding-agent/src/core/package-manager.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/coding-agent/src/core/package-manager.ts b/packages/coding-agent/src/core/package-manager.ts index 82b2f1d7..9a6d15d2 100644 --- a/packages/coding-agent/src/core/package-manager.ts +++ b/packages/coding-agent/src/core/package-manager.ts @@ -405,6 +405,11 @@ export class DefaultPackageManager implements PackageManager { if (source.ref) { await this.runCommand("git", ["checkout", source.ref], { cwd: targetDir }); } + // Install npm dependencies if package.json exists + const packageJsonPath = join(targetDir, "package.json"); + if (existsSync(packageJsonPath)) { + await this.runCommand("npm", ["install"], { cwd: targetDir }); + } } private async updateGit(source: GitSource, scope: SourceScope): Promise { @@ -414,6 +419,11 @@ export class DefaultPackageManager implements PackageManager { return; } await this.runCommand("git", ["pull"], { cwd: targetDir }); + // Reinstall npm dependencies if package.json exists (in case deps changed) + const packageJsonPath = join(targetDir, "package.json"); + if (existsSync(packageJsonPath)) { + await this.runCommand("npm", ["install"], { cwd: targetDir }); + } } private async removeGit(source: GitSource, scope: SourceScope): Promise {