Files
aios/runtime/agent-os/skill_loader.py
T

32 lines
863 B
Python

"""Agent OS skill loader runtime."""
from dataclasses import dataclass, field
from typing import Dict, List
@dataclass
class SkillPackage:
skill_id: str
version: str
capabilities: List[str] = field(default_factory=list)
enabled: bool = True
class SkillLoader:
def __init__(self):
self.skills: Dict[str, SkillPackage] = {}
def register(self, skill: SkillPackage):
self.skills[skill.skill_id] = skill
def validate(self, skill_id: str):
skill = self.skills.get(skill_id)
return bool(skill and skill.enabled and skill.version)
def load_for_capability(self, capability: str):
return [s for s in self.skills.values() if capability in s.capabilities and s.enabled]
def disable(self, skill_id: str):
if skill_id in self.skills:
self.skills[skill_id].enabled = False