logic-engine / ace /protocols /skill_manager.py
ghostdrive1's picture
Upload folder using huggingface_hub
116524e verified
Raw
History Blame Contribute Delete
723 Bytes
"""Protocol defining what steps need from a SkillManager implementation."""
from __future__ import annotations
from typing import Any, Protocol, runtime_checkable
from ..core.outputs import ReflectorOutput, SkillManagerOutput
@runtime_checkable
class SkillManagerLike(Protocol):
"""Structural interface for SkillManager-like objects.
Any object with a matching ``update_skills`` method satisfies this —
``ace.roles.SkillManager`` does.
"""
def update_skills(
self,
*,
reflections: tuple[ReflectorOutput, ...],
skillbook: Any,
question_context: str,
progress: str,
**kwargs: Any,
) -> SkillManagerOutput: ...