Interface NaruTool


public interface NaruTool
A tool that can be called by the agent's reasoning model.

Implementations must be stateless (or thread-safe) — the registry reuses the same instance across calls.

  • Method Details

    • name

      String name()
      Machine-readable name used in the tool schema (no spaces).
    • getDescription

      String getDescription(NaruSession session)
      Human-readable description sent to the model.
    • getDefinition

      NaruToolDefinition getDefinition(NaruSession session)
      Returns the full OpenAI-compatible JSON tool definition.
    • execute

      String execute(NaruToolCallContext context)
      Execute the tool and return a string result that will be sent back to the model as a "tool" role message.
      Parameters:
      context - per-run context (project dir, session, etc.)
      Returns:
      result string (text, JSON snippet, error message, …)
    • acceptMode

      default boolean acceptMode(NaruPromptMode mode)