Skip to main content
Version: 0.0.5 (stable)

agrag.agents.tools.make_tools

make_tools(engine:'SearchEngine', ledger:'Ledger', *, filters:'SearchFilters | None' = None, include_candidates:bool = False) -> list[Any]

Build the agent's tool set over one SearchEngine and Ledger.

Parameters:

  • engine ('SearchEngine') – The SearchEngine every tool calls.
  • ledger ('Ledger') – The citation ledger for one run.
  • filters ('SearchFilters | None') – Caller-set retrieval scope applied to every tool's search, e.g. document or tenant constraints. The model never sees this scope and cannot widen it: a tool argument that falls outside it is refused rather than merged. None searches unscoped.
  • include_candidates (bool) – Add unreviewed candidate search. A scoped agent never receives it because candidates cannot be scoped.

Returns:

  • list[Any] – A list of LangChain tool instances: search_source_text,
  • list[Any] – look_up_entity, explore_related, answer_from_graph_structure,
  • list[Any] – answer_thematic_question, list_relationship_types,
  • list[Any] – find_related_entities, describe_entity, traverse_from_entity,
  • list[Any] – and compute_over_evidence. query_graph_directly and
  • list[Any] – search_unreviewed_candidates join only when filters is None or empty;
  • list[Any] – the candidate tool also requires include_candidates=True. The Cypher
  • list[Any] – tool runs a generated
  • list[Any] – read-only Cypher query, which cannot be confined to a caller
  • list[Any] – scope, so a scoped agent never receives it.