Skip to content

Tools API

Generated from the typed public surface.

tesserix_adk.tools.AgentToolView

Stability: alpha

The fixed set of tools one agent may call, resolved once and never widened.

class AgentToolView(object) {declarations(self) -> 'tuple[ToolDeclaration, ...]'; invoke(self, name: 'str', arguments: 'Any') -> 'Any'; resolve(self, name: 'str') -> 'Tool[Any, Any]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ArgumentPolicy

Stability: alpha

How strictly a tool's arguments are read.

class ArgumentPolicy(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ArgumentValidator

Stability: alpha · Kind: Protocol

What a Tool needs in order to hold model arguments to its advertised schema.

class ArgumentValidator(Protocol) {arguments(self, arguments: 'object') -> 'Mapping[str, object]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Attribution

Stability: alpha

Who a downstream request is for, so its audit log can answer that question.

class Attribution(AdkModel) {headers(self) -> 'dict[str, str]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.CachingCredentials

Stability: alpha

Credentials reused while they are live, minted once per key when they are not.

class CachingCredentials(object) {invalidate_all(self) -> 'None'; issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ContentExpander

Stability: alpha · Kind: Protocol

Whatever resolves a content handle back to what it stands for.

class ContentExpander(Protocol) {expand(self, handle: 'str', *, tenant: 'str', run_id: 'str', budget_tokens: 'int | None' = None, user: 'str | None' = None) -> 'Expanded'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Credential

Stability: alpha

A minted credential, redacting itself everywhere but the call it authenticates.

class Credential(AdkModel) {expired(self, now: 'float', *, skew: 'float' = 30.0) -> 'bool'; headers(self) -> 'dict[str, str]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.CredentialBroker

Stability: alpha

What a tool asks, so a tool never states its own authority.

class CredentialBroker(object) {for_tool(self, *, identity: 'AgentIdentity', audience: 'str', needs: 'Iterable[str]', run_id: 'str', agent_version: 'str' = '1.0.0') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.CredentialProvider

Stability: alpha · Kind: Protocol

Where a CredentialRequest becomes a Credential.

class CredentialProvider(Protocol) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.CredentialRequest

Stability: alpha

What a tool needs to authenticate one call.

class CredentialRequest(AdkModel) {cache_key(self) -> 'tuple[str, str, str, tuple[str, ...]]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.DEFAULT_FETCH_CHARS

Stability: alpha

int([x]) -> integer int(x, base=10) -> integer

DEFAULT_FETCH_CHARS: int

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.DEFAULT_INTAKE_CHARS

Stability: alpha

int([x]) -> integer int(x, base=10) -> integer

DEFAULT_INTAKE_CHARS: int

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.DEFAULT_LIMITS

Stability: alpha

What generated code may spend before the sandbox takes the process away.

DEFAULT_LIMITS: SandboxLimits

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.DEFAULT_TTL_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

DEFAULT_TTL_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.EXPIRY_SKEW_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

EXPIRY_SKEW_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ExchangedCredentials

Stability: alpha

Credentials minted by an exchange, which is the path this whole module is for.

class ExchangedCredentials(object) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Expanded

Stability: alpha · Kind: Protocol

The part of an expansion this tool returns: the content itself.

class Expanded(Protocol)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.LENIENT

Stability: alpha

How strictly a tool's arguments are read.

LENIENT: ArgumentPolicy

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.MAX_TTL_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

MAX_TTL_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.OcrBackend

Stability: alpha · Kind: Protocol

Turns a document on disk into pages. PaddleOCR on the CPU, or anything shaped so.

class OcrBackend(Protocol) {pages(self, path: 'Path') -> 'AsyncIterator[OcrPage]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.OcrPage

Stability: alpha

One page, read.

class OcrPage(AdkModel)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Region

Stability: alpha

One laid-out block of text on a page.

class Region(AdkModel) {reference(self, page: 'int') -> 'str'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.RegionKind

Stability: alpha

What a region is on the page, as the layout pass saw it.

class RegionKind(StrEnum)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.STRICT

Stability: alpha

How strictly a tool's arguments are read.

STRICT: ArgumentPolicy

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SUPPORTED_AUDIO

Stability: alpha

Build an immutable unordered collection of unique elements.

SUPPORTED_AUDIO: frozenset

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SUPPORTED_DOCUMENTS

Stability: alpha

Build an immutable unordered collection of unique elements.

SUPPORTED_DOCUMENTS: frozenset

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Sandbox

Stability: alpha · Kind: Protocol

Somewhere untrusted code runs and the host does not notice.

class Sandbox(Protocol) {run(self, code: 'str', *, limits: 'SandboxLimits | None' = None, files: 'Mapping[str, str] | None' = None) -> 'SandboxResult'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SandboxArtifact

Stability: alpha

A file the generated code wrote, carried back out of the workspace.

class SandboxArtifact(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SandboxLimits

Stability: alpha

What generated code may spend before the sandbox takes the process away.

class SandboxLimits(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SandboxResult

Stability: alpha

What running the code produced. A non-zero exit is a result, not an error.

class SandboxResult(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Segment

Stability: alpha

One span of a recording, transcribed.

class Segment(AdkModel) {reference(self) -> 'str'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.StaticCredentials

Stability: alpha

The documented exception: a third party that only accepts a long-lived key.

class StaticCredentials(object) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.SubprocessSandbox

Stability: alpha

A sandbox that is a fresh interpreter in a temporary directory with nothing in it.

class SubprocessSandbox(object) {run(self, code: 'str', *, limits: 'SandboxLimits | None' = None, files: 'Mapping[str, str] | None' = None) -> 'SandboxResult'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.TokenExchange

Stability: alpha · Kind: Protocol

A token endpoint, as the one call the kit needs of it.

class TokenExchange(Protocol) {exchange(self, request: 'CredentialRequest') -> 'tuple[str, float]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.Tool

Stability: alpha

A callable the model can be told about, with the schema derived from its signature.

class Tool(Generic) {invoke(self, arguments: 'Mapping[str, Any] | str | bytes', context: 'ToolContext | None' = None, *, workers: 'WorkerPool | None' = None) -> 'R'; release(self) -> 'None'; requires_approval(self, arguments: 'Mapping[str, Any] | str | bytes') -> 'bool'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolArgumentValidator

Stability: alpha

Turns whatever a provider sent into the tool's own argument types, or refuses it.

class ToolArgumentValidator(object) {arguments(self, arguments: 'object') -> 'dict[str, Any]'; validate(self, arguments: 'object') -> 'Any'}

Typed errors: ToolDefinitionError

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolCallSpan

Stability: alpha

One invocation, as it is recorded. Never the arguments and never the result.

class ToolCallSpan(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolContext

Stability: alpha

The run a tool call belongs to, handed to the tool and hidden from the model.

class ToolContext(object) {raise_if_cancelled(self) -> 'None'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolError

Stability: alpha

Base of the tool taxonomy: something the run loop can branch on.

class ToolError(AdkError)

Typed errors: ValueError

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolErrorMap

Stability: alpha

Translates the exceptions a tool's libraries raise into the taxonomy.

class ToolErrorMap(object) {classify(self, failure: 'BaseException', *, tool: 'str') -> 'ToolError'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolErrorRule

Stability: alpha

What one library exception means, in the taxonomy's terms.

class ToolErrorRule(object) {raised_by(self, tool: 'str', detail: 'str') -> 'ToolError'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolFailure

Stability: alpha

The tool tried and could not finish.

class ToolFailure(ToolError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolRefusal

Stability: alpha

The tool worked and declined. An answer, not a fault.

class ToolRefusal(ToolError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — validated arguments before dispatch.

tesserix_adk.tools.ToolRegistry

Stability: alpha

The tools a process holds, the ceilings on them, and the views agents call through.

class ToolRegistry(object) {declarations(self) -> 'tuple[ToolDeclaration, ...]'; invoke(self, name: 'str', arguments: 'Any') -> 'Any'; observe(self, observer: 'Callable[[ToolCallSpan], None]') -> 'None'; register(self, tool: 'Tool[Any, Any]', *, origin: 'str' = '') -> 'None'; resolve(self, name: 'str') -> 'Tool[Any, Any]'; timeout_for(self, name: 'str') -> 'float | None'; view(self, *, allow: 'Sequence[str]', agent: 'str' = '') -> 'AgentToolView'}

Typed errors: None declared.

Runnable recipe: examples/tool_allowlist.py — tools are unavailable until explicitly allowed.

tesserix_adk.tools.TranscriptionBackend

Stability: alpha · Kind: Protocol

Turns a recording on disk into segments. whisper.cpp on the CPU, or its shape.

class TranscriptionBackend(Protocol) {segments(self, path: 'Path') -> 'AsyncIterator[Segment]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.claim_check.DEFAULT_FETCH_CHARS

Stability: alpha

int([x]) -> integer int(x, base=10) -> integer

DEFAULT_FETCH_CHARS: int

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.claim_check.claim_check_tool

Stability: alpha

Build the tool that reads content a claim check held back.

def claim_check_tool(store: 'ClaimCheckStore', *, name: 'str' = 'fetch_result', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.claim_check_tool

Stability: alpha

Build the tool that reads content a claim check held back.

def claim_check_tool(store: 'ClaimCheckStore', *, name: 'str' = 'fetch_result', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.code_intelligence.code_intelligence_tools

Stability: alpha

Build the six read-only tools for one workspace-bound backend.

def code_intelligence_tools(backend: 'CodeContextBackend') -> 'tuple[Tool[..., str], ...]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.code_intelligence_tools

Stability: alpha

Build the six read-only tools for one workspace-bound backend.

def code_intelligence_tools(backend: 'CodeContextBackend') -> 'tuple[Tool[..., str], ...]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.context.ToolContext

Stability: alpha

The run a tool call belongs to, handed to the tool and hidden from the model.

class ToolContext(object) {raise_if_cancelled(self) -> 'None'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.Attribution

Stability: alpha

Who a downstream request is for, so its audit log can answer that question.

class Attribution(AdkModel) {headers(self) -> 'dict[str, str]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.CachingCredentials

Stability: alpha

Credentials reused while they are live, minted once per key when they are not.

class CachingCredentials(object) {invalidate_all(self) -> 'None'; issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.Credential

Stability: alpha

A minted credential, redacting itself everywhere but the call it authenticates.

class Credential(AdkModel) {expired(self, now: 'float', *, skew: 'float' = 30.0) -> 'bool'; headers(self) -> 'dict[str, str]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.CredentialBroker

Stability: alpha

What a tool asks, so a tool never states its own authority.

class CredentialBroker(object) {for_tool(self, *, identity: 'AgentIdentity', audience: 'str', needs: 'Iterable[str]', run_id: 'str', agent_version: 'str' = '1.0.0') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.CredentialProvider

Stability: alpha · Kind: Protocol

Where a CredentialRequest becomes a Credential.

class CredentialProvider(Protocol) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.CredentialRequest

Stability: alpha

What a tool needs to authenticate one call.

class CredentialRequest(AdkModel) {cache_key(self) -> 'tuple[str, str, str, tuple[str, ...]]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.DEFAULT_TTL_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

DEFAULT_TTL_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.EXPIRY_SKEW_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

EXPIRY_SKEW_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.ExchangedCredentials

Stability: alpha

Credentials minted by an exchange, which is the path this whole module is for.

class ExchangedCredentials(object) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.MAX_TTL_SECONDS

Stability: alpha

Convert a string or number to a floating-point number, if possible.

MAX_TTL_SECONDS: float

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.StaticCredentials

Stability: alpha

The documented exception: a third party that only accepts a long-lived key.

class StaticCredentials(object) {issue(self, request: 'CredentialRequest') -> 'Credential'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.credentials.TokenExchange

Stability: alpha · Kind: Protocol

A token endpoint, as the one call the kit needs of it.

class TokenExchange(Protocol) {exchange(self, request: 'CredentialRequest') -> 'tuple[str, float]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.decorator.Tool

Stability: alpha

A callable the model can be told about, with the schema derived from its signature.

class Tool(Generic) {invoke(self, arguments: 'Mapping[str, Any] | str | bytes', context: 'ToolContext | None' = None, *, workers: 'WorkerPool | None' = None) -> 'R'; release(self) -> 'None'; requires_approval(self, arguments: 'Mapping[str, Any] | str | bytes') -> 'bool'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.decorator.tool

Stability: alpha

Turn a typed function into a tool, deriving its schema from the signature.

def tool(function: 'Callable[..., Any] | None' = None, /, *, name: 'str | None' = None, description: 'str | None' = None, dialect: 'SchemaDialect' = InlineRefs(max_depth=8, name='inline-refs', forbidden=frozenset({'$ref'})), arguments: 'ArgumentPolicy' = ArgumentPolicy(strict=True, max_bytes=65536), timeout: 'float | None' = None, parallel_safe: 'bool' = True, requires_approval: 'bool | ApprovalPredicate | ApprovalPolicy' = False, idempotency: 'Idempotency | str | IdempotencyPolicy | None' = None) -> 'Tool[Any, Any] | _Decorator'

Typed errors: ToolDefinitionError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolArgumentValidationError

Stability: alpha

Raised when a model's tool-call arguments do not match the tool's own schema.

class ToolArgumentValidationError(SchemaViolationError) {feedback(self) -> 'str'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolError

Stability: alpha

Base of the tool taxonomy: something the run loop can branch on.

class ToolError(AdkError)

Typed errors: ValueError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolErrorMap

Stability: alpha

Translates the exceptions a tool's libraries raise into the taxonomy.

class ToolErrorMap(object) {classify(self, failure: 'BaseException', *, tool: 'str') -> 'ToolError'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolErrorRule

Stability: alpha

What one library exception means, in the taxonomy's terms.

class ToolErrorRule(object) {raised_by(self, tool: 'str', detail: 'str') -> 'ToolError'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolFailure

Stability: alpha

The tool tried and could not finish.

class ToolFailure(ToolError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolNotFoundError

Stability: alpha

Raised when nothing is registered under the name that was asked for.

class ToolNotFoundError(AdkError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolNotPermittedError

Stability: alpha

Raised when a tool exists but this agent's allowlist does not name it.

class ToolNotPermittedError(AdkError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolRefusal

Stability: alpha

The tool worked and declined. An answer, not a fault.

class ToolRefusal(ToolError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolResultError

Stability: alpha

Raised when what a tool returned may not cross into the run as it stands.

class ToolResultError(AdkError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.ToolTimedOutError

Stability: alpha

Raised when one tool call outran the ceiling declared for that tool.

class ToolTimedOutError(AdkError)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.permanent

Stability: alpha

A failure no retry will fix.

def permanent(code: 'str', *, message: 'str' = '') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.refusal

Stability: alpha

The tool declining, with what the model may be told about it.

def refusal(code: 'str', message: 'str') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.errors.transient

Stability: alpha

A failure worth another attempt, because nothing landed.

def transient(code: 'str', *, retry_after: 'float | None' = None, message: 'str' = '') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.expand_content_tool

Stability: alpha

Build the tool that reads back what compression left out.

def expand_content_tool(expander: 'ContentExpander', *, name: 'str' = 'expand_content', budget_tokens: 'int | None' = None) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.expansion.ContentExpander

Stability: alpha · Kind: Protocol

Whatever resolves a content handle back to what it stands for.

class ContentExpander(Protocol) {expand(self, handle: 'str', *, tenant: 'str', run_id: 'str', budget_tokens: 'int | None' = None, user: 'str | None' = None) -> 'Expanded'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.expansion.Expanded

Stability: alpha · Kind: Protocol

The part of an expansion this tool returns: the content itself.

class Expanded(Protocol)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.expansion.expand_content_tool

Stability: alpha

Build the tool that reads back what compression left out.

def expand_content_tool(expander: 'ContentExpander', *, name: 'str' = 'expand_content', budget_tokens: 'int | None' = None) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.DEFAULT_INTAKE_CHARS

Stability: alpha

int([x]) -> integer int(x, base=10) -> integer

DEFAULT_INTAKE_CHARS: int

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.OcrBackend

Stability: alpha · Kind: Protocol

Turns a document on disk into pages. PaddleOCR on the CPU, or anything shaped so.

class OcrBackend(Protocol) {pages(self, path: 'Path') -> 'AsyncIterator[OcrPage]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.OcrPage

Stability: alpha

One page, read.

class OcrPage(AdkModel)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.Region

Stability: alpha

One laid-out block of text on a page.

class Region(AdkModel) {reference(self, page: 'int') -> 'str'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.RegionKind

Stability: alpha

What a region is on the page, as the layout pass saw it.

class RegionKind(StrEnum)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.SUPPORTED_AUDIO

Stability: alpha

Build an immutable unordered collection of unique elements.

SUPPORTED_AUDIO: frozenset

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.SUPPORTED_DOCUMENTS

Stability: alpha

Build an immutable unordered collection of unique elements.

SUPPORTED_DOCUMENTS: frozenset

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.Segment

Stability: alpha

One span of a recording, transcribed.

class Segment(AdkModel) {reference(self) -> 'str'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.TranscriptionBackend

Stability: alpha · Kind: Protocol

Turns a recording on disk into segments. whisper.cpp on the CPU, or its shape.

class TranscriptionBackend(Protocol) {segments(self, path: 'Path') -> 'AsyncIterator[Segment]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.ocr_document

Stability: alpha

Read path page by page.

def ocr_document(path: 'Path', *, backend: 'OcrBackend') -> 'AsyncIterator[OcrPage]'

Typed errors: MediaIntakeError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.ocr_tool

Stability: alpha

Build the tool that lets an agent read a scanned document.

def ocr_tool(backend: 'OcrBackend', *, root: 'Path', name: 'str' = 'read_document', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.transcribe_audio

Stability: alpha

Transcribe path segment by segment.

def transcribe_audio(path: 'Path', *, backend: 'TranscriptionBackend') -> 'AsyncIterator[Segment]'

Typed errors: MediaIntakeError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.intake.transcribe_tool

Stability: alpha

Build the tool that lets an agent read a recording.

def transcribe_tool(backend: 'TranscriptionBackend', *, root: 'Path', name: 'str' = 'transcribe_recording', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ocr_document

Stability: alpha

Read path page by page.

def ocr_document(path: 'Path', *, backend: 'OcrBackend') -> 'AsyncIterator[OcrPage]'

Typed errors: MediaIntakeError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.ocr_tool

Stability: alpha

Build the tool that lets an agent read a scanned document.

def ocr_tool(backend: 'OcrBackend', *, root: 'Path', name: 'str' = 'read_document', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.permanent

Stability: alpha

A failure no retry will fix.

def permanent(code: 'str', *, message: 'str' = '') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.refusal

Stability: alpha

The tool declining, with what the model may be told about it.

def refusal(code: 'str', message: 'str') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.registry.AgentToolView

Stability: alpha

The fixed set of tools one agent may call, resolved once and never widened.

class AgentToolView(object) {declarations(self) -> 'tuple[ToolDeclaration, ...]'; invoke(self, name: 'str', arguments: 'Any') -> 'Any'; resolve(self, name: 'str') -> 'Tool[Any, Any]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.registry.ToolCallSpan

Stability: alpha

One invocation, as it is recorded. Never the arguments and never the result.

class ToolCallSpan(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.registry.ToolRegistry

Stability: alpha

The tools a process holds, the ceilings on them, and the views agents call through.

class ToolRegistry(object) {declarations(self) -> 'tuple[ToolDeclaration, ...]'; invoke(self, name: 'str', arguments: 'Any') -> 'Any'; observe(self, observer: 'Callable[[ToolCallSpan], None]') -> 'None'; register(self, tool: 'Tool[Any, Any]', *, origin: 'str' = '') -> 'None'; resolve(self, name: 'str') -> 'Tool[Any, Any]'; timeout_for(self, name: 'str') -> 'float | None'; view(self, *, allow: 'Sequence[str]', agent: 'str' = '') -> 'AgentToolView'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.DEFAULT_LIMITS

Stability: alpha

What generated code may spend before the sandbox takes the process away.

DEFAULT_LIMITS: SandboxLimits

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.Sandbox

Stability: alpha · Kind: Protocol

Somewhere untrusted code runs and the host does not notice.

class Sandbox(Protocol) {run(self, code: 'str', *, limits: 'SandboxLimits | None' = None, files: 'Mapping[str, str] | None' = None) -> 'SandboxResult'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.SandboxArtifact

Stability: alpha

A file the generated code wrote, carried back out of the workspace.

class SandboxArtifact(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.SandboxLimits

Stability: alpha

What generated code may spend before the sandbox takes the process away.

class SandboxLimits(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.SandboxResult

Stability: alpha

What running the code produced. A non-zero exit is a result, not an error.

class SandboxResult(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.SubprocessSandbox

Stability: alpha

A sandbox that is a fresh interpreter in a temporary directory with nothing in it.

class SubprocessSandbox(object) {run(self, code: 'str', *, limits: 'SandboxLimits | None' = None, files: 'Mapping[str, str] | None' = None) -> 'SandboxResult'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox.sandbox_tool

Stability: alpha

Build the tool that lets an agent run code in sandbox.

def sandbox_tool(sandbox: 'Sandbox', *, name: 'str' = 'run_python', limits: 'SandboxLimits | None' = None) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.sandbox_tool

Stability: alpha

Build the tool that lets an agent run code in sandbox.

def sandbox_tool(sandbox: 'Sandbox', *, name: 'str' = 'run_python', limits: 'SandboxLimits | None' = None) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.tool

Stability: alpha

Turn a typed function into a tool, deriving its schema from the signature.

def tool(function: 'Callable[..., Any] | None' = None, /, *, name: 'str | None' = None, description: 'str | None' = None, dialect: 'SchemaDialect' = InlineRefs(max_depth=8, name='inline-refs', forbidden=frozenset({'$ref'})), arguments: 'ArgumentPolicy' = ArgumentPolicy(strict=True, max_bytes=65536), timeout: 'float | None' = None, parallel_safe: 'bool' = True, requires_approval: 'bool | ApprovalPredicate | ApprovalPolicy' = False, idempotency: 'Idempotency | str | IdempotencyPolicy | None' = None) -> 'Tool[Any, Any] | _Decorator'

Typed errors: ToolDefinitionError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.transcribe_audio

Stability: alpha

Transcribe path segment by segment.

def transcribe_audio(path: 'Path', *, backend: 'TranscriptionBackend') -> 'AsyncIterator[Segment]'

Typed errors: MediaIntakeError

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.transcribe_tool

Stability: alpha

Build the tool that lets an agent read a recording.

def transcribe_tool(backend: 'TranscriptionBackend', *, root: 'Path', name: 'str' = 'transcribe_recording', max_chars: 'int' = 4096) -> 'Tool[..., str]'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.transient

Stability: alpha

A failure worth another attempt, because nothing landed.

def transient(code: 'str', *, retry_after: 'float | None' = None, message: 'str' = '') -> 'ToolErrorRule'

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.validation.ArgumentPolicy

Stability: alpha

How strictly a tool's arguments are read.

class ArgumentPolicy(object)

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.validation.ArgumentValidator

Stability: alpha · Kind: Protocol

What a Tool needs in order to hold model arguments to its advertised schema.

class ArgumentValidator(Protocol) {arguments(self, arguments: 'object') -> 'Mapping[str, object]'}

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.validation.LENIENT

Stability: alpha

How strictly a tool's arguments are read.

LENIENT: ArgumentPolicy

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.validation.STRICT

Stability: alpha

How strictly a tool's arguments are read.

STRICT: ArgumentPolicy

Typed errors: None declared.

Runnable recipe: examples/tools.py — tools validate before side effects.

tesserix_adk.tools.validation.ToolArgumentValidator

Stability: alpha

Turns whatever a provider sent into the tool's own argument types, or refuses it.

class ToolArgumentValidator(object) {arguments(self, arguments: 'object') -> 'dict[str, Any]'; validate(self, arguments: 'object') -> 'Any'}

Typed errors: ToolDefinitionError

Runnable recipe: examples/tools.py — tools validate before side effects.