This module defines SkillMetadata, a lightweight data model for skill indexing, discovery, and LLM-based semantic matching. Each skill is described by a SKILL.md file, and SkillMetadata captures the frontmatter of that file for runtime use.
SkillMetadata (BaseModel)
Parameters
Parameter
Type
Default
Description
name
str
(required)
Unique skill identifier.
description
str
(required)
Short description for LLM semantic matching.
skill_path
Path
(required)
Path to the SKILL.md file for on-demand loading.
version
Optional[str]
None
Optional semantic version string.
author
Optional[str]
None
Optional author information.
disable_model_invocation
bool
False
If true, skill must not be auto-invoked by the system/model.
user_invocable
bool
True
If false, skill must not be manually invoked via /skill-name.
argument_hint
Optional[str]
None
Optional hint for user-provided arguments.
source_name
Optional[str]
None
Name of the Skills/SkillHub component that registered this skill.
Factory: create instance from parsed YAML frontmatter. Raises ValueError if name or description missing.
1---2name: schemas3description: Skill Schemas4---5# Skill Schemas67---8The position of the classes is:910```11oxygent/schemas/skill.py12```1314---1516## Introduction1718This module defines `SkillMetadata`, a lightweight data model for skill indexing, discovery, and LLM-based semantic matching. Each skill is described by a `SKILL.md` file, and `SkillMetadata` captures the frontmatter of that file for runtime use.1920## SkillMetadata (BaseModel)2122### Parameters2324| Parameter | Type | Default | Description |25| -------------------------- | --------------- | ---------- | --------------------------------------------------------------- |26| `name` | `str` | (required) | Unique skill identifier. |27| `description` | `str` | (required) | Short description for LLM semantic matching. |28| `skill_path` | `Path` | (required) | Path to the `SKILL.md` file for on-demand loading. |29| `version` | `Optional[str]` | `None` | Optional semantic version string. |30| `author` | `Optional[str]` | `None` | Optional author information. |31| `disable_model_invocation` | `bool` | `False` | If true, skill must not be auto-invoked by the system/model. |32| `user_invocable` | `bool` | `True` | If false, skill must not be manually invoked via `/skill-name`. |33| `argument_hint` | `Optional[str]` | `None` | Optional hint for user-provided arguments. |34| `source_name` | `Optional[str]` | `None` | Name of the Skills/SkillHub component that registered this skill. |3536### Methods3738| Method | Coroutine (async) | Return Value | Purpose (concise) |39| ---------------------------------------------- | ----------------- | --------------- | -------------------------------------------------------------- |40| `from_frontmatter(frontmatter, skill_path)` (classmethod) | No | `SkillMetadata` | Factory: create instance from parsed YAML frontmatter. Raises `ValueError` if `name` or `description` missing. |
Run npx skillmds@latest add jd-opensource/schemas in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Skill Schemas It is listed under Integrations & APIs on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
jd-opensource (@jd-opensource) published this skill. Their other Agent Skills are listed on their SkillMD profile.