| name | markdown-version-extractor |
| description | Extracts 'version' or 'uuid' fields from YAML frontmatter using uv. |
Markdown Version Extractor
Use this skill to identify the version or UUID of a skill or project stored in Markdown frontmatter. This is a critical dependency for the Version Sync phase of the Persona Protocol.
Capabilities
- Parses YAML frontmatter using the
python-frontmatterlibrary. - Safely extracts versioning identifiers (
uuidorversion). - Provides available metadata keys if the specific version tag is missing.
Execution Logic
The agent MUST use uv run and MUST provide absolute paths for both the script and the target file.
Command Template:
uv run <absolute_path_to_get_version.py> "<absolute_path_to_target_md_file>"
Guidance for the Agent
- NO DIRECT PYTHON: You are FORBIDDEN from calling
pythonorpython3directly. This script uses PEP 723 inline dependencies that require theuvruntime. - Absolute Paths: You must resolve the current working directory to provide the full absolute path for:
- The script itself.
- The file being checked.
- Version Identifier Priority:
- The Registry uses the
uuidfield. - Local files may use either
versionoruuid. - If the script returns a
uuid, use that for comparison against the registry'suuid.
- The Registry uses the
- Error Handling:
- If the output shows
status: "missing_tag", check themetadata_keysin the JSON. If neitheruuidnorversionexists, consider the skill unversioned and trigger an update. - If the file is missing or not Markdown, report a failure.
- If the output shows