Packages
Provider-agnostic Elixir client for agent runtimes — one Session loop, any loop host: server-side (Anthropic Claude Managed Agents, AWS Bedrock AgentCore) or in-process (Local, over any OpenAI-compatible chat endpoint). Your tools run locally.
Current section
Files
Jump to
Current section
Files
lib/req_managed_agents/session_supervisor.ex
defmodule ReqManagedAgents.SessionSupervisor do
@moduledoc """
Optional `DynamicSupervisor` for running one `ReqManagedAgents.Session` per
child. Add it to your supervision tree, then `start_child/1` with the same opts
you'd pass to `ReqManagedAgents.Session.start_link/2`.
"""
use DynamicSupervisor
def start_link(init_arg \\ []),
do: DynamicSupervisor.start_link(__MODULE__, init_arg, name: __MODULE__)
@impl true
def init(_init_arg), do: DynamicSupervisor.init(strategy: :one_for_one)
@doc "Start a supervised live session (Claude Managed Agents)."
def start_child(opts),
do:
DynamicSupervisor.start_child(
__MODULE__,
{ReqManagedAgents.Session, {ReqManagedAgents.Providers.ClaudeManagedAgents, opts}}
)
end