Jido.Identity.Agent (Jido v2.0.0-rc.4)

View Source

Helper for managing Identity in agent state.

Identity is stored at the reserved key :__identity__ in agent.state.

Summary

Functions

Ensure agent has an identity (initialize if missing)

Get identity from agent state

Check if agent has an identity

Returns the reserved key for identity storage

Put identity into agent state

Return a public snapshot of the agent's identity

Update identity using a function

Functions

ensure(agent, opts \\ [])

@spec ensure(
  Jido.Agent.t(),
  keyword()
) :: Jido.Agent.t()

Ensure agent has an identity (initialize if missing)

get(agent, default \\ nil)

@spec get(Jido.Agent.t(), Jido.Identity.t() | nil) :: Jido.Identity.t() | nil

Get identity from agent state

has_identity?(agent)

@spec has_identity?(Jido.Agent.t()) :: boolean()

Check if agent has an identity

key()

@spec key() :: atom()

Returns the reserved key for identity storage

put(agent, identity)

Put identity into agent state

snapshot(agent)

@spec snapshot(Jido.Agent.t()) :: map() | nil

Return a public snapshot of the agent's identity

update(agent, fun)

@spec update(Jido.Agent.t(), (Jido.Identity.t() | nil -> Jido.Identity.t())) ::
  Jido.Agent.t()

Update identity using a function