Skill Frontmatter (SKILL.md)
Fields
| Field | Required | Description |
|---|---|---|
name | Yes | Package slug (unique within skills) |
description | Yes | One-line summary |
metadata.strawpot.dependencies | No | Flat list of skill slugs with optional version constraints |
metadata.strawpot.tools | No | System tool requirements |
Role Frontmatter (ROLE.md)
Fields
| Field | Required | Description |
|---|---|---|
name | Yes | Package slug (unique within roles) |
description | Yes | One-line summary |
metadata.strawpot.dependencies.skills | No | List of skill dependencies |
metadata.strawpot.dependencies.roles | No | List of role dependencies |
metadata.strawpot.default_model.provider | No | Model provider identifier |
metadata.strawpot.default_model.id | No | Model ID |
metadata.strawpot.tools | No | System tool requirements |
Version Specifiers
Used in dependency declarations:| Format | Meaning | Example |
|---|---|---|
slug | Latest version | git-workflow |
slug==X.Y.Z | Exact version | git-workflow==1.0.0 |
slug>=X.Y.Z | Minimum version | git-workflow>=1.0.0 |
slug^X.Y.Z | Compatible (same major) | git-workflow^1.0.0 |
System Tools Schema
- Tool names should match the CLI binary name (used for
PATHdetection) - Install commands run in the user’s shell
- Only the current OS command is executed
- Supported OS keys:
macos,linux,windows
Key Differences: Skills vs Roles
| Aspect | Skills | Roles |
|---|---|---|
| File | SKILL.md | ROLE.md |
| Dependencies format | Flat list (skills only) | Structured with skills and roles sub-keys |
| Model config | Not supported | default_model field |
| Namespace | Separate | Separate (same slug allowed in both) |