# `KapsoEx.Agent.Modes`
[🔗](https://github.com/rocket4ce/kapso_ex/blob/v0.1.0/lib/kapso_ex/agent/modes.ex#L1)

[Kapso Agent modes](https://docs.kapso.ai/docs/kapso-agent/modes):
built-in and custom modes with their instructions, tools and
permissions. Only modes whose `available_invocations` include `"api"`
accept runs from `KapsoEx.Agent.Runs.create/2`.

# `result`

```elixir
@type result() :: {:ok, map()} | {:error, KapsoEx.Error.t()}
```

# `get`

```elixir
@spec get(KapsoEx.Client.t(), String.t()) :: result()
```

Gets a mode by its identifier.

# `list`

```elixir
@spec list(KapsoEx.Client.t()) :: result()
```

Lists every mode.

---

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