fix(coding-agent): load extensions from settings.json

SettingsManager was created after extension loading, so extensions
defined in settings.json were never loaded. Move SettingsManager.create
before discoverAndLoadExtensions and merge settings extensions with
CLI --extension args.
This commit is contained in:
Melih Mucuk 2026-01-05 13:26:41 +03:00
parent d9e0604183
commit e4f63f585f

View file

@ -298,7 +298,10 @@ export async function main(args: string[]) {
const cwd = process.cwd();
const agentDir = getAgentDir();
const eventBus = createEventBus();
const extensionPaths = firstPass.extensions ?? [];
const settingsManager = SettingsManager.create(cwd);
time("SettingsManager.create");
// Merge CLI --extension args with settings.json extensions
const extensionPaths = [...settingsManager.getExtensionPaths(), ...(firstPass.extensions ?? [])];
const { extensions: loadedExtensions } = await discoverAndLoadExtensions(extensionPaths, cwd, agentDir, eventBus);
time("discoverExtensionFlags");
@ -357,8 +360,6 @@ export async function main(args: string[]) {
process.exit(1);
}
const settingsManager = SettingsManager.create(cwd);
time("SettingsManager.create");
const { initialMessage, initialImages } = await prepareInitialMessage(parsed, settingsManager.getImageAutoResize());
time("prepareInitialMessage");
const isInteractive = !parsed.print && parsed.mode === undefined;