Search and retrieve agent skills at runtime. This skill should be used when the agent needs to find specialized capabilities, workflows, or domain knowledge to accomplish a task. Skyll aggregates skills from skills.sh and returns full SKILL.md content ready for context injection.
npx skills add https://github.com/assafelovic/skyll --skill skyll
Skyll enables agents to dynamically discover and retrieve skills at runtime. Instead of having all skills pre-loaded, agents can search for relevant skills on-demand and inject them into context.
Use Skyll when:
from skyll import Skyll
async with Skyll() as client:
# Search for relevant skills
skills = await client.search("react performance optimization", limit=3)
for skill in skills:
print(f"Skill: {skill.title}")
print(f"Score: {skill.relevance_score}")
print(skill.content) # Full SKILL.md content
Search for skills:
curl "https://api.skyll.app/search?q=react+performance&limit=3"
Get a specific skill:
curl "https://api.skyll.app/skills/anthropics/skills/skill-creator"
The API returns ranked skills with relevance scores (0-100):
{
"query": "react performance",
"count": 3,
"skills": [
{
"id": "react-best-practices",
"title": "React Best Practices",
"description": "Performance optimization for React and Next.js",
"source": "vercel-labs/agent-skills",
"relevance_score": 85.5,
"install_count": 82800,
"content": "# React Best Practices\n\n## Performance\n..."
}
]
}
| Field | Description |
|-------|-------------|
| id | Skill identifier |
| title | Human-readable title |
| description | What the skill does |
| source | GitHub repository (owner/repo) |
| relevance_score | 0-100 match score |
| install_count | Popularity from skills.sh |
| content | Full SKILL.md markdown content |
| references | Additional reference files (if requested) |
| Parameter | Default | Description |
|-----------|---------|-------------|
| q / query | required | Search query |
| limit | 10 | Max results (1-50) |
| include_content | true | Fetch full SKILL.md content |
| include_references | false | Include reference files |
When an agent needs to build a React Native app but lacks mobile expertise:
skills = await client.search("react native best practices", limit=2)
context = skills[0].content # Full SKILL.md content
| Endpoint | Description |
|----------|-------------|
| GET /search?q={query} | Search skills |
| POST /search | Search with JSON body |
| GET /skills/{source}/{skill_id} | Get specific skill |
| GET /health | Health check |
| GET /docs | Interactive API documentation |
For Python agents:
pip install skyll
For other languages, use the REST API directly at https://api.skyll.app.
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Replace with description of the skill and when Claude should use it.
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
Use when creating new skills, editing existing skills, or verifying skills work before deployment
Take assafelovic/skyll from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference pip.
Without those the skill loads but fails at the first command.