Table of Contents

Namespace LMKit.Agents.Tools

Namespaces

LMKit.Agents.Tools.BuiltIn

Classes

LMFunctionAttribute

Marks a method as a tool that can be invoked by language models through an agent.

LMFunctionToolBinder

Discovers methods annotated with LMFunctionAttribute and binds them to ITool adapters.

This type is stateless: each call inspects the provided instance/type/assembly via reflection, validates parameter types, and returns newly constructed ITool instances.

ToolCall

Represents a tool invocation request emitted by a language model.

ToolCallPolicy

Configures per-turn policies that control how an agent may invoke registered tools.

ToolCallResult

Represents the outcome of executing a tool invocation.

ToolPermissionPolicy

Defines which tools an agent is permitted to use and under what conditions.

ToolRegistry

A collection that manages tools available to agents for invocation by language models.

Interfaces

ITool

Defines the contract for a tool that can be invoked by language models through an agent.

IToolMetadata

Provides standardized metadata about a tool's risk profile and operational characteristics.

Enums

ToolApprovalMode

Specifies the default approval requirement for a tool invocation.

ToolCallResultType

Classifies the outcome of a tool invocation.

ToolChoice

Specifies the mode of tool usage for an agent during a conversation turn.

ToolPermissionAction

The default action when no explicit allow/deny rule matches a tool in a ToolPermissionPolicy.

ToolPermissionResult

The result of evaluating a tool against a ToolPermissionPolicy.

ToolRiskLevel

Indicates the inherent risk level of a tool invocation.

ToolSideEffect

Classifies the external side effects a tool may produce when invoked.