from __future__ import annotations from dataclasses import dataclass, field from review_agent.models import FileSummaryBatch @dataclass(frozen=True) class WorkflowContext: batch: FileSummaryBatch @dataclass class SkillResult: success: bool data: dict = field(default_factory=dict) message: str = "" class BaseSkill: name = "" def run(self, context: WorkflowContext) -> SkillResult: raise NotImplementedError