Skip to content

Typed agent input/output and composition (Agent[F, In, Out]) #559

Description

@flsh86

Give agents typed inputs and outputs (building on the existing ResponseSchema[T]) so runs return F[Either[AIException, Out]] instead of stringly results, and add composition: agentA.andThen(agentB) compiles only when A’s Out matches B’s In. Embabel matches domain types at runtime during planning; compile-time-checked handoffs are the Scala-native answer. Design questions to settle first: how In renders into the initial user message, and whether intermediate conversation history propagates across a handoff.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions