Standardize on Claude Code's SKILL.md format as every skill's source of truth. skill.toml becomes an optional metadata layer for runtime, input schema, and versioning — never for the prompt body. - validate.py: require SKILL.md in every skill dir; when skill.toml also exists, cross-check name/description consistency to prevent drift - Add SKILL.md to the two custom-skill examples - Move the meeting-agenda prompt body out of skill.toml into SKILL.md - Rewrite skills/README.md to document the md-first, toml-as-metadata convention Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
25 lines
842 B
TOML
25 lines
842 B
TOML
## Custom Prompt Skill Example
|
|
##
|
|
## The prompt body and metadata (name, description) live in SKILL.md.
|
|
## This skill.toml only declares the runtime, input schema, and optional
|
|
## metadata that don't fit in Markdown frontmatter.
|
|
##
|
|
## To test: librefang skill test ./skills/custom-skill-prompt \
|
|
## --input '{"topic": "Q1 planning", "duration_minutes": "30"}'
|
|
##
|
|
## For the full reference, see: docs/skill-development.md
|
|
|
|
[skill]
|
|
name = "meeting-agenda"
|
|
version = "0.1.0"
|
|
description = "Generate a structured meeting agenda from a topic and duration."
|
|
author = "your-name"
|
|
tags = ["meeting", "productivity", "example"]
|
|
|
|
[runtime]
|
|
type = "promptonly"
|
|
|
|
[input]
|
|
topic = { type = "string", description = "The meeting topic", required = true }
|
|
duration_minutes = { type = "string", description = "Meeting duration in minutes", required = true }
|