opencode-skill-autodiscovery 1.4.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,53 +1,22 @@
1
1
  # opencode-skill-autodiscovery
2
2
 
3
- An [opencode](https://opencode.ai) plugin that auto-discovers skills installed by
4
- VS Code agent plugins, Claude Code plugins, and [Agent Plugins
5
- 1.0.0](https://agent-plugins.org) conformant packages on the current machine,
6
- and registers them with opencode's `skills.paths` so they appear in every
7
- session. Each discovered skill is also exposed as a `/skill-name` slash command
8
- that loads the skill and routes the rest of your message through it.
3
+ An [opencode](https://opencode.ai) plugin that auto-discovers skills, agents, and MCP servers installed by VS Code agent plugins, Claude Code plugins, and [Agent Plugins 1.0.0](https://agent-plugins.org) conformant packages on the current machine, and registers them with opencode so they appear in every session. Discovered skills are registered with opencode's `skills.paths` and also exposed as `/skill-name` slash commands that load the skill and route the rest of your message through it. Discovered agents are registered as `config.agent.<name>` (opt-in), and discovered MCP servers are mapped onto `config.mcp` (opt-in). Works with both `opencode.json` and `opencode.jsonc` config files.
9
4
 
10
5
  ## Why
11
6
 
12
- Skills live in different places depending on the tool, OS, and local vs remote
13
- setup:
14
-
15
- - VS Code agent plugins, local client: `~/.vscode/agent-plugins` (Windows /
16
- older builds), `~/.config/Code/agentPlugins` (Linux),
17
- `~/Library/Application Support/Code/agentPlugins` (macOS), and
18
- `%APPDATA%\Code\agentPlugins` (Windows), plus `Code - Insiders` variants.
19
- The install layout is `{host}/{org}/{repo}`, with optional `installed.json`
20
- and `cache.json` manifests alongside.
21
- - VS Code agent plugins on a remote host (Remote-SSH, Codespaces, Dev
22
- Containers, WSL): `~/.vscode-server/data/agentPlugins`. VS Code syncs the
23
- enabled skills from your local client into a synthetic "VS Code Synced
24
- Data" plugin materialized at
25
- `~/.vscode-server/data/agentPlugins/{sanitizedUri}/{nonce}/skills/...`, and
26
- records each synced bundle in `~/.vscode-server/data/agentPlugins/cache.json`.
7
+ Skills live in different places depending on the tool, OS, and local vs remote setup:
8
+
9
+ - VS Code agent plugins, local client: `~/.vscode/agent-plugins` (Windows / older builds), `~/.config/Code/agentPlugins` (Linux), `~/Library/Application Support/Code/agentPlugins` (macOS), and `%APPDATA%\Code\agentPlugins` (Windows), plus `Code - Insiders` variants. The install layout is `{host}/{org}/{repo}`, with optional `installed.json` and `cache.json` manifests alongside.
10
+ - VS Code agent plugins on a remote host (Remote-SSH, Codespaces, Dev Containers, WSL): `~/.vscode-server/data/agentPlugins`. VS Code syncs the enabled skills from your local client into a synthetic "VS Code Synced Data" plugin materialized at `~/.vscode-server/data/agentPlugins/{sanitizedUri}/{nonce}/skills/...`, and records each synced bundle in `~/.vscode-server/data/agentPlugins/cache.json`.
27
11
  - Claude Code plugins: `~/.claude/plugins/installed_plugins.json`
28
- - Claude Code plugins on a remote host (SSH/remote sessions):
29
- `~/.claude/remote/plugins/installed_plugins.json`
30
- - **Agent Plugins 1.0.0 packages** distributed via npm. opencode installs npm
31
- plugins into its own cache (`~/.cache/opencode/packages/...`), not the
32
- project's `node_modules`, and a `skills.paths` entry relative to the project
33
- dir silently resolves to nothing. This plugin scans both the opencode plugin
34
- cache and the project's `node_modules` for packages carrying a root
35
- `plugin.json` whose `$schema` is `https://agent-plugins.org/schemas/...`,
36
- and registers their `skills/` with **absolute** paths — so an npm-distributed
37
- Agent Plugins package (e.g. `@dodopayments/opencode-plugin`) just works with
38
- `"plugin": ["opencode-skill-autodiscovery"]` and nothing else.
39
-
40
- Each points at plugin directories that contain `SKILL.md` files. This plugin
41
- reads the manifests (including the remote `cache.json` LRU), resolves each
42
- entry to its on-disk skill directories, and registers them with opencode.
43
- When a discovered package carries a conformant root `plugin.json`, that manifest
44
- is preferred (its `skills/` children are registered as-is); otherwise the plugin
45
- falls back to a tree walk so legacy layouts keep working.
12
+ - Claude Code plugins on a remote host (SSH/remote sessions): `~/.claude/remote/plugins/installed_plugins.json`
13
+ - **Agent Plugins 1.0.0 packages** distributed via npm. opencode installs npm plugins into its own cache (`~/.cache/opencode/packages/...`), not the project's `node_modules`, and a `skills.paths` entry relative to the project dir silently resolves to nothing. This plugin scans both the opencode plugin cache and the project's `node_modules` for packages carrying a root `plugin.json` whose `$schema` is `https://agent-plugins.org/schemas/...`, and registers their `skills/` with **absolute** paths — so an npm-distributed Agent Plugins package (e.g. `@dodopayments/opencode-plugin`) just works with `"plugin": ["opencode-skill-autodiscovery"]` and nothing else.
14
+
15
+ Each points at plugin directories that contain `SKILL.md` files. This plugin reads the manifests (including the remote `cache.json` LRU), resolves each entry to its on-disk skill directories, and registers them with opencode. When a discovered package carries a conformant root `plugin.json`, that manifest is preferred (its `skills/` children are registered as-is); otherwise the plugin falls back to a tree walk so legacy layouts keep working.
46
16
 
47
17
  ### MCP servers (opt-in)
48
18
 
49
- With the `mcp` option, the plugin also reads each discovered package's `mcp.json`
50
- and maps it onto opencode's `config.mcp`:
19
+ With the `mcp` option, the plugin also reads each discovered package's `mcp.json` and maps it onto opencode's `config.mcp`:
51
20
 
52
21
  | Agent Plugins server | opencode entry |
53
22
  |---|---|
@@ -55,62 +24,39 @@ and maps it onto opencode's `config.mcp`:
55
24
  | `{ "type": "streamable-http", "url" }` | `{ "type": "remote", "url" }` |
56
25
  | `{ "type": "sse" }` | skipped (opencode has no SSE transport) |
57
26
 
58
- `${PLUGIN_ROOT}` and `${PLUGIN_DATA}` placeholders are expanded in `args`/`env`,
59
- and both variables are injected into each stdio server's environment
60
- (`PLUGIN_DATA` points at
61
- `{opencode state}/plugin-data/{packageName}`). Invalid entries are skipped
62
- per-entry, never fatally. `sse` servers and stdio `cwd` (which opencode cannot
63
- represent) are dropped with a log line.
27
+ `${PLUGIN_ROOT}` and `${PLUGIN_DATA}` placeholders are expanded in `args`/`env`, and both variables are injected into each stdio server's environment (`PLUGIN_DATA` points at `{opencode state}/plugin-data/{packageName}`). Invalid entries are skipped per-entry, never fatally. `sse` servers and stdio `cwd` (which opencode cannot represent) are dropped with a log line.
64
28
 
65
29
  ### Agents (opt-in)
66
30
 
67
- Agent Plugins 1.0.0 has no portable "agents" component type (only skills and
68
- MCP servers), so agents are contributed through the spec's client-extension
69
- mechanism. With the `agents` option, the plugin reads agents from four
70
- sources, in order:
71
-
72
- 1. `plugin.json` `extensions["dev.opencode"].agents` (a map of agent name
73
- opencode `agent` config).
74
- 2. A `dev.opencode/agents/<name>.json` extension directory (one opencode agent
75
- config per file).
76
- 3. A legacy Claude Code plugin shim: `.claude-plugin/plugin.json` `agents`,
77
- mapping `description` and `systemPrompt` (or the `agents/<name>/AGENTS.md`
78
- body) onto an opencode agent.
79
- 4. Flat `agents/<name>.md` files (the agency-agents layout) — one agent per
80
- file, keyed by filename, with `description`/`color` from frontmatter and the
81
- markdown body as the prompt.
82
-
83
- Agents discovered without an explicit `mode` default to opencode's `all`, so
84
- they are both Tab-selectable and spawnable as subagents.
85
-
86
- Discovered agents are registered as `config.agent.<name>` with the same rules
87
- as commands: user-defined agents are never overwritten, same-source mirrors are
88
- collapsed, and cross-source collisions become `<package>-<agent>`.
89
-
90
- **Trust note:** a package-supplied `permission` block is always dropped — agent
91
- permissions are too powerful to inherit from a package by default. If you need
92
- one, define the agent yourself in `opencode.json` (which always wins).
31
+ Agent Plugins 1.0.0 has no portable "agents" component type (only skills and MCP servers), so agents are contributed through the spec's client-extension mechanism. With the `agents` option, the plugin reads agents from four sources, in order:
32
+
33
+ 1. `plugin.json` `extensions["dev.opencode"].agents` (a map of agent name opencode `agent` config).
34
+ 2. A `dev.opencode/agents/<name>.json` extension directory (one opencode agent config per file).
35
+ 3. A legacy Claude Code plugin shim: `.claude-plugin/plugin.json` `agents`, mapping `description` and `systemPrompt` (or the `agents/<name>/AGENTS.md` body) onto an opencode agent.
36
+ 4. Flat `agents/<name>.md` files (the agency-agents layout) — one agent per file, keyed by filename, with `description`/`color` from frontmatter and the markdown body as the prompt.
37
+
38
+ Agents discovered without an explicit `mode` default to opencode's `all`, so they are both Tab-selectable and spawnable as subagents.
39
+
40
+ Discovered agents are registered as `config.agent.<name>` with the same rules as commands: user-defined agents are never overwritten, same-source mirrors are collapsed, and cross-source collisions become `<package>-<agent>`.
41
+
42
+ **Trust note:** a package-supplied `permission` block is always dropped — agent permissions are too powerful to inherit from a package by default. If you need one, define the agent yourself in `opencode.json` (which always wins).
43
+
44
+ Agent `color` values are normalized: bare CSS names (e.g. `orange`, `purple`) are mapped to the `#RRGGBB` hex literals opencode accepts, hex shorthand (`#0f8`) is expanded, and anything else is dropped rather than risk rejecting the whole config.
93
45
 
94
46
  ### Slash commands
95
47
 
96
- opencode treats skills and slash commands as separate mechanisms: skills are
97
- only loaded on demand via the `skill` tool. To make a discovered skill
98
- invocable as `/name`, the plugin also registers a command for it (via
99
- `config.command`) whose template loads the skill and forwards your arguments:
48
+ opencode treats skills and slash commands as separate mechanisms: skills are only loaded on demand via the `skill` tool. To make a discovered skill invocable as `/name`, the plugin also registers a command for it (via `config.command`) whose template loads the skill and forwards your arguments:
100
49
 
101
50
  ```markdown
102
51
  Load the `spec` skill and follow its instructions.
103
52
  Context: $ARGUMENTS
104
53
  ```
105
54
 
106
- So `/spec plan the migration` loads the `spec` skill and runs it against
107
- `plan the migration`. The command's description is taken from the skill's
108
- frontmatter; existing commands with the same name are never overwritten (a
109
- colliding skill from a different source is registered as `/package-skill`).
55
+ So `/spec plan the migration` loads the `spec` skill and runs it against `plan the migration`. The command's description is taken from the skill's frontmatter; existing commands with the same name are never overwritten (a colliding skill from a different source is registered as `/package-skill`).
110
56
 
111
57
  ## Install
112
58
 
113
- Add the package name to the `plugin` array in your `opencode.json`:
59
+ Add the package name to the `plugin` array in your `opencode.json` (or `opencode.jsonc` — both are supported):
114
60
 
115
61
  ```json
116
62
  {
@@ -145,34 +91,56 @@ Use the tuple form to configure options:
145
91
  | `mcp` | `false` | Also register MCP servers from discovered packages' `mcp.json`. |
146
92
  | `agents` | `false` | Also register agents from packages (see "Agents" above). |
147
93
 
94
+ ## VPS / remote hosts (SSH sessions)
95
+
96
+ Discovery is **machine-local**: a remote session only sees the skills, agents, and packages installed **on that host**. So opencode (and this plugin) must be installed on each remote machine, and you run opencode inside the SSH session — not from a local client terminal.
97
+
98
+ **On each remote host:**
99
+
100
+ ```sh
101
+ # 1. Install opencode if it isn't there yet
102
+ npm install -g opencode-ai
103
+
104
+ # 2. Install this plugin globally. The -g flag targets the machine-wide config;
105
+ # without it, opencode writes a project-scoped .opencode/opencode.json
106
+ # instead (easy to miss, because the plugin looks installed but only for
107
+ # that one directory).
108
+ opencode plugin opencode-skill-autodiscovery -g
109
+
110
+ # 3. Restart opencode. It fetches the latest published version into the
111
+ # remote's own cache.
112
+ ```
113
+
114
+ Or hand-edit the remote's global config (`~/.config/opencode/opencode.json`):
115
+
116
+ ```json
117
+ {
118
+ "plugin": [["opencode-skill-autodiscovery", { "mcp": true, "agents": true }]]
119
+ }
120
+ ```
121
+
122
+ **What a remote session discovers** (that host's own installs):
123
+ - VS Code Remote-SSH synced skills from `~/.vscode-server/data/agentPlugins/` (read via the `cache.json` LRU).
124
+ - Claude Code remote plugins from `~/.claude/remote/plugins/`.
125
+ - Agent Plugins packages in the remote's opencode cache (`~/.cache/opencode/packages/*`) and the project's `node_modules`.
126
+
127
+ **Caveats:**
128
+ - Run opencode **on the remote**. A local client terminal reads the local machine's manifests, not the remote's.
129
+ - VS Code only syncs **enabled** skills to the server as a flattened "VS Code Synced Data" bundle; marketplace clones (including their `agents/*.md` files) are generally not copied. Install the pack on the remote too if you want its agents there.
130
+ - To force a re-fetch of a new release on a remote, clear the cached copy and restart (opencode re-downloads the latest):
131
+ ```sh
132
+ rm -rf ~/.cache/opencode/packages/opencode-skill-autodiscovery*
133
+ ```
134
+
148
135
  ## Notes
149
136
 
150
- - Discovery is inherently **machine-local**: it reads manifests from the home
151
- directory of the machine opencode is running on. Remote sessions on a
152
- different machine will discover that machine's skills.
153
- - On a remote host, VS Code does **not** copy your marketplace plugins over.
154
- It syncs only the enabled skills/agents/etc. from your client as a single
155
- flattened "VS Code Synced Data" bundle under
156
- `~/.vscode-server/data/agentPlugins/`. That is why you won't see the
157
- original `{org}/{repo}` layout on the remote — the skill directories are
158
- named after the skills instead. This plugin reads `cache.json` to locate
159
- those materialized bundles.
160
- - Newer VS Code layouts have no `installed.json` at all; marketplaces are
161
- cloned directly under the agent plugin dir. The plugin falls back to a tree
162
- walk only when no manifest is present, so it never surfaces skills from
163
- cloned-but-uninstalled marketplaces on setups that do have a manifest.
164
- - VS Code account sync only syncs your marketplace extension list; each machine
165
- still has its own `installed.json`/`cache.json` that this plugin reads.
166
- - A package is only treated as an Agent Plugins package when its root
167
- `plugin.json` declares a `$schema` under `https://agent-plugins.org/schemas/`.
168
- Everything else is ignored by the cache/node_modules scanners and falls back
169
- to the tree walk elsewhere.
170
- - The same plugin can be materialised in several VS Code layouts at once
171
- (local clone + synced bundle + marketplace clone). `skills.paths` keeps all
172
- paths; slash commands and MCP servers are de-duplicated so mirrors don't
173
- create a wall of `/mirror-of-...` junk.
174
- - The plugin is a no-op when no manifests or conformant packages exist, or when
175
- they contain no skills.
137
+ - Discovery is inherently **machine-local**: it reads manifests from the home directory of the machine opencode is running on. Remote sessions on a different machine will discover that machine's skills.
138
+ - On a remote host, VS Code does **not** copy your marketplace plugins over. It syncs only the enabled skills/agents/etc. from your client as a single flattened "VS Code Synced Data" bundle under `~/.vscode-server/data/agentPlugins/`. That is why you won't see the original `{org}/{repo}` layout on the remote — the skill directories are named after the skills instead. This plugin reads `cache.json` to locate those materialized bundles.
139
+ - Newer VS Code layouts have no `installed.json` at all; marketplaces are cloned directly under the agent plugin dir. The plugin falls back to a tree walk only when no manifest is present, so it never surfaces skills from cloned-but-uninstalled marketplaces on setups that do have a manifest.
140
+ - VS Code account sync only syncs your marketplace extension list; each machine still has its own `installed.json`/`cache.json` that this plugin reads.
141
+ - A package is only treated as an Agent Plugins package when its root `plugin.json` declares a `$schema` under `https://agent-plugins.org/schemas/`. Everything else is ignored by the cache/node_modules scanners and falls back to the tree walk elsewhere.
142
+ - The same plugin can be materialised in several VS Code layouts at once (local clone + synced bundle + marketplace clone). `skills.paths` keeps all paths; slash commands and MCP servers are de-duplicated so mirrors don't create a wall of `/mirror-of-...` junk.
143
+ - The plugin is a no-op when no manifests or conformant packages exist, or when they contain no skills.
176
144
 
177
145
  ## Development
178
146
 
@@ -185,5 +153,6 @@ npm test # build + node --test (fixture-based unit tests)
185
153
  Publish:
186
154
 
187
155
  ```sh
156
+ npm pack # local tarball (no publish needed for testing)
188
157
  npm publish --access public
189
158
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAIpD,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AA4EF,wBAAgB,UAAU,CACxB,GAAG,EAAE,aAAa,GACjB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,CAuF7C"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAIpD,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAmJF,wBAAgB,UAAU,CACxB,GAAG,EAAE,aAAa,GACjB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,CAuF7C"}
package/dist/agents.js CHANGED
@@ -5,6 +5,78 @@ import { log } from "./log.js";
5
5
  // client-specific manifest data and extension directories (Agent Plugins 5.6/8).
6
6
  const OPENCODE_NS = "dev.opencode";
7
7
  const MODES = new Set(["subagent", "primary", "all"]);
8
+ // opencode accepts a `#RRGGBB` literal or one of its theme tokens; anything else
9
+ // makes the whole config fail to load. Claude Code agent frontmatter, however,
10
+ // uses bare CSS colour names, so translate the ones it emits and drop the rest.
11
+ const COLOR_TOKENS = new Set([
12
+ "primary",
13
+ "secondary",
14
+ "accent",
15
+ "success",
16
+ "warning",
17
+ "error",
18
+ "info",
19
+ ]);
20
+ // CSS named colours where one exists, Tailwind's 500 shade for the names CSS
21
+ // does not define (amber, slate, rose). Covers every bare name observed across
22
+ // shipped Claude Code / Agent Plugins agent frontmatter.
23
+ const COLOR_NAMES = {
24
+ red: "#FF0000",
25
+ orange: "#FFA500",
26
+ amber: "#F59E0B",
27
+ gold: "#FFD700",
28
+ yellow: "#FFFF00",
29
+ olive: "#808000",
30
+ lime: "#00FF00",
31
+ green: "#008000",
32
+ teal: "#008080",
33
+ turquoise: "#40E0D0",
34
+ aqua: "#00FFFF",
35
+ cyan: "#00FFFF",
36
+ "neon-cyan": "#00FFFF",
37
+ "neon-green": "#39FF14",
38
+ blue: "#0000FF",
39
+ navy: "#000080",
40
+ "metallic-blue": "#4682B4",
41
+ indigo: "#4B0082",
42
+ violet: "#EE82EE",
43
+ purple: "#800080",
44
+ magenta: "#FF00FF",
45
+ fuchsia: "#FF00FF",
46
+ pink: "#FFC0CB",
47
+ rose: "#F43F5E",
48
+ crimson: "#DC143C",
49
+ maroon: "#800000",
50
+ brown: "#A52A2A",
51
+ slate: "#64748B",
52
+ silver: "#C0C0C0",
53
+ white: "#FFFFFF",
54
+ gray: "#808080",
55
+ grey: "#808080",
56
+ black: "#000000",
57
+ };
58
+ // Returns a value opencode's config schema will accept, or undefined when the
59
+ // colour is unusable. Never let an unrecognised value through: a single bad
60
+ // colour rejects the entire merged config.
61
+ function normalizeColor(raw) {
62
+ if (!raw)
63
+ return undefined;
64
+ const value = raw.trim();
65
+ if (/^#[0-9a-fA-F]{6}$/.test(value))
66
+ return value;
67
+ // `#RGB` shorthand is valid CSS but not accepted by opencode; expand it.
68
+ if (/^#[0-9a-fA-F]{3}$/.test(value)) {
69
+ return `#${value.slice(1).split("").map((c) => c + c).join("")}`;
70
+ }
71
+ const lower = value.toLowerCase();
72
+ if (COLOR_TOKENS.has(lower))
73
+ return lower;
74
+ const mapped = COLOR_NAMES[lower];
75
+ if (mapped)
76
+ return mapped;
77
+ log(`dropping unsupported agent color ${JSON.stringify(value)}`);
78
+ return undefined;
79
+ }
8
80
  function asRecord(value) {
9
81
  return typeof value === "object" && value !== null
10
82
  ? value
@@ -33,7 +105,7 @@ function toAgentConfig(raw) {
33
105
  const model = stringValue("model");
34
106
  const prompt = stringValue("prompt");
35
107
  const description = stringValue("description");
36
- const color = stringValue("color");
108
+ const color = normalizeColor(stringValue("color"));
37
109
  const temperature = numberValue("temperature");
38
110
  const topP = numberValue("top_p");
39
111
  const maxSteps = numberValue("maxSteps");
@@ -187,8 +259,8 @@ function parseAgentMarkdown(content) {
187
259
  return fm ? fm[1].trim().replace(/^["']|["']$/g, "") : undefined;
188
260
  };
189
261
  const description = field("description");
190
- const color = field("color");
262
+ const color = normalizeColor(field("color"));
191
263
  const body = content.slice(m[0].length).trim();
192
- return { description: description || undefined, color: color || undefined, body };
264
+ return { description: description || undefined, color, body };
193
265
  }
194
266
  //# sourceMappingURL=agents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-skill-autodiscovery",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "OpenCode plugin that auto-discovers skills installed by VS Code agent plugins, Claude Code plugins, and Agent Plugins 1.0.0 packages, and registers them with the local opencode config.",
5
5
  "license": "MIT",
6
6
  "repository": {