# `Raxol.AgentClientProtocol.Schema.AgentTypes.AgentResponse`
[🔗](https://github.com/DROOdotFOO/raxol-agent/blob/raxol_agent_client_protocol-v0.1.0/packages/raxol_agent_client_protocol/lib/raxol/agent_client_protocol/schema/agent_types.ex#L2380)

Tagged union of every response the agent may send back to the client.

Ported from the MIT `f1729/agent_client_protocol` (c) 2025 f1729; see NOTICE.md.

# `t`

```elixir
@type t() ::
  {:initialize,
   Raxol.AgentClientProtocol.Schema.AgentTypes.InitializeResponse.t()}
  | {:authenticate,
     Raxol.AgentClientProtocol.Schema.AgentTypes.AuthenticateResponse.t()}
  | {:new_session,
     Raxol.AgentClientProtocol.Schema.AgentTypes.NewSessionResponse.t()}
  | {:load_session,
     Raxol.AgentClientProtocol.Schema.AgentTypes.LoadSessionResponse.t()}
  | {:list_sessions,
     Raxol.AgentClientProtocol.Schema.Unstable.ListSessionsResponse.t()}
  | {:fork_session,
     Raxol.AgentClientProtocol.Schema.Unstable.ForkSessionResponse.t()}
  | {:resume_session,
     Raxol.AgentClientProtocol.Schema.Unstable.ResumeSessionResponse.t()}
  | {:set_session_mode,
     Raxol.AgentClientProtocol.Schema.AgentTypes.SetSessionModeResponse.t()}
  | {:set_session_config_option,
     Raxol.AgentClientProtocol.Schema.Unstable.SetSessionConfigOptionResponse.t()}
  | {:prompt, Raxol.AgentClientProtocol.Schema.AgentTypes.PromptResponse.t()}
  | {:set_session_model,
     Raxol.AgentClientProtocol.Schema.Unstable.SetSessionModelResponse.t()}
  | {:ext_method, Raxol.AgentClientProtocol.Schema.Ext.ExtResponse.t()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
