ReAct tool the LLM can call to search long-term memory.
In Lens-aware mode, calls Gralkor.Client.search/1 with the operator id and
context[:search_targets], combining the operator's reserved "default"
destination with the selected additional local Lens destinations and/or the
reserved "global" pool. Otherwise it calls the configured client's legacy
recall/4, using a group id sanitised from context[:agent_id] and the
configured agent name.
session_id is read from context[:session_id] (planted by
JidoGralkor.Plugin on ai.react.query) and is required before either mode
searches.
Short-circuits with an explicit non-result message when:
session_idis absent or blank (first query of a fresh agent, before the ReAct strategy committed a thread), orqueryis blank — defensive against forced-tool-call paths (tool_choice: memory_search) where the LLM is required to invoke the tool but has nothing meaningful to search for.
Lens results are joined with newlines; legacy recall returns its memory block unchanged. Errors propagate.
Summary
Functions
Returns the Action metadata. Alias for to_json/0.
Returns the category of the Action.
Returns the description of the Action.
Returns the name of the Action.
Lifecycle hook called after Action execution.
Lifecycle hook called after output validation.
Lifecycle hook called after parameter validation.
Lifecycle hook called before output validation.
Lifecycle hook called before parameter validation.
Lifecycle hook called when an error occurs.
Returns the output schema of the Action.
Executes the Action with the given parameters and context.
Returns the input schema of the Action.
Returns the tags associated with the Action.
Returns the Action metadata as a JSON-serializable map.
Converts the Action to an LLM-compatible tool format.
Validates the output result for the Action.
Validates the input parameters for the Action.
Returns the version of the Action.
Functions
Returns the Action metadata. Alias for to_json/0.
Returns the category of the Action.
Returns the description of the Action.
Returns the name of the Action.
Lifecycle hook called after Action execution.
Lifecycle hook called after output validation.
Lifecycle hook called after parameter validation.
Lifecycle hook called before output validation.
Lifecycle hook called before parameter validation.
Lifecycle hook called when an error occurs.
Returns the output schema of the Action.
Executes the Action with the given parameters and context.
The run/2 function must be implemented in the module using Jido.Action.
Returns the input schema of the Action.
Returns the tags associated with the Action.
Returns the Action metadata as a JSON-serializable map.
Converts the Action to an LLM-compatible tool format.
Validates the output result for the Action.
Examples
iex> defmodule ExampleAction do
...> use Jido.Action,
...> name: "example_action",
...> output_schema: [
...> result: [type: :string, required: true]
...> ]
...> end
...> ExampleAction.validate_output(%{result: "test", extra: "ignored"})
{:ok, %{result: "test", extra: "ignored"}}
iex> ExampleAction.validate_output(%{extra: "ignored"})
{:error, "Invalid output for Action: Required key :result not found"}
Validates the input parameters for the Action.
Examples
iex> defmodule ExampleAction do
...> use Jido.Action,
...> name: "example_action",
...> schema: [
...> input: [type: :string, required: true]
...> ]
...> end
...> ExampleAction.validate_params(%{input: "test"})
{:ok, %{input: "test"}}
iex> ExampleAction.validate_params(%{})
{:error, "Invalid parameters for Action: Required key :input not found"}
Returns the version of the Action.