diff --git a/src/cli/route.ts b/src/cli/route.ts index 38093e93621..e9929e6698b 100644 --- a/src/cli/route.ts +++ b/src/cli/route.ts @@ -10,11 +10,13 @@ import { findRoutedCommand } from "./program/routes.js"; async function prepareRoutedCommand(params: { argv: string[]; commandPath: string[]; - loadPlugins?: boolean; + loadPlugins?: boolean | ((argv: string[]) => boolean); }) { emitCliBanner(VERSION, { argv: params.argv }); 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(); } }