diff --git a/extensions/pi-config/index.ts b/extensions/pi-config/index.ts index 85c9b75..28ae71c 100644 --- a/extensions/pi-config/index.ts +++ b/extensions/pi-config/index.ts @@ -115,12 +115,16 @@ function saveSettings(cwd: string, settings: PiSettings): void { fs.writeFileSync(projectSettingsPath(cwd), JSON.stringify(settings, null, 2) + "\n"); } -/** Ensure the agents package entry exists, creating it if missing */ +/** Ensure the agents package entry exists, creating it if missing. Always ensures extensions/skills arrays exist to block auto-discovery. */ function ensureAgentsPackage(settings: PiSettings): PackageFilter { const existing = findAgentsPackage(settings); - if (existing) return existing; + if (existing) { + existing.extensions ??= []; + existing.skills ??= []; + return existing; + } - const entry: PackageFilter = { source: AGENTS_DIR }; + const entry: PackageFilter = { source: AGENTS_DIR, extensions: [], skills: [] }; const pkgs = settings.packages ?? []; pkgs.push(entry); settings.packages = pkgs;