From 50a81c873101a4fb0f4f64537306cd8c77c0ba7e Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Wed, 18 Mar 2026 00:11:37 -0700 Subject: [PATCH] Plugins: merge agent and output-style dirs into Claude bundle skills --- src/plugins/bundle-manifest.test.ts | 2 +- src/plugins/bundle-manifest.ts | 2 ++ src/plugins/loader.ts | 5 ++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/plugins/bundle-manifest.test.ts b/src/plugins/bundle-manifest.test.ts index b2a48f02f56..40bbf85152e 100644 --- a/src/plugins/bundle-manifest.test.ts +++ b/src/plugins/bundle-manifest.test.ts @@ -111,7 +111,7 @@ describe("bundle manifest parsing", () => { name: "Claude Sample", description: "Claude fixture", bundleFormat: "claude", - skills: ["skill-packs/starter", "commands-pack"], + skills: ["skill-packs/starter", "commands-pack", "agents-pack", "styles"], settingsFiles: ["settings.json"], hooks: ["hooks/hooks.json", "hooks-pack"], capabilities: expect.arrayContaining([ diff --git a/src/plugins/bundle-manifest.ts b/src/plugins/bundle-manifest.ts index 7c2a362153b..3a3fed87158 100644 --- a/src/plugins/bundle-manifest.ts +++ b/src/plugins/bundle-manifest.ts @@ -216,6 +216,8 @@ function resolveClaudeSkillDirs(raw: Record, rootDir: string): return mergeBundlePathLists( resolveClaudeSkillsRootDirs(raw, rootDir), resolveClaudeCommandRootDirs(raw, rootDir), + resolveClaudeAgentDirs(raw, rootDir), + resolveClaudeOutputStylePaths(raw, rootDir), ); } diff --git a/src/plugins/loader.ts b/src/plugins/loader.ts index ffccc04f4a6..c39a64e5f30 100644 --- a/src/plugins/loader.ts +++ b/src/plugins/loader.ts @@ -1105,7 +1105,10 @@ export function loadOpenClawPlugins(options: PluginLoadOptions = {}): PluginRegi capability !== "mcpServers" && capability !== "settings" && !( - capability === "commands" && + (capability === "commands" || + capability === "agents" || + capability === "outputStyles" || + capability === "lspServers") && (record.bundleFormat === "claude" || record.bundleFormat === "cursor") ) && !(