Filesystem-based skill provider for the Agent Skills format (https://agentskills.io)
Project description
agentskills-fs
Local filesystem skill provider for the Agent Skills SDK.
Serves Agent Skills from a local directory tree. Each subdirectory containing a SKILL.md file is a skill.
Installation
pip install agentskills-fs
Requires Python 3.12+. Installs agentskills-core and pyyaml as dependencies.
Expected Directory Layout
skills/
├── incident-response/
│ ├── SKILL.md # YAML frontmatter + markdown body
│ ├── references/ # supplementary docs (optional)
│ ├── scripts/ # executable scripts (optional)
│ └── assets/ # diagrams, data files (optional)
└── another-skill/
└── SKILL.md
Usage
from pathlib import Path
from agentskills_core import SkillRegistry
from agentskills_fs import LocalFileSystemSkillProvider
provider = LocalFileSystemSkillProvider(Path("./skills"))
registry = SkillRegistry()
await registry.register("incident-response", provider)
skill = registry.get_skill("incident-response")
meta = await skill.get_metadata()
body = await skill.get_body()
script = await skill.get_script("page-oncall.sh")
The provider reads files synchronously (local disk I/O is fast for small skill files) but exposes an async interface to satisfy the SkillProvider contract.
Security
Path traversal is guarded — skill IDs and resource names are validated to stay within the root directory. Attempts to escape (e.g. ../../etc/passwd) raise SkillNotFoundError or ResourceNotFoundError.
API
LocalFileSystemSkillProvider(root: Path)
| Method | Returns | Description |
|---|---|---|
get_metadata(skill_id) |
dict[str, Any] |
Parsed YAML frontmatter from SKILL.md |
get_body(skill_id) |
str |
Markdown body after the frontmatter |
get_script(skill_id, name) |
bytes |
Raw content of a script file |
get_asset(skill_id, name) |
bytes |
Raw content of an asset file |
get_reference(skill_id, name) |
bytes |
Raw content of a reference file |
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentskills_fs-0.2.0.tar.gz.
File metadata
- Download URL: agentskills_fs-0.2.0.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.1 CPython/3.13.9 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fafad34298bd9684dfa2be1cb5a012c4637ade1c6d2e46a44f7a84e8c7bfc58
|
|
| MD5 |
7f096e6707f2545f252df4ab7ea5423e
|
|
| BLAKE2b-256 |
9e6f5cbc62956a72f71b33989afb66dea250e5e83591451cb6de6e2cafe876f9
|
File details
Details for the file agentskills_fs-0.2.0-py3-none-any.whl.
File metadata
- Download URL: agentskills_fs-0.2.0-py3-none-any.whl
- Upload date:
- Size: 5.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.1 CPython/3.13.9 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0006dce01fa0ca2abee45fc8bec07529b39db5c71a92703647cdf60c03c390f9
|
|
| MD5 |
ce7cec136e241e12fd072d4af4e84736
|
|
| BLAKE2b-256 |
04ce74343c9e7e27ea4b6d217d80cd3b102db03745fc4866029951265afd8054
|