diff --git a/src/controlflow/agents/agent.py b/src/controlflow/agents/agent.py index 790d38aa..e96c134c 100644 --- a/src/controlflow/agents/agent.py +++ b/src/controlflow/agents/agent.py @@ -97,11 +97,11 @@ class Agent(ControlFlowModel, abc.ABC): _cm_stack: list[AbstractContextManager] = PrivateAttr(default_factory=list) - @model_validator(mode="before") - def handle_positional_arg(cls, v): - if isinstance(v, str): - return {"instructions": v} - return v + def __init__(self, instructions: Optional[str] = None, **kwargs): + if instructions is not None: + kwargs["instructions"] = instructions + + super().__init__(**kwargs) @model_validator(mode="before") @classmethod