返回 CodeWhale
SKILL.md
1 ---
2 name: plugin-creator
3 description: Scaffold a local Codewhale plugin bundle with a versioned manifest, namespaced Skills, and an explicit trust review.
4 ---
5
6 # Plugin Creator
7
8 Use this skill when a user wants a local Codewhale plugin bundle. Codewhale
9 v0.9.1 has a deliberately bounded loader: trusted and enabled bundles may add
10 declarative Skills and MCP servers through the existing engines. Other
11 component kinds are inventory-only.
12
13 ## Workflow
14
15 1. Pick a Codewhale-owned location:
16 - User bundle: `~/.codewhale/plugins/<plugin-name>/`
17 - Workspace bundle: `<workspace>/.codewhale/plugins/<plugin-name>/`
18 2. Normalize the bundle name to lowercase hyphen-case.
19 3. Create `plugin.toml`:
20
21 ```toml
22 schema_version = 1
23
24 [plugin]
25 name = "my-plugin"
26 version = "0.1.0"
27 description = "What this bundle provides"
28
29 [skills]
30 path = "skills"
31 ```
32
33 4. Put each Skill under `skills/<skill-name>/SKILL.md`. Codewhale exposes it
34 as `my-plugin:<skill-name>`, never as an unqualified command.
35 5. Add `[mcp_servers.<name>]` only when the bundle needs an existing MCP
36 engine. Keep stdio commands and paths inside the bundle. Map local
37 environment values only as exact `${SOURCE_ENV}` references. For remote MCP,
38 use HTTPS (or loopback HTTP), forbid URL user information/query/fragment,
39 use only environment-backed headers or bearer tokens, and declare the exact
40 normalized endpoint host set in `[capabilities].network_hosts`. Never place
41 credentials in the manifest.
42 6. Declare commands, agents, hooks, LSP, native extensions, filesystem roots,
43 or lifecycle mutation only when inventorying future work. v0.9.1 will show
44 these declarations and refuse to activate the bundle.
45 7. Validate and review without executing bundle content:
46 - `/plugin validate <plugin-name>`
47 - `/plugin show <plugin-name>`
48 - `/plugin enable <plugin-name>` to open the content/capability review
49 - run the exact `/plugin trust ...` confirmation shown, then enable again
50 8. Verify `/skills inspect` reports plugin provenance and `/plugin list`
51 reports the expected trust and activation state. Trust stages the reviewed
52 content but does not activate it; enablement rebuilds the current
53 workspace's Skill/MCP catalogue immediately.
54
55 Every user and workspace bundle starts untrusted and disabled. Do not add a
56 marketplace, downloader, updater, compatibility scan, executable extension
57 runtime, or automatic trust flow; those surfaces are outside v0.9.1.
58
58 lines MARKDOWN