@kensio/skill-template 1.3.0

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.
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://anthropic.com/claude-code/plugin.schema.json",
3
+ "name": "skill-template",
4
+ "version": "1.3.0",
5
+ "description": "A copy-and-edit starting point for writing a new Claude Code skill, covering SKILL.md frontmatter, description wording, and progressive disclosure.",
6
+ "author": {
7
+ "name": "Kensio Software",
8
+ "email": "hugh@kensiosoftware.co.uk"
9
+ },
10
+ "homepage": "https://kensio.ai",
11
+ "repository": "https://github.com/KensioSoftware/kensio.ai",
12
+ "license": "Apache-2.0",
13
+ "keywords": ["example", "template", "authoring"]
14
+ }
package/README.md ADDED
@@ -0,0 +1,14 @@
1
+ # @kensio/skill-template
2
+
3
+ A copy-and-edit starting point for writing a new Claude Code skill: the folder layout, `SKILL.md`
4
+ frontmatter, how to word a description so the skill actually triggers, and how to release a version
5
+ bump.
6
+
7
+ ```
8
+ /plugin marketplace add KensioSoftware/kensio.ai
9
+ /plugin install skill-template@kensio
10
+ ```
11
+
12
+ Part of [kensio.ai](https://github.com/KensioSoftware/kensio.ai). Licensed under the Apache License
13
+ 2.0 — see the [LICENSE](https://github.com/KensioSoftware/kensio.ai/blob/main/LICENSE) in the
14
+ repository root.
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@kensio/skill-template",
3
+ "version": "1.3.0",
4
+ "description": "A copy-and-edit starting point for writing a new Claude Code skill, covering SKILL.md frontmatter, description wording, and progressive disclosure.",
5
+ "keywords": [
6
+ "claude",
7
+ "claude-code",
8
+ "claude-code-plugin",
9
+ "kensio",
10
+ "skill"
11
+ ],
12
+ "homepage": "https://kensio.ai",
13
+ "license": "Apache-2.0",
14
+ "author": "Kensio Software <hugh@kensiosoftware.co.uk>",
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git+https://github.com/KensioSoftware/kensio.ai.git",
18
+ "directory": "plugins/skill-template"
19
+ },
20
+ "files": [
21
+ ".claude-plugin",
22
+ "skills",
23
+ "README.md"
24
+ ],
25
+ "publishConfig": {
26
+ "access": "public"
27
+ }
28
+ }
@@ -0,0 +1,71 @@
1
+ ---
2
+ name: skill-template
3
+ description: Scaffold a new Claude Code skill in this repo — creates the plugin folder, package.json, plugin.json and SKILL.md, and registers it in the marketplace. Use when the user asks to "add a new skill", "create a skill", or "start a new plugin" in the kensio.ai repo.
4
+ ---
5
+
6
+ # Skill Template
7
+
8
+ A starting point for adding a new skill to this repo. Copy the structure below, replace the
9
+ placeholders, then run the validation scripts.
10
+
11
+ ## Layout
12
+
13
+ Every skill lives in its own self-contained plugin folder:
14
+
15
+ ```
16
+ plugins/<skill-name>/
17
+ ├── package.json # npm package: @kensio/<skill-name>
18
+ ├── .claude-plugin/
19
+ │ └── plugin.json # name, version, description, author
20
+ └── skills/
21
+ └── <skill-name>/
22
+ └── SKILL.md
23
+ ```
24
+
25
+ **A plugin folder must be self-contained.** Never reference files outside it with `../` — plugins
26
+ are copied, zipped, and installed standalone, so those paths will not resolve.
27
+
28
+ ## Steps
29
+
30
+ 1. Create `plugins/<skill-name>/` following the layout above.
31
+ 2. Copy `package.json` from an existing plugin; set `name` to `@kensio/<skill-name>` and the
32
+ `repository.directory` to `plugins/<skill-name>`.
33
+ 3. Copy `.claude-plugin/plugin.json`; set `name` and `description`.
34
+ 4. Set the `version` in both files to whatever the other plugins currently carry. Versions move in
35
+ lockstep across the whole repo, and the release workflow is what changes them — never pick a new
36
+ number by hand.
37
+ 5. Write `skills/<skill-name>/SKILL.md` (see frontmatter below).
38
+ 6. Add an entry to `.claude-plugin/marketplace.json` with a matching `name`, a `source` of
39
+ `"./plugins/<skill-name>"`, and a description.
40
+ 7. Run `pnpm check`.
41
+
42
+ ## SKILL.md frontmatter
43
+
44
+ ```markdown
45
+ ---
46
+ name: <skill-name>
47
+ description: <what it does, then when to use it — include the words and phrases a user would actually type>
48
+ ---
49
+ ```
50
+
51
+ - `name` must be kebab-case and match the containing directory.
52
+ - `description` is the _only_ thing Claude sees when deciding whether to load the skill, so it
53
+ carries the whole triggering burden. State what the skill does, then when to use it, in third
54
+ person. Concrete trigger phrases beat abstract summaries.
55
+ - Optional frontmatter worth knowing: `allowed-tools` (restrict the tools the skill may use) and
56
+ `disable-model-invocation: true` (user-invocable only, via `/<skill-name>`).
57
+
58
+ ## Writing the body
59
+
60
+ Keep `SKILL.md` short and imperative — it is instructions for Claude, not documentation for a human.
61
+ Push detail into sibling files (`reference.md`, `examples/`) and link to them, so the body stays
62
+ cheap to load and the details are read only when needed.
63
+
64
+ ## Releasing
65
+
66
+ There is nothing to do. Merging to `main` releases, and the version comes from the pull request
67
+ title: `fix:` for a patch, `feat:` for a minor, `feat!:` or a `BREAKING CHANGE` footer for a major.
68
+ A `docs:` or `chore:` title releases nothing.
69
+
70
+ Every plugin is set to the new version together, so a released version means the same commit
71
+ wherever it was installed from.