2.6 KiB
2.6 KiB
Hooking Up a New Skill
Use this checklist to add a new skill in the docs-first model.
For the full contract details, see Content Contract, Frontmatter Contract, and URI Contract.
Canonical Skill Shape
Create one skill directory under docs/skills/:
docs/
skills/
<skill-id>/
SKILL.md
references/
... (optional markdown files, nested folders allowed)
Rules:
SKILL.mdis required.- All skill-specific supporting docs live under
references/. - Skill directories are ownership boundaries; no cross-skill writes.
skill-idis lowercase kebab-case and should remain stable.
SKILL.md Frontmatter
SKILL.md frontmatter is authoritative for metadata.
Required top-level fields:
namedescriptionx-personal-mcp
Required x-personal-mcp fields:
idversioncapabilities
Optional x-personal-mcp fields:
tagsdepends_onreferences
Canonical frontmatter template:
---
name: <skill-id>
description: <what this skill does and when to use it>
x-personal-mcp:
id: <skill-id>
version: 1.0.0
tags: []
capabilities:
- resource://skills/<skill-id>/document
depends_on: []
references:
<ref-id>:
path: references/<file>.md
mime_type: text/markdown
title: <optional short title>
---
Reference manifest rules:
ref-idis lowercase kebab-case.pathis skill-relative and must stay underreferences/.- Reference paths are markdown files.
No metadata.yaml sidecar is part of this model.
URI Surface
Canonical resource URIs for a skill:
resource://skills/<skill_id>/documentresource://skills/<skill_id>/references/<ref_id>
Canonical discovery URIs:
resource://catalog/skills_indexresource://catalog/skills/{skill_id}
Docs passthrough URI:
resource://docs/{path*}
Compatibility rule:
- Keep URI families unversioned by default.
- For breaking changes, update clients to the canonical replacement URIs directly.
Checklist
- Create
docs/skills/<skill-id>/SKILL.md. - Add optional references under
docs/skills/<skill-id>/references/. - Populate frontmatter with
name,description, andx-personal-mcpmetadata. - Ensure
x-personal-mcp.idequalsnameand directory<skill-id>. - Ensure
capabilitiesincludesresource://skills/<skill-id>/document. - If references are exposed, declare each
ref-idinx-personal-mcp.references.
Quick Validation
- Confirm docs build succeeds:
uv run zensical build
- Confirm tests succeed:
uv run pytest -q