A Client connects your agent to real-world input and output sources. It delivers Messages to your agent and routes responses to their destination.A Client can be one (or both) of:
Input (AgentInput): Provides messages to the agent.
Output (AgentOutput): Sends the agent’s responses to their destination.
This design allows your agent to integrate seamlessly with a wide range of sources, from scheduled tasks (like cron jobs) to interactive platforms (like Discord bots).
Clients allow you to plug your agent into the real world with minimal effort. Need an AI that interacts via Discord, Slack, email, or webhooks? Just write a Client that conforms to AgentInput and AgentOutput, and you’re good to go.