refactor(plugin): extract live config and policy store modules

This commit is contained in:
2026-03-07 22:38:11 +00:00
parent d021b0c06c
commit e258e99ed2
3 changed files with 76 additions and 72 deletions

View File

@@ -0,0 +1,23 @@
import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
import type { DirigentConfig } from "../rules.js";
export function getLivePluginConfig(api: OpenClawPluginApi, fallback: DirigentConfig): DirigentConfig {
const root = (api.config as Record<string, unknown>) || {};
const plugins = (root.plugins as Record<string, unknown>) || {};
const entries = (plugins.entries as Record<string, unknown>) || {};
const entry = (entries.dirigent as Record<string, unknown>) || (entries.whispergate as Record<string, unknown>) || {};
const cfg = (entry.config as Record<string, unknown>) || {};
if (Object.keys(cfg).length > 0) {
return {
enableDiscordControlTool: true,
enableDirigentPolicyTool: true,
discordControlApiBaseUrl: "http://127.0.0.1:8790",
enableDebugLogs: false,
debugLogChannelIds: [],
schedulingIdentifier: "➡️",
waitIdentifier: "👤",
...cfg,
} as DirigentConfig;
}
return fallback;
}