diff --git a/scripts/install-dirigent-openclaw.mjs b/scripts/install-dirigent-openclaw.mjs index efe10a0..c08c755 100755 --- a/scripts/install-dirigent-openclaw.mjs +++ b/scripts/install-dirigent-openclaw.mjs @@ -54,6 +54,9 @@ const PATH_PLUGINS_LOAD = "plugins.load.paths"; const PATH_PLUGIN_ENTRY = "plugins.entries.dirigent"; const PATH_PROVIDERS = "models.providers"; const PATH_PROVIDER_ENTRY = `models.providers.${NO_REPLY_PROVIDER_ID}`; +const PATH_PLUGINS_ALLOW = "plugins.allow"; + +function runOpenclaw(args, { allowFail = false } = {}) { function runOpenclaw(args, { allowFail = false } = {}) { try { @@ -216,6 +219,18 @@ if (mode === "install") { providers[NO_REPLY_PROVIDER_ID] = newProvider; setJson(PATH_PROVIDERS, providers); + // ── plugins.allow ───────────────────────────────────────────────────── + const allowList = getJson(PATH_PLUGINS_ALLOW) || []; + const oldAllow = clone(allowList); + if (!allowList.includes("dirigent")) { + allowList.push("dirigent"); + delta.added[PATH_PLUGINS_ALLOW] = "dirigent"; + delta._prev = delta._prev || {}; + delta._prev[PATH_PLUGINS_ALLOW] = oldAllow; + setJson(PATH_PLUGINS_ALLOW, allowList); + console.log("[dirigent] added 'dirigent' to plugins.allow"); + } + writeRecord("install", delta); console.log("[dirigent] install ok (config written)"); console.log(`[dirigent] record: ${RECORD_PATH}`); @@ -272,6 +287,17 @@ else { } } + // ── Handle plugins.allow ────────────────────────────────────────────── + if (delta.added[PATH_PLUGINS_ALLOW] !== undefined) { + const allowList = getJson(PATH_PLUGINS_ALLOW) || []; + const idx = allowList.indexOf("dirigent"); + if (idx !== -1) { + allowList.splice(idx, 1); + setJson(PATH_PLUGINS_ALLOW, allowList); + console.log("[dirigent] removed 'dirigent' from plugins.allow"); + } + } + // ── Handle REPLACED entries: restore old value ──────────────────────── if (delta.replaced[PATH_PLUGIN_ENTRY] !== undefined) { const plugins = getJson("plugins") || {};