24 lines
710 B
TypeScript
24 lines
710 B
TypeScript
import { createSubsystemLogger } from "../logging.js";
|
|
import { loadClawdbotPlugins, type PluginLoadOptions } from "./loader.js";
|
|
import type { ProviderPlugin } from "./types.js";
|
|
|
|
const log = createSubsystemLogger("plugins");
|
|
|
|
export function resolvePluginProviders(params: {
|
|
config?: PluginLoadOptions["config"];
|
|
workspaceDir?: string;
|
|
}): ProviderPlugin[] {
|
|
const registry = loadClawdbotPlugins({
|
|
config: params.config,
|
|
workspaceDir: params.workspaceDir,
|
|
logger: {
|
|
info: (msg) => log.info(msg),
|
|
warn: (msg) => log.warn(msg),
|
|
error: (msg) => log.error(msg),
|
|
debug: (msg) => log.debug(msg),
|
|
},
|
|
});
|
|
|
|
return registry.providers.map((entry) => entry.provider);
|
|
}
|