# `ClaudeAgentSDK.SessionStore.MirrorBatcher`
[🔗](https://github.com/nshkrdotcom/claude_agent_sdk/blob/v0.18.0/lib/claude_agent_sdk/session_store/mirror_batcher.ex#L1)

Batches `transcript_mirror` frames and appends them to a SessionStore.

# `t`

```elixir
@type t() :: pid()
```

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `close`

```elixir
@spec close(t()) :: [ClaudeAgentSDK.Message.t()]
```

# `enqueue`

```elixir
@spec enqueue(t(), String.t(), [map()]) :: [ClaudeAgentSDK.Message.t()]
```

# `flush`

```elixir
@spec flush(t()) :: [ClaudeAgentSDK.Message.t()]
```

# `message_from_error`

```elixir
@spec message_from_error(ClaudeAgentSDK.SessionStore.Key.t() | nil, String.t()) ::
  ClaudeAgentSDK.Message.t()
```

# `start_link`

```elixir
@spec start_link(term(), String.t(), keyword()) :: Agent.on_start()
```

---

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