# `ACP.StreamMessage`
[🔗](https://github.com/f1729/agent-client-protocol-elixir/blob/main/lib/acp/stream_broadcast.ex#L1)

A message that flows through the RPC stream.

Used for observing and debugging protocol communication.

# `content`
[🔗](https://github.com/f1729/agent-client-protocol-elixir/blob/main/lib/acp/stream_broadcast.ex#L10)

```elixir
@type content() ::
  {:request, id :: any(), method :: String.t(), params :: any()}
  | {:response, id :: any(), result :: {:ok, any()} | {:error, ACP.Error.t()}}
  | {:notification, method :: String.t(), params :: any()}
```

# `direction`
[🔗](https://github.com/f1729/agent-client-protocol-elixir/blob/main/lib/acp/stream_broadcast.ex#L8)

```elixir
@type direction() :: :incoming | :outgoing
```

# `t`
[🔗](https://github.com/f1729/agent-client-protocol-elixir/blob/main/lib/acp/stream_broadcast.ex#L15)

```elixir
@type t() :: %ACP.StreamMessage{direction: direction(), message: content()}
```

---

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