


























@@ -9,6 +9,7 @@ import {
99resolveEffectivePluginActivationState,
1010resolveMemorySlotDecision,
1111} from "../../plugins/config-policy.js";
12+import { getCurrentPluginMetadataSnapshot } from "../../plugins/current-plugin-metadata-snapshot.js";
1213import { loadPluginMetadataSnapshot } from "../../plugins/plugin-metadata-snapshot.js";
1314import { hasKind } from "../../plugins/slots.js";
1415import { isPathInsideWithRealpath } from "../../security/scan-paths.js";
@@ -28,11 +29,18 @@ export function resolvePluginSkillDirs(params: {
2829if (!workspaceDir) {
2930return [];
3031}
31-const metadataSnapshot = loadPluginMetadataSnapshot({
32- workspaceDir,
33-config: params.config ?? {},
34-env: process.env,
35-});
32+const config = params.config ?? {};
33+const metadataSnapshot =
34+getCurrentPluginMetadataSnapshot({
35+ config,
36+env: process.env,
37+ workspaceDir,
38+}) ??
39+loadPluginMetadataSnapshot({
40+ workspaceDir,
41+ config,
42+env: process.env,
43+});
3644const registry = metadataSnapshot.manifestRegistry;
3745if (registry.plugins.length === 0) {
3846publishPluginSkills([], {
@@ -41,10 +49,10 @@ export function resolvePluginSkillDirs(params: {
4149return [];
4250}
4351const normalizedPlugins = normalizePluginsConfigWithResolver(
44-params.config?.plugins,
52+config.plugins,
4553metadataSnapshot.normalizePluginId,
4654);
47-const acpRuntimeAvailable = isAcpRuntimeSpawnAvailable({ config: params.config });
55+const acpRuntimeAvailable = isAcpRuntimeSpawnAvailable({ config });
4856const memorySlot = normalizedPlugins.slots.memory;
4957let selectedMemoryPluginId: string | null = null;
5058const seen = new Set<string>();
@@ -58,7 +66,7 @@ export function resolvePluginSkillDirs(params: {
5866id: record.id,
5967origin: record.origin,
6068config: normalizedPlugins,
61-rootConfig: params.config,
69+rootConfig: config,
6270enabledByDefault: record.enabledByDefault,
6371});
6472if (!activationState.activated) {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。