CLI route: support argv-aware plugin preloading

This commit is contained in:
Vincent Koc
2026-03-01 11:59:18 -08:00
parent 5e061fd8b9
commit af12e7bdec

View File

@@ -10,11 +10,13 @@ import { findRoutedCommand } from "./program/routes.js";
async function prepareRoutedCommand(params: { async function prepareRoutedCommand(params: {
argv: string[]; argv: string[];
commandPath: string[]; commandPath: string[];
loadPlugins?: boolean; loadPlugins?: boolean | ((argv: string[]) => boolean);
}) { }) {
emitCliBanner(VERSION, { argv: params.argv }); emitCliBanner(VERSION, { argv: params.argv });
await ensureConfigReady({ runtime: defaultRuntime, commandPath: params.commandPath }); await ensureConfigReady({ runtime: defaultRuntime, commandPath: params.commandPath });
if (params.loadPlugins) { const shouldLoadPlugins =
typeof params.loadPlugins === "function" ? params.loadPlugins(params.argv) : params.loadPlugins;
if (shouldLoadPlugins) {
ensurePluginRegistryLoaded(); ensurePluginRegistryLoaded();
} }
} }