Nous.Session.Config (nous v0.13.3)
View SourceConfiguration for managed agent sessions.
Provides turn limits, token budgets, and compaction thresholds
for higher-level session management (e.g. Nous.AgentServer or
custom GenServers). This is separate from Agent.Context.max_iterations
which controls the inner agent loop.
Usage
config = %Nous.Session.Config{
max_turns: 20,
max_budget_tokens: 500_000,
compact_after_turns: 15
}
case Nous.Session.Guardrails.check_limits(config, turn_count, in_tokens, out_tokens) do
:ok -> proceed_with_turn()
{:error, :max_turns_reached} -> stop_session()
{:error, :max_budget_reached} -> stop_session()
end
Summary
Functions
Creates a config from a keyword list.
Types
@type t() :: %Nous.Session.Config{ compact_after_turns: pos_integer(), max_budget_tokens: pos_integer(), max_turns: pos_integer() }