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

An agent-side connection to a client.

Wraps an ACP.Connection with the AgentSide decoder, providing
convenience functions that implement the Client interface (request_permission,
write_text_file, session_notification, etc.) for making requests to the client
from the agent side.

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

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

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

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

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

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

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

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

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

Start an agent-side connection.

Options:
  - `:handler` - Module implementing ACP.Agent behaviour (handles incoming client requests)
  - `:handler_state` - State passed to handler
  - `:input` - Input IO device (default: :stdio)
  - `:output` - Output IO device (default: :stdio)
  - `:name` - Optional GenServer name

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

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

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

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

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

---

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