# `OpenCode.Generated.SessionMessageAssistant`
[🔗](https://github.com/UtkarshUsername/opencode-sdk-elixir/blob/v0.1.84/lib/opencode/generated/session_message_assistant.ex#L1)

Provides struct and type for a SessionMessageAssistant

# `t`

```elixir
@type t() :: %OpenCode.Generated.SessionMessageAssistant{
  agent: String.t(),
  content: [
    OpenCode.Generated.SessionMessageAssistantReasoning.t()
    | OpenCode.Generated.SessionMessageAssistantText.t()
    | OpenCode.Generated.SessionMessageAssistantTool.t()
  ],
  cost: number() | nil,
  error: OpenCode.Generated.SessionErrorUnknown.t() | nil,
  finish: String.t() | nil,
  id: String.t(),
  metadata: map() | nil,
  model: OpenCode.Generated.SessionMessageAssistantModel.t(),
  snapshot: OpenCode.Generated.SessionMessageAssistantSnapshot.t() | nil,
  time: OpenCode.Generated.SessionMessageAssistantTime.t(),
  tokens: OpenCode.Generated.SessionMessageAssistantTokens.t() | nil,
  type: String.t()
}
```

---

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