Adapters API¶
Generated from the typed public surface.
tesserix_adk.adapters.A2ABearerSecurity¶
Stability: alpha
Bearer authentication metadata published in an official Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2ACardError¶
Stability: alpha
Raised when required official Agent Card metadata is incomplete or ambiguous.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2AExecutionError¶
Stability: alpha
Raised when an official A2A request cannot be mapped to a Tesserix run.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2AInterface¶
Stability: alpha
One official A2A endpoint, including custom gateway bindings.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2APrincipalResolver¶
Stability: alpha · Kind: Protocol
Authenticate and authorise one A2A request at the server trust boundary.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2ARegistry¶
Stability: alpha · Kind: Protocol
A vendor-neutral registry that resolves a name to an official Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2ARegistryError¶
Stability: alpha
Raised when a registry answer cannot safely identify the requested agent.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.A2ASkill¶
Stability: alpha
A public task capability in an official A2A Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ADAPTER_GUARANTEES¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.APPROVAL_REQUIRED¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.AUDIT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ApprovalInbox¶
Stability: alpha
Where a held tool call waits for a decision that arrives over the control channel.
class ApprovalInbox(object) {decide(self, decision: 'ApprovalDecision', *, tenant: 'str') -> 'None'; request(self, record: 'ApprovalRecord') -> 'ApprovalDecision'; wait_for(self, record_id: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.AuditTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.AuthorisingSession¶
Stability: alpha
An MCP session that attributes every call and redacts what comes back.
class AuthorisingSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.BACKENDS¶
Stability: alpha
Built-in immutable sequence.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.BreakerState¶
Stability: alpha
Whether this process is currently willing to reach for a server.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CEILING_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CHECKPOINT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CHUNK_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.COUNTERS¶
Stability: alpha
Built-in immutable sequence.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CallAuthority¶
Stability: alpha · Kind: Protocol
Whatever decides what one MCP request may present. TenantAuthority does.
class CallAuthority(Protocol) {headers_for(self, *, server: 'str', holding_for: 'float' = Ellipsis) -> 'Mapping[str, str]'; meta_for(self, *, server: 'str', holding_for: 'float' = Ellipsis) -> 'Mapping[str, str]'; secrets_for(self, *, server: 'str') -> 'tuple[str, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CallerContext¶
Stability: alpha
The run's own answer to who a call is for and where it sits in a trace.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CeilingTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CheckpointTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ChunkTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.CoalescingLedger¶
Stability: alpha
A ledger that buys allowance in blocks, so not every call is a round trip.
class CoalescingLedger(object) {flush(self) -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ConsoleApprovals¶
Stability: alpha
Asks whoever is at the terminal, for a single-operator deployment or a local run.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_APPROVAL_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_AUDIT_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_AUDIT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_CEILING_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_CHECKPOINT_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_CHECKPOINT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_CHUNK_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_COLLECTION¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_DEDUPE_TTL_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_EVENT_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_GRANT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_HEARTBEAT_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_LEASE_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_MAX_ATTEMPTS¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_OUTBOX_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_PAYLOAD_LIMIT_BYTES¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_QUEUE_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_RETENTION_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_RETRY_MILLISECONDS¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_STATE_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_STREAM_REQUIREMENT¶
Stability: alpha
What the stream must already be, for publishing onto it to mean anything.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DEFAULT_TABLE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DISTANCE_OPERATORS¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DeadLetter¶
Stability: alpha · Kind: Protocol
Where a message that will never be handled goes, instead of round again.
class DeadLetter(Protocol) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = ()) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DeadLetterQuery¶
Stability: alpha
Which records to look at, or to move. Never more than one tenant's.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DeadLetterRecord¶
Stability: alpha
One event that will not be handled, and what is known about why.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DeadLetterStats¶
Stability: alpha
The backlog, as the two numbers worth alerting on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DeadLetterStore¶
Stability: alpha · Kind: Protocol
Where undeliverable events are kept, and how an operator reads them back.
class DeadLetterStore(Protocol) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = (), group: 'str' = '') -> 'None'; forget(self, event_ids: 'Sequence[str]') -> 'None'; list(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; stats(self, tenant: 'str') -> 'DeadLetterStats'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.Degraded¶
Stability: alpha
One capability an agent was assembled without, and why it is not there.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.DurableConsumer¶
Stability: alpha
Reads events back with explicit acks, and buries what will never be handled.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_AUDIT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_CEILING_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_CHECKPOINT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_CHUNK_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_GRANT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_OUTBOX_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXPECTED_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EXTRACTION_INSTRUCTION¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.EntityExtractor¶
Stability: alpha
Turns an episode into a subgraph, through the kit's own provider protocol.
class EntityExtractor(object) {extract(self, scope: 'MemoryScope', record: 'MemoryRecord', *, budget: 'BudgetPolicy') -> 'tuple[ExtractedSubgraph, ExtractionCharge]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ErasureCheck¶
Stability: alpha
Type alias.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ErasureSweep¶
Stability: alpha
What a tenant-scoped erasure found still standing afterwards.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportDescriptorDriftError¶
Stability: alpha
Raised when a consumer's pinned function descriptor no longer matches.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportErrorCode¶
Stability: alpha
Stable categories a foreign orchestrator may branch on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportErrorEnvelope¶
Stability: alpha
A non-secret failure shape shared by direct, MCP and framework callers.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportInvocation¶
Stability: alpha
Authenticated ingress context supplied beside model-controlled arguments.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportedA2AAgent¶
Stability: alpha
Official A2A card and executor produced by the existing A2A adapter.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportedAgentResult¶
Stability: alpha
Versioned success-or-error result serialised to foreign frameworks.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportedAgentTool¶
Stability: alpha
An OpenAI descriptor, typed callable and kit tool backed by one agent.
class ExportedAgentTool(Generic) {assert_descriptor(self, expected: 'str') -> 'None'; invoke(self, arguments: 'Mapping[str, object] | str | bytes', context: 'ExportInvocation | None') -> 'ExportedAgentResult[OutputT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExportedSession¶
Stability: alpha
One caller's session: the tools it was opened with, and the calls it makes.
class ExportedSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExtractedEdge¶
Stability: alpha
One relation, valid over an interval.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExtractedNode¶
Stability: alpha
One entity the extraction named.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExtractedSubgraph¶
Stability: alpha
What one episode became, committed as a unit or not at all.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExtractionCharge¶
Stability: alpha
What one extraction cost, attributed like any other model call.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ExtractionMeter¶
Stability: alpha
A per-tenant ceiling on extraction spend, checked before the call.
class ExtractionMeter(object) {charge(self, tenant: 'str', cost: 'Decimal') -> 'None'; check(self, tenant: 'str') -> 'None'; spent(self, tenant: 'str') -> 'Decimal'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ForeignAgentContext¶
Stability: alpha
Caller-owned context supplied beside, and never inside, foreign input.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ForeignAgentReply¶
Stability: alpha
A foreign answer with whatever metering its runtime can report.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ForeignTool¶
Stability: alpha
One toolset entry, pairing a foreign definition with its implementation.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GOOGLE_ADK_CONTEXT_KEY¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GRANT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GoogleAdkAgentInvoker¶
Stability: alpha · Kind: Protocol
Application-owned invocation of one Google agent under delegated context.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraftMcpBackend¶
Stability: alpha
A tenant-bound Graft MCP session.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraftSubprocessBackend¶
Stability: alpha
A local Graft CLI bound to one canonical checkout.
class GraftSubprocessBackend(object) {execute(self, request: 'CodeContextRequest') -> 'CodeContextResult'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GrantTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraphEngine¶
Stability: alpha · Kind: Protocol
The three things the adapter asks of a graph, and nothing else.
class GraphEngine(Protocol) {commit(self, subgraph: 'ExtractedSubgraph') -> 'None'; drop(self, path: 'tuple[str, str, str, str]') -> 'Mapping[str, int]'; edges(self, path: 'tuple[str, str, str, str]', *, as_of: 'float | None', limit: 'int') -> 'Sequence[ExtractedEdge]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraphMemoryStore¶
Stability: alpha
MemoryStore whose episodic and semantic halves are a temporal graph.
class GraphMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'Sequence[Derivation]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; enqueue(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'Sequence[MemoryHit]'; erase(self, scope: 'MemoryScope', *, kinds: 'tuple[MemoryKind, ...]' = (), dry_run: 'bool' = False) -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; flush(self) -> 'int'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'Sequence[MemoryRecord]'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; relations(self, scope: 'MemoryScope', *, as_of: 'float | None' = None, limit: 'int' = 10) -> 'Sequence[MemoryHit]'; retry_pending(self) -> 'int'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'Sequence[MemoryHit]'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; writing(self) -> 'AsyncIterator[None]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraphSettings¶
Stability: alpha
Where the graph is and what extracts into it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraphitiClient¶
Stability: alpha · Kind: Protocol
The part of graphiti's client the engine drives, named so nothing here is Any.
class GraphitiClient(Protocol) {add_episode(self, *, name: 'str', episode_body: 'str', source_description: 'str', group_id: 'str', reference_time: 'float | None') -> 'None'; remove_episode(self, group_id: 'str') -> 'None'; search(self, query: 'str', *, group_ids: 'Sequence[str]', num_results: 'int', reference_time: 'float | None') -> 'Sequence[object]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.GraphitiEngine¶
Stability: alpha
GraphEngine over graphiti-core, which owns the temporal model and the backend.
class GraphitiEngine(object) {commit(self, subgraph: 'ExtractedSubgraph') -> 'None'; drop(self, path: 'tuple[str, str, str, str]') -> 'Mapping[str, int]'; edges(self, path: 'tuple[str, str, str, str]', *, as_of: 'float | None', limit: 'int') -> 'Sequence[ExtractedEdge]'; group_id(self, path: 'tuple[str, str, str, str]') -> 'str'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.HttpPoster¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from an HTTP client.
class HttpPoster(Protocol) {post(self, url: 'str', *, content: 'bytes', headers: 'Mapping[str, str]') -> 'tuple[int, bytes]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.HttpTransport¶
Stability: alpha
One MCP server as an HTTP endpoint, reading a JSON or an SSE reply.
class HttpTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.IN_FLIGHT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.IdempotentConsumer¶
Stability: alpha
Runs a handler at most once per event, and stops retrying what never works.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.InMemoryDeadLetters¶
Stability: alpha
A store in this process. The reference implementation, and what tests and the CLI use.
class InMemoryDeadLetters(object) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = (), group: 'str' = '') -> 'None'; for_group(self, group: 'str') -> '_GroupBound'; forget(self, event_ids: 'Sequence[str]') -> 'None'; list(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; stats(self, tenant: 'str') -> 'DeadLetterStats'; undecodable(self) -> 'int'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.InMemoryLedger¶
Stability: alpha
A ledger in this process. The reference semantics, and enough for one replica.
class InMemoryLedger(object) {break_with(self, failure: 'BudgetUnavailableError') -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.IncomingCall¶
Stability: alpha
What a hosted MCP server reads off a call before it does any work.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.InspectableRedis¶
Stability: alpha · Kind: Protocol
The two calls these stores make: run a script, and say how the server is configured.
class InspectableRedis(Protocol) {config_get(self, pattern: 'str') -> 'Mapping[str, str]'; eval(self, script: 'str', numkeys: 'int', *args: 'str') -> 'Any'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.IsolationGuarantee¶
Stability: alpha
What isolation an adapter actually provides, and where it stops.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.Isolator¶
Stability: alpha
The adapter-side wrapper that scopes a read and checks what comes back.
class Isolator(Generic) {read(self, operation: 'Callable[[], Awaitable[Sequence[RecordT]]]') -> 'Sequence[RecordT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.JetStreamAudit¶
Stability: alpha
Publishes each decision on a per-tenant subject, for a stream that keeps it.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.JetStreamContext¶
Stability: alpha · Kind: Protocol
The two methods this adapter uses from a JetStream client.
class JetStreamContext(Protocol) {publish(self, subject: 'str', payload: 'bytes', *, headers: 'Mapping[str, str] | None' = None, timeout: 'float | None' = None) -> 'PublishAck'; stream_info(self, name: 'str') -> 'Any'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.JetStreamEventPublisher¶
Stability: alpha
Publishes envelopes onto JetStream, deduplicated by the event id.
class JetStreamEventPublisher(object) {flush(self) -> 'None'; publish(self, event: 'EventEnvelope') -> 'None'; publish_batch(self, events: 'tuple[EventEnvelope, ...]') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.JetStreamMessage¶
Stability: alpha · Kind: Protocol
One delivery, and the three things a consumer may do about it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.JetStreamPublisher¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from a JetStream client.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.MAX_NAME_LENGTH¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.MAX_REPLAY_BATCH¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpClient¶
Stability: alpha
One MCP server, adopted into the kit's own tool contract.
class McpClient(object) {aclose(self) -> 'None'; connect(self) -> 'McpServerInfo'; discover(self, *, known: 'Collection[str]' = ()) -> 'McpDiscovery'; refresh(self, *, known: 'Collection[str]' = ()) -> 'McpDiscovery'; tools(self) -> 'tuple[Tool[..., str], ...]'}
Typed errors: None declared.
Runnable recipe: examples/mcp_client.py — remote tool content enters through a trust boundary. Install tesserix-adk[mcp].
tesserix_adk.adapters.McpDiscovery¶
Stability: alpha
What one pass over a server's tool list produced.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpExportError¶
Stability: alpha
A request the published server would not serve, with nothing of the request in it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpExportReason¶
Stability: alpha
Why a published server refused a request before any tool body ran.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpFleet¶
Stability: alpha
Every MCP server an agent was assembled with, and every one it was assembled without.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpProtocolError¶
Stability: alpha
A server answered with something that is not the answer it promised.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpRejection¶
Stability: alpha
One advertised tool this process will not register, and the reason it will not.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpSchemaError¶
Stability: alpha
A tool whose input schema the kit cannot hold a call to, and why.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpServer¶
Stability: alpha
The kit tools one process publishes, and the sessions callers hold them through.
class McpServer(object) {connect(self, *, headers: 'Mapping[str, str] | None' = None, meta: 'Mapping[str, str] | None' = None, authenticated: 'str | None' = None, protocol_version: 'str' = '2025-06-18') -> 'ExportedSession'; reload(self, exports: 'Sequence[str]') -> 'None'}
Typed errors: McpExportError
Runnable recipe: examples/mcp_server.py — server calls derive identity at the boundary. Install tesserix-adk[mcp].
tesserix_adk.adapters.McpServerInfo¶
Stability: alpha
What a server said about itself when the session was initialised.
Typed errors: None declared.
Runnable recipe: examples/mcp_server.py — server calls derive identity at the boundary. Install tesserix-adk[mcp].
tesserix_adk.adapters.McpServerUnavailableError¶
Stability: alpha
A capability an MCP server was to provide is not available, and why it is not.
Typed errors: None declared.
Runnable recipe: examples/mcp_server.py — server calls derive identity at the boundary. Install tesserix-adk[mcp].
tesserix_adk.adapters.McpSession¶
Stability: alpha · Kind: Protocol
The vendor-neutral operations this client needs from a connected MCP server.
class McpSession(Protocol) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpStreamableHttpTransport¶
Stability: alpha
Open one bounded official-SDK MCP session for each gateway operation.
class McpStreamableHttpTransport(object) {call_tool(self, *, endpoint: 'str', tool: 'str', arguments: 'Mapping[str, JsonValue]', headers: 'Mapping[str, str]', meta: 'Mapping[str, str]', timeout_seconds: 'float', max_result_bytes: 'int') -> 'GatewayToolResult'; list_tools(self, *, endpoint: 'str', headers: 'Mapping[str, str]', meta: 'Mapping[str, str]', timeout_seconds: 'float', max_result_bytes: 'int', max_tools: 'int') -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpSurfaceDriftError¶
Stability: alpha
A server's tools are no longer what the pin says they were.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpToolConflictError¶
Stability: alpha
Two tools that would answer to one name, with both origins named.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpTransport¶
Stability: alpha · Kind: Protocol
The operations a session needs from whatever carries its messages.
class McpTransport(Protocol) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpTransportError¶
Stability: alpha
A server could not be reached, or answered with something that was not protocol.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.McpTransportReason¶
Stability: alpha
Why a transport failed, in the terms a caller can act on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.MemoryPage¶
Stability: alpha
One page of episodes and where the next one starts.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.MemoryStoreSettings¶
Stability: alpha
Where a store connects and how hard it tries, from the deployment's secret manager.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.MessagePublisher¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from a NATS client.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.NatsApprovals¶
Stability: alpha
Publishes the question on a per-tenant subject; the answer arrives out of band.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.OUTBOX_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.OutboxLag¶
Stability: alpha
How far behind the relay is, which is the only number worth alerting on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.OutboxRelay¶
Stability: alpha
Moves committed rows onto the transport, in order per run, without losing any.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.OutboxTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PROTOCOL_VERSION¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.Partition¶
Stability: alpha
The tenant's slice of a store, derived rather than passed.
class Partition(object) {key(self, namespace: 'str', *parts: 'str') -> 'str'; only(self, items: 'Sequence[ItemT]', *, tenant_of: 'Callable[[ItemT], str]', where: 'str') -> 'Sequence[ItemT]'; pattern(self, namespace: 'str') -> 'str'; predicate(self, *, column: 'str' = 'tenant', position: 'int' = 1) -> 'tuple[str, str]'; verify(self, found: 'str', *, where: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PartitionMechanism¶
Stability: alpha
How a store keeps one tenant's data away from another's.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PayloadElided¶
Stability: alpha
An event too large for the transport, referenced rather than cut in half.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PeerArguments¶
Stability: alpha
The peer's published input schema, made the contract for what a model may send.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PgvectorIndex¶
Stability: alpha
A SearchIndex over one chunk table, answering either branch or both.
class PgvectorIndex(object) {search(self, query: 'IndexQuery') -> 'Sequence[Hit]'; supports(self, branch: 'Branch') -> 'bool'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PgvectorMemoryStore¶
Stability: alpha
Semantic recall in pgvector, ranked by the database rather than by the process.
class PgvectorMemoryStore(object) {erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PgvectorSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PortableAgentManifest¶
Stability: alpha
One Registry Agent artifact ready for agentic validate/apply.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PortableExportError¶
Stability: alpha
A framework object cannot be exported without inventing mutable metadata.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PortableExportOptions¶
Stability: alpha
Shared keyword contract for third-party framework exporters.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PortableReference¶
Stability: alpha
An immutable Registry dependency reference.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PortableRuntime¶
Stability: alpha
An immutable container or authenticated remote Agent runtime.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresAuditSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresAuditSink¶
Stability: alpha
Decisions in one append-only table, read back by whoever is accountable for them.
class PostgresAuditSink(object) {append(self, event: 'AuditEvent') -> 'AuditEvent'; pseudonymise(self, *, tenant: 'str', subject: 'str') -> 'int'; records(self, *, tenant: 'str', since: 'float' = 0.0, until: 'float | None' = None, decision: 'AuditDecision | None' = None) -> 'tuple[AuditEvent, ...]'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresCeilingLedger¶
Stability: alpha
Headroom taken and settled across processes, on one row per action.
class PostgresCeilingLedger(object) {commit(self, idempotency_key: 'str') -> 'Hold | None'; committed(self, *, tenant: 'str', action_class: 'str', window_seconds: 'float') -> 'Decimal'; reap(self) -> 'int'; release(self, idempotency_key: 'str') -> 'None'; reserve(self, *, tenant: 'str', action_class: 'str', ceiling: 'Ceiling', amount: 'Decimal', idempotency_key: 'str') -> 'Hold'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresCeilingSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresCheckpointStore¶
Stability: alpha
The frontier as one row per run, upserted.
class PostgresCheckpointStore(object) {forget(self, run_id: 'str', *, tenant: 'str') -> 'None'; latest(self, run_id: 'str', *, tenant: 'str') -> 'Checkpoint | None'; put(self, checkpoint: 'Checkpoint') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresGrantSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresGrantStore¶
Stability: alpha
Grants in one table, read live and written once.
class PostgresGrantStore(object) {grants_for(self, *, tenant: 'str', action_class: 'str') -> 'Sequence[AutonomyGrant]'; issue(self, grant: 'AutonomyGrant') -> 'AutonomyGrant'; revoke(self, revocation: 'Revocation') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresIdempotencyStore¶
Stability: alpha
The record in PostgreSQL, with the claim and the read in one statement.
class PostgresIdempotencyStore(object) {abandon(self, key: 'str', *, tenant: 'str') -> 'None'; begin(self, key: 'str', *, tenant: 'str', ttl_seconds: 'float') -> 'Claim'; ensure_schema(self) -> 'None'; forget(self, *, tenant: 'str') -> 'int'; record(self, key: 'str', *, tenant: 'str', outcome: 'str', ttl_seconds: 'float') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresLeaseStore¶
Stability: alpha
The lease as one row per run, taken by an upsert that refuses a live holder.
class PostgresLeaseStore(object) {acquire(self, run_id: 'str', *, tenant: 'str', holder: 'str', ttl_seconds: 'float') -> 'RunLease'; held(self, run_id: 'str', *, tenant: 'str') -> 'RunLease | None'; release(self, lease: 'RunLease') -> 'None'; renew(self, lease: 'RunLease', *, ttl_seconds: 'float') -> 'RunLease'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresLedger¶
Stability: alpha
The window in PostgreSQL, with every operation a single statement.
class PostgresLedger(_Shared) {ensure_schema(self) -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresMemoryStore¶
Stability: alpha
Profiles and episodes in PostgreSQL, where nothing is overwritten.
class PostgresMemoryStore(object) {belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'tuple[Derivation, ...]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'tuple[MemoryRecord, ...]'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; page(self, scope: 'MemoryScope', query: 'MemoryQuery', *, cursor: 'str | None' = None) -> 'MemoryPage'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresOutbox¶
Stability: alpha
An EventPublisher that inserts rather than publishes.
class PostgresOutbox(object) {bound(self, session: 'SqlSession') -> 'PostgresOutbox'; publish(self, event: 'EventEnvelope') -> 'None'; publish_batch(self, events: 'tuple[EventEnvelope, ...]') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresOutboxSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresStateStore¶
Stability: alpha
Session and run state in PostgreSQL, with the version compare inside the write.
class PostgresStateStore(object) {bound(self, session: 'SqlSession') -> 'PostgresStateStore'; delete_run(self, key: 'StateKey') -> 'None'; delete_session(self, key: 'StateKey', *, cascade: 'bool' = False) -> 'None'; get_run(self, key: 'StateKey') -> 'RunRecord | None'; get_session(self, key: 'StateKey') -> 'SessionRecord | None'; list_runs(self, query: 'StateQuery') -> 'StatePage'; patch_run(self, key: 'StateKey', delta: 'StateDelta') -> 'RunRecord'; put_run(self, record: 'RunRecord') -> 'RunRecord'; put_session(self, record: 'SessionRecord') -> 'SessionRecord'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresStoreSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PostgresWorkQueue¶
Stability: alpha
A work queue in PostgreSQL, claimed with FOR UPDATE ... SKIP LOCKED.
class PostgresWorkQueue(object) {adopt(self, *, worker: 'str') -> 'tuple[WorkItem, ...]'; bound(self, session: 'SqlSession') -> 'PostgresWorkQueue'; claim(self, *, worker: 'str', queue: 'str' = 'default', lease_seconds: 'float | None' = None) -> 'WorkItem | None'; complete(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; dead_letters(self, *, tenant: 'str', limit: 'int' = 50) -> 'tuple[WorkItem, ...]'; enqueue(self, item: 'WorkItem') -> 'WorkItem'; fail(self, item_id: 'str', *, tenant: 'str', worker: 'str', error: 'str', retryable: 'bool' = True) -> 'WorkItem'; heartbeat(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; reap(self) -> 'tuple[WorkItem, ...]'; stats(self, *, queue: 'str' = 'default') -> 'QueueStats'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.PublishAck¶
Stability: alpha · Kind: Protocol
What the stream says it did with a message.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RecordingTransport¶
Stability: alpha
A transport that answers from a script and remembers what it was asked.
class RecordingTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisCacheStore¶
Stability: alpha
A CacheStore over Redis, one Lua script per operation.
class RedisCacheStore(object) {get(self, digest: 'str') -> 'CacheEntry | None'; purge(self, **by: 'str | None') -> 'int'; put(self, entry: 'CacheEntry') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisCheckpointStore¶
Stability: alpha
The frontier as one key per run, with no expiry on it.
class RedisCheckpointStore(object) {forget(self, run_id: 'str', *, tenant: 'str') -> 'None'; latest(self, run_id: 'str', *, tenant: 'str') -> 'Checkpoint | None'; put(self, checkpoint: 'Checkpoint') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisClient¶
Stability: alpha · Kind: Protocol
The one call the Redis ledger makes, and nothing else.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisIdempotencyStore¶
Stability: alpha
The record in Redis, with the claim and the read in one script.
class RedisIdempotencyStore(object) {abandon(self, key: 'str', *, tenant: 'str') -> 'None'; begin(self, key: 'str', *, tenant: 'str', ttl_seconds: 'float') -> 'Claim'; forget(self, *, tenant: 'str') -> 'int'; record(self, key: 'str', *, tenant: 'str', outcome: 'str', ttl_seconds: 'float') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisLeaseStore¶
Stability: alpha
The lease as a hash per run, with the fence incremented inside the acquisition.
class RedisLeaseStore(object) {acquire(self, run_id: 'str', *, tenant: 'str', holder: 'str', ttl_seconds: 'float') -> 'RunLease'; held(self, run_id: 'str', *, tenant: 'str') -> 'RunLease | None'; release(self, lease: 'RunLease') -> 'None'; renew(self, lease: 'RunLease', *, ttl_seconds: 'float') -> 'RunLease'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisLedger¶
Stability: alpha
The window in Redis, with every operation a single server-side script.
class RedisLedger(_Shared) {forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisMemoryStore¶
Stability: alpha
Working memory in Redis, where expiry is the server's job and not a sweeper's.
class RedisMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; recall(self, scope: 'MemoryScope', keys: 'Sequence[str]') -> 'tuple[MemoryRecord, ...]'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisStateStore¶
Stability: alpha
Session and run state in Redis, with the version compare inside the write.
class RedisStateStore(object) {delete_run(self, key: 'StateKey') -> 'None'; delete_session(self, key: 'StateKey', *, cascade: 'bool' = False) -> 'None'; get_run(self, key: 'StateKey') -> 'RunRecord | None'; get_session(self, key: 'StateKey') -> 'SessionRecord | None'; list_runs(self, query: 'StateQuery') -> 'StatePage'; patch_run(self, key: 'StateKey', delta: 'StateDelta') -> 'RunRecord'; preflight(self) -> 'None'; put_run(self, record: 'RunRecord') -> 'RunRecord'; put_session(self, record: 'SessionRecord') -> 'SessionRecord'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisStoreSettings¶
Stability: alpha
How to reach Redis, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RedisWorkQueue¶
Stability: alpha
A work queue in Redis, where the lease is a sorted set and the reaper is a scan.
class RedisWorkQueue(object) {adopt(self, *, worker: 'str') -> 'tuple[WorkItem, ...]'; claim(self, *, worker: 'str', queue: 'str' = 'default', lease_seconds: 'float | None' = None) -> 'WorkItem | None'; complete(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; dead_letters(self, *, tenant: 'str', limit: 'int' = 50) -> 'tuple[WorkItem, ...]'; enqueue(self, item: 'WorkItem') -> 'WorkItem'; fail(self, item_id: 'str', *, tenant: 'str', worker: 'str', error: 'str', retryable: 'bool' = True) -> 'WorkItem'; heartbeat(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; preflight(self) -> 'None'; reap(self) -> 'tuple[WorkItem, ...]'; stats(self, *, queue: 'str' = 'default') -> 'QueueStats'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ReplayHandler¶
Stability: alpha
Type alias.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ReplayPlan¶
Stability: alpha
What a replay would do, without having done any of it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ReplayReport¶
Stability: alpha
What a replay did.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.Replayer¶
Stability: alpha
Puts dead-lettered events back through the live consumer path, under guardrails.
class Replayer(object) {plan(self, query: 'DeadLetterQuery') -> 'ReplayPlan'; records(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; replay(self, query: 'DeadLetterQuery', *, operator: 'str', reason: 'str' = '') -> 'ReplayReport'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ResilientSession¶
Stability: alpha
One MCP session with its degradation policy applied, still an McpSession.
class ResilientSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RoutedMemoryStore¶
Stability: alpha
One MemoryStore over the three stores, routing by kind.
class RoutedMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'tuple[Derivation, ...]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; erase(self, scope: 'MemoryScope', *, kinds: 'tuple[MemoryKind, ...]' = (), dry_run: 'bool' = False) -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'tuple[MemoryRecord, ...]'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.RunBroker¶
Stability: alpha
One run, driven once, readable by however many transports attach to it.
class RunBroker(Generic) {authorise(self, run_id: 'str', *, tenant: 'str') -> 'None'; cancel(self, run_id: 'str', *, tenant: 'str') -> 'None'; register(self, stream: 'RunStream[OutputT]', *, tenant: 'str') -> 'str'; run(self, run_id: 'str', *, tenant: 'str') -> 'Run[OutputT]'; subscribe(self, run_id: 'str', *, tenant: 'str', after: 'int | None' = None) -> 'AsyncGenerator[ProgressEvent]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SSE_HEADERS¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ServerBreaker¶
Stability: alpha
One server's breaker: shut by consecutive faults, reopened by a probe.
class ServerBreaker(object) {allows(self) -> 'bool'; failed(self) -> 'None'; succeeded(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ServerHealth¶
Stability: alpha
What one server has just done, in the terms an alert is written in.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SqlExecutor¶
Stability: alpha · Kind: Protocol
The one call the PostgreSQL ledger makes.
class SqlExecutor(Protocol) {fetch(self, statement: 'str', *args: 'Any') -> 'Sequence[Sequence[Any]]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SqlSession¶
Stability: alpha · Kind: Protocol
The one call these stores make.
class SqlSession(Protocol) {fetch(self, statement: 'str', *args: 'Any') -> 'Sequence[Sequence[Any]]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SqlTransactor¶
Stability: alpha · Kind: Protocol
A session that can also open a transaction, which is where atomicity comes from.
class SqlTransactor(SqlSession, Protocol) {transaction(self) -> 'AbstractAsyncContextManager[SqlSession]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.StateTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.StdioTransport¶
Stability: alpha
One MCP server as a child process, framed as newline-delimited JSON-RPC.
class StdioTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.StreamGap¶
Stability: alpha
Events a reconnecting client will never receive, said out loud.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.StreamRequirement¶
Stability: alpha
What the stream must already be, for publishing onto it to mean anything.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SurfaceEntry¶
Stability: alpha
One tool as it was resolved.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.SurfacePin¶
Stability: alpha
A resolved surface written down, so a later one can be held to it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.TenantAuthority¶
Stability: alpha
Per-call authority for MCP servers, keyed by the tenant and subject it was minted for.
class TenantAuthority(object) {authorised(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'AuthorisedCall'; headers_for(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'dict[str, str]'; meta_for(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'dict[str, str]'; secrets_for(self, *, server: 'str') -> 'tuple[str, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ToolImportPolicy¶
Stability: alpha
Registry policy attached to every imported tool before it can be called.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ToolSurface¶
Stability: alpha
The tools one agent has, and where each of them came from.
class ToolSurface(object) {check(self, pin: 'SurfacePin') -> 'None'; names(self) -> 'tuple[str, ...]'; of_server(self, server: 'str') -> 'Self'; pin(self) -> 'SurfacePin'; report(self) -> 'str'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ToolTranslationError¶
Stability: alpha
A foreign definition that cannot be made safe enough to register.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.TransportAuthorizationError¶
Stability: alpha
Raised when a client asked about a run that is not its tenant's to ask about.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.TransportSession¶
Stability: alpha
An MCP session spoken over any transport, which is where the two shapes converge.
class TransportSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.UNDECODABLE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.UNKNOWN_TENANT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.WebSocketBridge¶
Stability: alpha
A run over a websocket: events out, control messages in.
class WebSocketBridge(Generic) {serve(self, connection: 'WebSocketLike', *, run_id: 'str', tenant: 'str', after: 'int | None' = None) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.WebSocketLike¶
Stability: alpha · Kind: Protocol
The three methods a websocket needs to have. Any ASGI framework's will do.
class WebSocketLike(Protocol) {close(self, code: 'int' = 1000) -> 'None'; receive_text(self) -> 'str'; send_text(self, data: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.WebhookApprovals¶
Stability: alpha
POSTs the question to a signed endpoint, and reads an answer only if one came back.
class WebhookApprovals(object) {deliver(self, record: 'ApprovalRecord') -> 'ApprovalDecision | None'}
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.WrappedAgentPolicy¶
Stability: alpha
Controls one foreign-agent boundary.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.WrappedSubagent¶
Stability: alpha
An addressable foreign agent accepted by :class:~runtime.Supervisor.
class WrappedSubagent(Generic) {run(self, user_input: 'str', *, tenant: 'str', budget: 'BudgetPolicy', user: 'str | None' = None, run_id: 'str | None' = None, cancellation: 'CancellationToken | None' = None, parent: 'RunContext | None' = None, scopes: 'Collection[str]' = (), trace: 'Mapping[str, str] | None' = None, tools: 'Collection[str] | None' = None) -> 'Run[OutputT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2ABearerSecurity¶
Stability: alpha
Bearer authentication metadata published in an official Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2ACardError¶
Stability: alpha
Raised when required official Agent Card metadata is incomplete or ambiguous.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2AExecutionError¶
Stability: alpha
Raised when an official A2A request cannot be mapped to a Tesserix run.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2AInterface¶
Stability: alpha
One official A2A endpoint, including custom gateway bindings.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2APrincipalResolver¶
Stability: alpha · Kind: Protocol
Authenticate and authorise one A2A request at the server trust boundary.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2ARegistry¶
Stability: alpha · Kind: Protocol
A vendor-neutral registry that resolves a name to an official Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2ARegistryError¶
Stability: alpha
Raised when a registry answer cannot safely identify the requested agent.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.A2ASkill¶
Stability: alpha
A public task capability in an official A2A Agent Card.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.a2a_agent_executor¶
Stability: alpha
Expose one reviewed Tesserix agent through the official A2A server contract.
def a2a_agent_executor(runner: 'AgentRunner', definition: 'AgentDefinition[OutputT]', *, resolve: 'A2APrincipalResolver', max_input_bytes: 'int' = 65536, max_output_bytes: 'int' = 1048576) -> 'AgentExecutor'
Typed errors: A2AExecutionError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.a2a_card_for¶
Stability: alpha
Build an official A2A 1.x Agent Card from a reviewed definition.
def a2a_card_for(definition: 'AgentDefinition[OutputT]', *, description: 'str', provider_url: 'str', interfaces: 'Iterable[A2AInterface]', skills: 'Iterable[A2ASkill]', documentation_url: 'str' = '', default_input_modes: 'Sequence[str]' = ('text/plain',), default_output_modes: 'Sequence[str]' = ('text/plain',), streaming: 'bool' = False, push_notifications: 'bool' = False, extended_agent_card: 'bool' = False, security: 'A2ABearerSecurity | None' = None) -> 'AgentCard'
Typed errors: A2ACardError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.a2a_client_factory¶
Stability: alpha
Create the official SDK factory with optional custom gateway transports.
def a2a_client_factory(*, protocol_bindings: 'Iterable[str]' = ('JSONRPC',), transports: 'Mapping[str, TransportProducer] | None' = None, streaming: 'bool' = True, polling: 'bool' = False, accepted_output_modes: 'Iterable[str]' = (), use_client_preference: 'bool' = False) -> 'ClientFactory'
Typed errors: MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a.a2a_client_from_registry¶
Stability: alpha
Resolve name, verify its identity, and create an official A2A client.
def a2a_client_from_registry(registry: 'A2ARegistry', name: 'str', *, factory: 'ClientFactory', interceptors: 'Sequence[ClientCallInterceptor]' = (), verify: 'Callable[[AgentCard], None] | None' = None) -> 'Client'
Typed errors: A2ARegistryError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a_agent_executor¶
Stability: alpha
Expose one reviewed Tesserix agent through the official A2A server contract.
def a2a_agent_executor(runner: 'AgentRunner', definition: 'AgentDefinition[OutputT]', *, resolve: 'A2APrincipalResolver', max_input_bytes: 'int' = 65536, max_output_bytes: 'int' = 1048576) -> 'AgentExecutor'
Typed errors: A2AExecutionError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a_card_for¶
Stability: alpha
Build an official A2A 1.x Agent Card from a reviewed definition.
def a2a_card_for(definition: 'AgentDefinition[OutputT]', *, description: 'str', provider_url: 'str', interfaces: 'Iterable[A2AInterface]', skills: 'Iterable[A2ASkill]', documentation_url: 'str' = '', default_input_modes: 'Sequence[str]' = ('text/plain',), default_output_modes: 'Sequence[str]' = ('text/plain',), streaming: 'bool' = False, push_notifications: 'bool' = False, extended_agent_card: 'bool' = False, security: 'A2ABearerSecurity | None' = None) -> 'AgentCard'
Typed errors: A2ACardError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a_client_factory¶
Stability: alpha
Create the official SDK factory with optional custom gateway transports.
def a2a_client_factory(*, protocol_bindings: 'Iterable[str]' = ('JSONRPC',), transports: 'Mapping[str, TransportProducer] | None' = None, streaming: 'bool' = True, polling: 'bool' = False, accepted_output_modes: 'Iterable[str]' = (), use_client_preference: 'bool' = False) -> 'ClientFactory'
Typed errors: MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.a2a_client_from_registry¶
Stability: alpha
Resolve name, verify its identity, and create an official A2A client.
def a2a_client_from_registry(registry: 'A2ARegistry', name: 'str', *, factory: 'ClientFactory', interceptors: 'Sequence[ClientCallInterceptor]' = (), verify: 'Callable[[AgentCard], None] | None' = None) -> 'Client'
Typed errors: A2ARegistryError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportDescriptorDriftError¶
Stability: alpha
Raised when a consumer's pinned function descriptor no longer matches.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportErrorCode¶
Stability: alpha
Stable categories a foreign orchestrator may branch on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportErrorEnvelope¶
Stability: alpha
A non-secret failure shape shared by direct, MCP and framework callers.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportInvocation¶
Stability: alpha
Authenticated ingress context supplied beside model-controlled arguments.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportedA2AAgent¶
Stability: alpha
Official A2A card and executor produced by the existing A2A adapter.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportedAgentResult¶
Stability: alpha
Versioned success-or-error result serialised to foreign frameworks.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.ExportedAgentTool¶
Stability: alpha
An OpenAI descriptor, typed callable and kit tool backed by one agent.
class ExportedAgentTool(Generic) {assert_descriptor(self, expected: 'str') -> 'None'; invoke(self, arguments: 'Mapping[str, object] | str | bytes', context: 'ExportInvocation | None') -> 'ExportedAgentResult[OutputT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.export_as_a2a¶
Stability: alpha
Return the official A2A card and authenticated executor for one definition.
def export_as_a2a(runner: 'AgentRunner', definition: 'AgentDefinition[OutputT]', *, resolve: 'A2APrincipalResolver', description: 'str', provider_url: 'str', interfaces: 'Iterable[A2AInterface]', skills: 'Iterable[A2ASkill]', documentation_url: 'str' = '', default_input_modes: 'Sequence[str]' = ('text/plain',), default_output_modes: 'Sequence[str]' = ('text/plain',), streaming: 'bool' = False, push_notifications: 'bool' = False, extended_agent_card: 'bool' = False, security: 'A2ABearerSecurity | None' = None, max_input_bytes: 'int' = 65536, max_output_bytes: 'int' = 1048576) -> 'ExportedA2AAgent'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.export_as_mcp_tool¶
Stability: alpha
Publish an agent through the existing authenticated MCP server helper.
def export_as_mcp_tool(runner: 'AgentRunner', agent: 'TypedAgent[InputT, OutputT] | TypedAgentDefinition[InputT, OutputT]', *, description: 'str', name: 'str | None' = None, timeout_seconds: 'float' = 30.0, per_tenant_calls: 'int' = 8, secrets: 'Sequence[str]' = ()) -> 'McpServer'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_exports.export_as_tool¶
Stability: alpha
Export one structured kit agent as descriptor, callable and reusable kit tool.
def export_as_tool(runner: 'AgentRunner', agent: 'TypedAgent[InputT, OutputT] | TypedAgentDefinition[InputT, OutputT]', *, description: 'str', name: 'str | None' = None, timeout_seconds: 'float' = 30.0) -> 'ExportedAgentTool[InputT, OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agent_gateway_tools¶
Stability: alpha
Adapt a pinned AgentGateway tool set into tools a ToolRegistry can adopt.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agentgateway.McpStreamableHttpTransport¶
Stability: alpha
Open one bounded official-SDK MCP session for each gateway operation.
class McpStreamableHttpTransport(object) {call_tool(self, *, endpoint: 'str', tool: 'str', arguments: 'Mapping[str, JsonValue]', headers: 'Mapping[str, str]', meta: 'Mapping[str, str]', timeout_seconds: 'float', max_result_bytes: 'int') -> 'GatewayToolResult'; list_tools(self, *, endpoint: 'str', headers: 'Mapping[str, str]', meta: 'Mapping[str, str]', timeout_seconds: 'float', max_result_bytes: 'int', max_tools: 'int') -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.agentgateway.agent_gateway_tools¶
Stability: alpha
Adapt a pinned AgentGateway tool set into tools a ToolRegistry can adopt.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.ConsoleApprovals¶
Stability: alpha
Asks whoever is at the terminal, for a single-operator deployment or a local run.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.DEFAULT_APPROVAL_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.HttpPoster¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from an HTTP client.
class HttpPoster(Protocol) {post(self, url: 'str', *, content: 'bytes', headers: 'Mapping[str, str]') -> 'tuple[int, bytes]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.MessagePublisher¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from a NATS client.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.NatsApprovals¶
Stability: alpha
Publishes the question on a per-tenant subject; the answer arrives out of band.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.approvals.WebhookApprovals¶
Stability: alpha
POSTs the question to a signed endpoint, and reads an answer only if one came back.
class WebhookApprovals(object) {deliver(self, record: 'ApprovalRecord') -> 'ApprovalDecision | None'}
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.arriving_call¶
Stability: alpha
Read who an arriving MCP call is for, or refuse it.
def arriving_call(*, headers: 'Mapping[str, str] | None' = None, meta: 'Mapping[str, str] | None' = None, authenticated: 'str | None' = None) -> 'IncomingCall'
Typed errors: McpAuthError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.assembled¶
Stability: alpha
Adopt every server's tools, tolerating the absence of the optional ones.
Typed errors: McpServerUnavailableError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.AUDIT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.AuditTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.DEFAULT_AUDIT_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.DEFAULT_AUDIT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.EXPECTED_AUDIT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.JetStreamAudit¶
Stability: alpha
Publishes each decision on a per-tenant subject, for a stream that keeps it.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.JetStreamPublisher¶
Stability: alpha · Kind: Protocol
The one method this adapter uses from a JetStream client.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.PostgresAuditSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.audit.PostgresAuditSink¶
Stability: alpha
Decisions in one append-only table, read back by whoever is accountable for them.
class PostgresAuditSink(object) {append(self, event: 'AuditEvent') -> 'AuditEvent'; pseudonymise(self, *, tenant: 'str', subject: 'str') -> 'int'; records(self, *, tenant: 'str', since: 'float' = 0.0, until: 'float | None' = None, decision: 'AuditDecision | None' = None) -> 'tuple[AuditEvent, ...]'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.cache.DEFAULT_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.cache.RedisCacheStore¶
Stability: alpha
A CacheStore over Redis, one Lua script per operation.
class RedisCacheStore(object) {get(self, digest: 'str') -> 'CacheEntry | None'; purge(self, **by: 'str | None') -> 'int'; put(self, entry: 'CacheEntry') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.CEILING_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.CeilingTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.DEFAULT_CEILING_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.EXPECTED_CEILING_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.PostgresCeilingLedger¶
Stability: alpha
Headroom taken and settled across processes, on one row per action.
class PostgresCeilingLedger(object) {commit(self, idempotency_key: 'str') -> 'Hold | None'; committed(self, *, tenant: 'str', action_class: 'str', window_seconds: 'float') -> 'Decimal'; reap(self) -> 'int'; release(self, idempotency_key: 'str') -> 'None'; reserve(self, *, tenant: 'str', action_class: 'str', ceiling: 'Ceiling', amount: 'Decimal', idempotency_key: 'str') -> 'Hold'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ceiling.PostgresCeilingSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.CHECKPOINT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.CheckpointTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.DEFAULT_CHECKPOINT_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.DEFAULT_CHECKPOINT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.EXPECTED_CHECKPOINT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.PostgresCheckpointStore¶
Stability: alpha
The frontier as one row per run, upserted.
class PostgresCheckpointStore(object) {forget(self, run_id: 'str', *, tenant: 'str') -> 'None'; latest(self, run_id: 'str', *, tenant: 'str') -> 'Checkpoint | None'; put(self, checkpoint: 'Checkpoint') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.PostgresLeaseStore¶
Stability: alpha
The lease as one row per run, taken by an upsert that refuses a live holder.
class PostgresLeaseStore(object) {acquire(self, run_id: 'str', *, tenant: 'str', holder: 'str', ttl_seconds: 'float') -> 'RunLease'; held(self, run_id: 'str', *, tenant: 'str') -> 'RunLease | None'; release(self, lease: 'RunLease') -> 'None'; renew(self, lease: 'RunLease', *, ttl_seconds: 'float') -> 'RunLease'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.RedisCheckpointStore¶
Stability: alpha
The frontier as one key per run, with no expiry on it.
class RedisCheckpointStore(object) {forget(self, run_id: 'str', *, tenant: 'str') -> 'None'; latest(self, run_id: 'str', *, tenant: 'str') -> 'Checkpoint | None'; put(self, checkpoint: 'Checkpoint') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.checkpoints.RedisLeaseStore¶
Stability: alpha
The lease as a hash per run, with the fence incremented inside the acquisition.
class RedisLeaseStore(object) {acquire(self, run_id: 'str', *, tenant: 'str', holder: 'str', ttl_seconds: 'float') -> 'RunLease'; held(self, run_id: 'str', *, tenant: 'str') -> 'RunLease | None'; release(self, lease: 'RunLease') -> 'None'; renew(self, lease: 'RunLease', *, ttl_seconds: 'float') -> 'RunLease'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.container_runtime¶
Stability: alpha
Declare a digest-pinned OCI runtime.
def container_runtime(*, image: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int' = 8080, path: 'str' = '/a2a/v1', health_path: 'str' = '/healthz') -> 'PortableRuntime'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.DeadLetterQuery¶
Stability: alpha
Which records to look at, or to move. Never more than one tenant's.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.DeadLetterRecord¶
Stability: alpha
One event that will not be handled, and what is known about why.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.DeadLetterStats¶
Stability: alpha
The backlog, as the two numbers worth alerting on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.DeadLetterStore¶
Stability: alpha · Kind: Protocol
Where undeliverable events are kept, and how an operator reads them back.
class DeadLetterStore(Protocol) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = (), group: 'str' = '') -> 'None'; forget(self, event_ids: 'Sequence[str]') -> 'None'; list(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; stats(self, tenant: 'str') -> 'DeadLetterStats'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.ErasureCheck¶
Stability: alpha
Type alias.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.InMemoryDeadLetters¶
Stability: alpha
A store in this process. The reference implementation, and what tests and the CLI use.
class InMemoryDeadLetters(object) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = (), group: 'str' = '') -> 'None'; for_group(self, group: 'str') -> '_GroupBound'; forget(self, event_ids: 'Sequence[str]') -> 'None'; list(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; stats(self, tenant: 'str') -> 'DeadLetterStats'; undecodable(self) -> 'int'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.MAX_REPLAY_BATCH¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.ReplayHandler¶
Stability: alpha
Type alias.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.ReplayPlan¶
Stability: alpha
What a replay would do, without having done any of it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.ReplayReport¶
Stability: alpha
What a replay did.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.Replayer¶
Stability: alpha
Puts dead-lettered events back through the live consumer path, under guardrails.
class Replayer(object) {plan(self, query: 'DeadLetterQuery') -> 'ReplayPlan'; records(self, query: 'DeadLetterQuery') -> 'Sequence[DeadLetterRecord]'; replay(self, query: 'DeadLetterQuery', *, operator: 'str', reason: 'str' = '') -> 'ReplayReport'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.UNDECODABLE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dead_letters.UNKNOWN_TENANT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.dedupe_key¶
Stability: alpha
What one consumer group's handling of one event is recorded under.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.eventing.payload_of¶
Stability: alpha
The event a consumer downstream should hear about, or None where there is not one.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.eventing.publishing¶
Stability: alpha
Iterate a run's progress, publishing the events other systems act on as it goes.
def publishing(stream: 'RunStream[OutputT]', eventing: 'Eventing') -> 'AsyncIterator[ProgressEvent]'
Typed errors: EventPublishError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_a2a_agent¶
Stability: alpha
Export a generic or official A2A card as a runnable Registry Agent.
def export_a2a_agent(card: 'Mapping[str, object] | object', *, namespace: 'str', runtime: 'PortableRuntime', framework: 'str' = 'a2a', visibility: "Literal['private', 'internal', 'public']" = 'private') -> 'PortableAgentManifest'
Typed errors: PortableExportError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_as_a2a¶
Stability: alpha
Return the official A2A card and authenticated executor for one definition.
def export_as_a2a(runner: 'AgentRunner', definition: 'AgentDefinition[OutputT]', *, resolve: 'A2APrincipalResolver', description: 'str', provider_url: 'str', interfaces: 'Iterable[A2AInterface]', skills: 'Iterable[A2ASkill]', documentation_url: 'str' = '', default_input_modes: 'Sequence[str]' = ('text/plain',), default_output_modes: 'Sequence[str]' = ('text/plain',), streaming: 'bool' = False, push_notifications: 'bool' = False, extended_agent_card: 'bool' = False, security: 'A2ABearerSecurity | None' = None, max_input_bytes: 'int' = 65536, max_output_bytes: 'int' = 1048576) -> 'ExportedA2AAgent'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_as_mcp_tool¶
Stability: alpha
Publish an agent through the existing authenticated MCP server helper.
def export_as_mcp_tool(runner: 'AgentRunner', agent: 'TypedAgent[InputT, OutputT] | TypedAgentDefinition[InputT, OutputT]', *, description: 'str', name: 'str | None' = None, timeout_seconds: 'float' = 30.0, per_tenant_calls: 'int' = 8, secrets: 'Sequence[str]' = ()) -> 'McpServer'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_as_tool¶
Stability: alpha
Export one structured kit agent as descriptor, callable and reusable kit tool.
def export_as_tool(runner: 'AgentRunner', agent: 'TypedAgent[InputT, OutputT] | TypedAgentDefinition[InputT, OutputT]', *, description: 'str', name: 'str | None' = None, timeout_seconds: 'float' = 30.0) -> 'ExportedAgentTool[InputT, OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_google_adk_agent¶
Stability: alpha
Export a Google ADK agent without importing Google ADK.
def export_google_adk_agent(agent: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_langgraph_agent¶
Stability: alpha
Export a compiled LangGraph graph through public attributes only.
def export_langgraph_agent(graph: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_oci_agent¶
Stability: alpha
Export an unknown framework through its digest-pinned OCI boundary.
def export_oci_agent(*, name: 'str', version: 'str', namespace: 'str', image: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int' = 8080, path: 'str' = '/a2a/v1', health_path: 'str' = '/healthz', visibility: "Literal['private', 'internal', 'public']" = 'private') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_openai_agent¶
Stability: alpha
Export an OpenAI Agents SDK agent without importing that SDK.
def export_openai_agent(agent: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.export_tesserix_agent¶
Stability: alpha
Export a reviewed Tesserix definition without silently moving dependencies.
def export_tesserix_agent(definition: 'AgentDefinition[OutputT]', *, namespace: 'str', runtime: 'PortableRuntime', model_provider: 'str' = '', tool_versions: 'Mapping[str, str] | None' = None, skills: 'Iterable[PortableReference]' = (), mcp_servers: 'Iterable[PortableReference]' = (), prompts: 'Iterable[PortableReference]' = (), description: 'str' = '', include_system_prompt: 'bool' = False, visibility: "Literal['private', 'internal', 'public']" = 'private', labels: 'Mapping[str, str] | None' = None) -> 'PortableAgentManifest'
Typed errors: PortableExportError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.fingerprint¶
Stability: alpha
A digest of what a call to descriptor is held to, so a changed contract shows.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.ForeignAgentContext¶
Stability: alpha
Caller-owned context supplied beside, and never inside, foreign input.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.ForeignAgentReply¶
Stability: alpha
A foreign answer with whatever metering its runtime can report.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.WrappedAgentPolicy¶
Stability: alpha
Controls one foreign-agent boundary.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.WrappedSubagent¶
Stability: alpha
An addressable foreign agent accepted by :class:~runtime.Supervisor.
class WrappedSubagent(Generic) {run(self, user_input: 'str', *, tenant: 'str', budget: 'BudgetPolicy', user: 'str | None' = None, run_id: 'str | None' = None, cancellation: 'CancellationToken | None' = None, parent: 'RunContext | None' = None, scopes: 'Collection[str]' = (), trace: 'Mapping[str, str] | None' = None, tools: 'Collection[str] | None' = None) -> 'Run[OutputT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.wrap_agent_as_subagent¶
Stability: alpha
Make a foreign agent addressable from a kit supervisor roster.
def wrap_agent_as_subagent(foreign: 'Callable[[InputT, ForeignAgentContext], object]', *, name: 'str', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, provenance: 'str | None' = None) -> 'WrappedSubagent[InputT, OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.foreign_agents.wrap_agent_as_tool¶
Stability: alpha
Expose a foreign agent as a typed kit tool.
def wrap_agent_as_tool(foreign: 'Callable[[InputT, ForeignAgentContext], object]', *, name: 'str', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, description: 'str | None' = None, provenance: 'str | None' = None) -> 'Tool[..., OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.GOOGLE_ADK_CONTEXT_KEY¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.GoogleAdkAgentInvoker¶
Stability: alpha · Kind: Protocol
Application-owned invocation of one Google agent under delegated context.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.google_adk_remote_agent¶
Stability: alpha
Create a Google ADK remote agent for a Tesserix official A2A endpoint.
def google_adk_remote_agent(*, name: 'str', agent_card: 'AgentCard | str', description: 'str' = '', timeout_seconds: 'float' = 60.0) -> 'RemoteA2aAgent'
Typed errors: MissingExtraError, ValueError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.import_google_adk_tool¶
Stability: alpha
Import one Google FunctionTool through the generic kit tool boundary.
Typed errors: MissingExtraError, ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.import_google_adk_toolset¶
Stability: alpha
Import Google FunctionTools and apply generic duplicate-name admission.
def import_google_adk_toolset(sources: 'Iterable[object]', *, policy: 'ToolImportPolicy', known: 'Collection[str]' = ()) -> 'tuple[Tool[..., object], ...]'
Typed errors: MissingExtraError, ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk.wrap_google_adk_agent¶
Stability: alpha
Wrap a Google BaseAgent as a typed, budgeted kit sub-agent.
def wrap_google_adk_agent(source: 'object', *, invoke: 'GoogleAdkAgentInvoker[InputT]', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, name: 'str | None' = None) -> 'WrappedSubagent[InputT, OutputT]'
Typed errors: ConfigurationError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.google_adk_remote_agent¶
Stability: alpha
Create a Google ADK remote agent for a Tesserix official A2A endpoint.
def google_adk_remote_agent(*, name: 'str', agent_card: 'AgentCard | str', description: 'str' = '', timeout_seconds: 'float' = 60.0) -> 'RemoteA2aAgent'
Typed errors: MissingExtraError, ValueError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graft.GraftMcpBackend¶
Stability: alpha
A tenant-bound Graft MCP session.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graft.GraftSubprocessBackend¶
Stability: alpha
A local Graft CLI bound to one canonical checkout.
class GraftSubprocessBackend(object) {execute(self, request: 'CodeContextRequest') -> 'CodeContextResult'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.DEFAULT_GRANT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.EXPECTED_GRANT_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.GRANT_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.GrantTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.PostgresGrantSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.grants.PostgresGrantStore¶
Stability: alpha
Grants in one table, read live and written once.
class PostgresGrantStore(object) {grants_for(self, *, tenant: 'str', action_class: 'str') -> 'Sequence[AutonomyGrant]'; issue(self, grant: 'AutonomyGrant') -> 'AutonomyGrant'; revoke(self, revocation: 'Revocation') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.BACKENDS¶
Stability: alpha
Built-in immutable sequence.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.EXTRACTION_INSTRUCTION¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.EntityExtractor¶
Stability: alpha
Turns an episode into a subgraph, through the kit's own provider protocol.
class EntityExtractor(object) {extract(self, scope: 'MemoryScope', record: 'MemoryRecord', *, budget: 'BudgetPolicy') -> 'tuple[ExtractedSubgraph, ExtractionCharge]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.ExtractedEdge¶
Stability: alpha
One relation, valid over an interval.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.ExtractedNode¶
Stability: alpha
One entity the extraction named.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.ExtractedSubgraph¶
Stability: alpha
What one episode became, committed as a unit or not at all.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.ExtractionCharge¶
Stability: alpha
What one extraction cost, attributed like any other model call.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.ExtractionMeter¶
Stability: alpha
A per-tenant ceiling on extraction spend, checked before the call.
class ExtractionMeter(object) {charge(self, tenant: 'str', cost: 'Decimal') -> 'None'; check(self, tenant: 'str') -> 'None'; spent(self, tenant: 'str') -> 'Decimal'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.GraphEngine¶
Stability: alpha · Kind: Protocol
The three things the adapter asks of a graph, and nothing else.
class GraphEngine(Protocol) {commit(self, subgraph: 'ExtractedSubgraph') -> 'None'; drop(self, path: 'tuple[str, str, str, str]') -> 'Mapping[str, int]'; edges(self, path: 'tuple[str, str, str, str]', *, as_of: 'float | None', limit: 'int') -> 'Sequence[ExtractedEdge]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.GraphMemoryStore¶
Stability: alpha
MemoryStore whose episodic and semantic halves are a temporal graph.
class GraphMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'Sequence[Derivation]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; enqueue(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'Sequence[MemoryHit]'; erase(self, scope: 'MemoryScope', *, kinds: 'tuple[MemoryKind, ...]' = (), dry_run: 'bool' = False) -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; flush(self) -> 'int'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'Sequence[MemoryRecord]'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; relations(self, scope: 'MemoryScope', *, as_of: 'float | None' = None, limit: 'int' = 10) -> 'Sequence[MemoryHit]'; retry_pending(self) -> 'int'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'Sequence[MemoryHit]'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; writing(self) -> 'AsyncIterator[None]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.GraphSettings¶
Stability: alpha
Where the graph is and what extracts into it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.GraphitiClient¶
Stability: alpha · Kind: Protocol
The part of graphiti's client the engine drives, named so nothing here is Any.
class GraphitiClient(Protocol) {add_episode(self, *, name: 'str', episode_body: 'str', source_description: 'str', group_id: 'str', reference_time: 'float | None') -> 'None'; remove_episode(self, group_id: 'str') -> 'None'; search(self, query: 'str', *, group_ids: 'Sequence[str]', num_results: 'int', reference_time: 'float | None') -> 'Sequence[object]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.GraphitiEngine¶
Stability: alpha
GraphEngine over graphiti-core, which owns the temporal model and the backend.
class GraphitiEngine(object) {commit(self, subgraph: 'ExtractedSubgraph') -> 'None'; drop(self, path: 'tuple[str, str, str, str]') -> 'Mapping[str, int]'; edges(self, path: 'tuple[str, str, str, str]', *, as_of: 'float | None', limit: 'int') -> 'Sequence[ExtractedEdge]'; group_id(self, path: 'tuple[str, str, str, str]') -> 'str'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.graph.open_graphiti¶
Stability: alpha
Build a GraphitiEngine for the configured backend.
def open_graphiti(settings: 'GraphSettings', *, factory: 'Callable[[str, str], GraphitiClient] | None' = None) -> 'GraphitiEngine'
Typed errors: MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotency.IN_FLIGHT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotency.PostgresIdempotencyStore¶
Stability: alpha
The record in PostgreSQL, with the claim and the read in one statement.
class PostgresIdempotencyStore(object) {abandon(self, key: 'str', *, tenant: 'str') -> 'None'; begin(self, key: 'str', *, tenant: 'str', ttl_seconds: 'float') -> 'Claim'; ensure_schema(self) -> 'None'; forget(self, *, tenant: 'str') -> 'int'; record(self, key: 'str', *, tenant: 'str', outcome: 'str', ttl_seconds: 'float') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotency.RedisIdempotencyStore¶
Stability: alpha
The record in Redis, with the claim and the read in one script.
class RedisIdempotencyStore(object) {abandon(self, key: 'str', *, tenant: 'str') -> 'None'; begin(self, key: 'str', *, tenant: 'str', ttl_seconds: 'float') -> 'Claim'; forget(self, *, tenant: 'str') -> 'int'; record(self, key: 'str', *, tenant: 'str', outcome: 'str', ttl_seconds: 'float') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotent_events.DEFAULT_DEDUPE_TTL_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotent_events.DEFAULT_MAX_ATTEMPTS¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotent_events.IdempotentConsumer¶
Stability: alpha
Runs a handler at most once per event, and stops retrying what never works.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.idempotent_events.dedupe_key¶
Stability: alpha
What one consumer group's handling of one event is recorded under.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.import_google_adk_tool¶
Stability: alpha
Import one Google FunctionTool through the generic kit tool boundary.
Typed errors: MissingExtraError, ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.import_google_adk_toolset¶
Stability: alpha
Import Google FunctionTools and apply generic duplicate-name admission.
def import_google_adk_toolset(sources: 'Iterable[object]', *, policy: 'ToolImportPolicy', known: 'Collection[str]' = ()) -> 'tuple[Tool[..., object], ...]'
Typed errors: MissingExtraError, ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.import_tool¶
Stability: alpha
Translate a callable, class tool or OpenAI function descriptor into a kit tool.
def import_tool(source: 'object', *, policy: 'ToolImportPolicy', implementation: 'Callable[..., object] | None' = None, schema: 'Mapping[str, JsonValue] | None' = None, name: 'str | None' = None, description: 'str | None' = None, context_parameter: 'str | None' = None, provenance: 'str | None' = None) -> 'Tool[..., object]'
Typed errors: ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.import_toolset¶
Stability: alpha
Translate every compatible entry and collect incompatible definitions.
def import_toolset(sources: 'Iterable[ForeignTool | object]', *, policy: 'ToolImportPolicy', known: 'Collection[str]' = ()) -> 'tuple[Tool[..., object], ...]'
Typed errors: ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.interop.ForeignTool¶
Stability: alpha
One toolset entry, pairing a foreign definition with its implementation.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.interop.ToolImportPolicy¶
Stability: alpha
Registry policy attached to every imported tool before it can be called.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.interop.ToolTranslationError¶
Stability: alpha
A foreign definition that cannot be made safe enough to register.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.interop.import_tool¶
Stability: alpha
Translate a callable, class tool or OpenAI function descriptor into a kit tool.
def import_tool(source: 'object', *, policy: 'ToolImportPolicy', implementation: 'Callable[..., object] | None' = None, schema: 'Mapping[str, JsonValue] | None' = None, name: 'str | None' = None, description: 'str | None' = None, context_parameter: 'str | None' = None, provenance: 'str | None' = None) -> 'Tool[..., object]'
Typed errors: ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.interop.import_toolset¶
Stability: alpha
Translate every compatible entry and collect incompatible definitions.
def import_toolset(sources: 'Iterable[ForeignTool | object]', *, policy: 'ToolImportPolicy', known: 'Collection[str]' = ()) -> 'tuple[Tool[..., object], ...]'
Typed errors: ToolTranslationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.ADAPTER_GUARANTEES¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.ErasureSweep¶
Stability: alpha
What a tenant-scoped erasure found still standing afterwards.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.IsolationGuarantee¶
Stability: alpha
What isolation an adapter actually provides, and where it stops.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.Isolator¶
Stability: alpha
The adapter-side wrapper that scopes a read and checks what comes back.
class Isolator(Generic) {read(self, operation: 'Callable[[], Awaitable[Sequence[RecordT]]]') -> 'Sequence[RecordT]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.Partition¶
Stability: alpha
The tenant's slice of a store, derived rather than passed.
class Partition(object) {key(self, namespace: 'str', *parts: 'str') -> 'str'; only(self, items: 'Sequence[ItemT]', *, tenant_of: 'Callable[[ItemT], str]', where: 'str') -> 'Sequence[ItemT]'; pattern(self, namespace: 'str') -> 'str'; predicate(self, *, column: 'str' = 'tenant', position: 'int' = 1) -> 'tuple[str, str]'; verify(self, found: 'str', *, where: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.PartitionMechanism¶
Stability: alpha
How a store keeps one tenant's data away from another's.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.isolation.partitioned¶
Stability: alpha
Split work that spans tenants into one batch per tenant.
def partitioned(items: 'Iterable[ItemT]', *, tenant_of: 'Callable[[ItemT], str]') -> 'dict[str, list[ItemT]]'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.DEFAULT_EVENT_SUBJECT¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.DEFAULT_STREAM_REQUIREMENT¶
Stability: alpha
What the stream must already be, for publishing onto it to mean anything.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.DeadLetter¶
Stability: alpha · Kind: Protocol
Where a message that will never be handled goes, instead of round again.
class DeadLetter(Protocol) {bury(self, payload: 'bytes', *, reason: 'str', history: 'tuple[str, ...]' = ()) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.DurableConsumer¶
Stability: alpha
Reads events back with explicit acks, and buries what will never be handled.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.JetStreamContext¶
Stability: alpha · Kind: Protocol
The two methods this adapter uses from a JetStream client.
class JetStreamContext(Protocol) {publish(self, subject: 'str', payload: 'bytes', *, headers: 'Mapping[str, str] | None' = None, timeout: 'float | None' = None) -> 'PublishAck'; stream_info(self, name: 'str') -> 'Any'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.JetStreamEventPublisher¶
Stability: alpha
Publishes envelopes onto JetStream, deduplicated by the event id.
class JetStreamEventPublisher(object) {flush(self) -> 'None'; publish(self, event: 'EventEnvelope') -> 'None'; publish_batch(self, events: 'tuple[EventEnvelope, ...]') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.JetStreamMessage¶
Stability: alpha · Kind: Protocol
One delivery, and the three things a consumer may do about it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.PublishAck¶
Stability: alpha · Kind: Protocol
What the stream says it did with a message.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.StreamRequirement¶
Stability: alpha
What the stream must already be, for publishing onto it to mean anything.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.jetstream.subject_for¶
Stability: alpha
The subject one event is published on.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.CoalescingLedger¶
Stability: alpha
A ledger that buys allowance in blocks, so not every call is a round trip.
class CoalescingLedger(object) {flush(self) -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.DEFAULT_LEASE_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.InMemoryLedger¶
Stability: alpha
A ledger in this process. The reference semantics, and enough for one replica.
class InMemoryLedger(object) {break_with(self, failure: 'BudgetUnavailableError') -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.PostgresLedger¶
Stability: alpha
The window in PostgreSQL, with every operation a single statement.
class PostgresLedger(_Shared) {ensure_schema(self) -> 'None'; forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.RedisClient¶
Stability: alpha · Kind: Protocol
The one call the Redis ledger makes, and nothing else.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.RedisLedger¶
Stability: alpha
The window in Redis, with every operation a single server-side script.
class RedisLedger(_Shared) {forget(self, tenant: 'str') -> 'WindowSpend'; read_window(self, key: 'LedgerKey') -> 'WindowSpend'; reconcile(self) -> 'int'; record_progress(self, reservation: 'Reservation', spent: 'Decimal') -> 'None'; release(self, reservation: 'Reservation') -> 'None'; reserve(self, key: 'LedgerKey', amount: 'Decimal', *, ceiling: 'Decimal', lease_seconds: 'float' = 300.0) -> 'Reservation'; settle(self, reservation: 'Reservation', actual: 'Decimal') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.ledger.SqlExecutor¶
Stability: alpha · Kind: Protocol
The one call the PostgreSQL ledger makes.
class SqlExecutor(Protocol) {fetch(self, statement: 'str', *args: 'Any') -> 'Sequence[Sequence[Any]]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpClient¶
Stability: alpha
One MCP server, adopted into the kit's own tool contract.
class McpClient(object) {aclose(self) -> 'None'; connect(self) -> 'McpServerInfo'; discover(self, *, known: 'Collection[str]' = ()) -> 'McpDiscovery'; refresh(self, *, known: 'Collection[str]' = ()) -> 'McpDiscovery'; tools(self) -> 'tuple[Tool[..., str], ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpDiscovery¶
Stability: alpha
What one pass over a server's tool list produced.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpProtocolError¶
Stability: alpha
A server answered with something that is not the answer it promised.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpRejection¶
Stability: alpha
One advertised tool this process will not register, and the reason it will not.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpSchemaError¶
Stability: alpha
A tool whose input schema the kit cannot hold a call to, and why.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpServerInfo¶
Stability: alpha
What a server said about itself when the session was initialised.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp.McpSession¶
Stability: alpha · Kind: Protocol
The vendor-neutral operations this client needs from a connected MCP server.
class McpSession(Protocol) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.AuthorisingSession¶
Stability: alpha
An MCP session that attributes every call and redacts what comes back.
class AuthorisingSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.CallAuthority¶
Stability: alpha · Kind: Protocol
Whatever decides what one MCP request may present. TenantAuthority does.
class CallAuthority(Protocol) {headers_for(self, *, server: 'str', holding_for: 'float' = Ellipsis) -> 'Mapping[str, str]'; meta_for(self, *, server: 'str', holding_for: 'float' = Ellipsis) -> 'Mapping[str, str]'; secrets_for(self, *, server: 'str') -> 'tuple[str, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.CallerContext¶
Stability: alpha
The run's own answer to who a call is for and where it sits in a trace.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.IncomingCall¶
Stability: alpha
What a hosted MCP server reads off a call before it does any work.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.TenantAuthority¶
Stability: alpha
Per-call authority for MCP servers, keyed by the tenant and subject it was minted for.
class TenantAuthority(object) {authorised(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'AuthorisedCall'; headers_for(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'dict[str, str]'; meta_for(self, *, server: 'str', holding_for: 'float' = 0.0) -> 'dict[str, str]'; secrets_for(self, *, server: 'str') -> 'tuple[str, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.arriving_call¶
Stability: alpha
Read who an arriving MCP call is for, or refuse it.
def arriving_call(*, headers: 'Mapping[str, str] | None' = None, meta: 'Mapping[str, str] | None' = None, authenticated: 'str | None' = None) -> 'IncomingCall'
Typed errors: McpAuthError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_context.redacted¶
Stability: alpha
The same result with credential material masked out of it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.BreakerState¶
Stability: alpha
Whether this process is currently willing to reach for a server.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.Degraded¶
Stability: alpha
One capability an agent was assembled without, and why it is not there.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.McpFleet¶
Stability: alpha
Every MCP server an agent was assembled with, and every one it was assembled without.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.McpServerUnavailableError¶
Stability: alpha
A capability an MCP server was to provide is not available, and why it is not.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.ResilientSession¶
Stability: alpha
One MCP session with its degradation policy applied, still an McpSession.
class ResilientSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.ServerBreaker¶
Stability: alpha
One server's breaker: shut by consecutive faults, reopened by a probe.
class ServerBreaker(object) {allows(self) -> 'bool'; failed(self) -> 'None'; succeeded(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.ServerHealth¶
Stability: alpha
What one server has just done, in the terms an alert is written in.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_resilience.assembled¶
Stability: alpha
Adopt every server's tools, tolerating the absence of the optional ones.
Typed errors: McpServerUnavailableError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.APPROVAL_REQUIRED¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.ExportedSession¶
Stability: alpha
One caller's session: the tools it was opened with, and the calls it makes.
class ExportedSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.McpExportError¶
Stability: alpha
A request the published server would not serve, with nothing of the request in it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.McpExportReason¶
Stability: alpha
Why a published server refused a request before any tool body ran.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.McpServer¶
Stability: alpha
The kit tools one process publishes, and the sessions callers hold them through.
class McpServer(object) {connect(self, *, headers: 'Mapping[str, str] | None' = None, meta: 'Mapping[str, str] | None' = None, authenticated: 'str | None' = None, protocol_version: 'str' = '2025-06-18') -> 'ExportedSession'; reload(self, exports: 'Sequence[str]') -> 'None'}
Typed errors: McpExportError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_server.published¶
Stability: alpha
The MCP descriptor for tool, generated from its definition rather than written.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.MAX_NAME_LENGTH¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.McpSurfaceDriftError¶
Stability: alpha
A server's tools are no longer what the pin says they were.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.McpToolConflictError¶
Stability: alpha
Two tools that would answer to one name, with both origins named.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.SurfaceEntry¶
Stability: alpha
One tool as it was resolved.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.SurfacePin¶
Stability: alpha
A resolved surface written down, so a later one can be held to it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.ToolSurface¶
Stability: alpha
The tools one agent has, and where each of them came from.
class ToolSurface(object) {check(self, pin: 'SurfacePin') -> 'None'; names(self) -> 'tuple[str, ...]'; of_server(self, server: 'str') -> 'Self'; pin(self) -> 'SurfacePin'; report(self) -> 'str'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.fingerprint¶
Stability: alpha
A digest of what a call to descriptor is held to, so a changed contract shows.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_surface.namespaced¶
Stability: alpha
The name a model calls tool by, worked out the same way every time.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.HttpTransport¶
Stability: alpha
One MCP server as an HTTP endpoint, reading a JSON or an SSE reply.
class HttpTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.McpTransport¶
Stability: alpha · Kind: Protocol
The operations a session needs from whatever carries its messages.
class McpTransport(Protocol) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.McpTransportError¶
Stability: alpha
A server could not be reached, or answered with something that was not protocol.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.McpTransportReason¶
Stability: alpha
Why a transport failed, in the terms a caller can act on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.RecordingTransport¶
Stability: alpha
A transport that answers from a script and remembers what it was asked.
class RecordingTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.StdioTransport¶
Stability: alpha
One MCP server as a child process, framed as newline-delimited JSON-RPC.
class StdioTransport(object) {close(self) -> 'None'; notify(self, method: 'str', params: 'Mapping[str, JsonValue]') -> 'None'; open(self) -> 'None'; request(self, method: 'str', params: 'Mapping[str, JsonValue]', *, timeout_seconds: 'float') -> 'dict[str, JsonValue]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.TransportSession¶
Stability: alpha
An MCP session spoken over any transport, which is where the two shapes converge.
class TransportSession(object) {call_tool(self, name: 'str', arguments: 'Mapping[str, JsonValue]', *, meta: 'Mapping[str, str]', timeout_seconds: 'float') -> 'GatewayToolResult'; close(self) -> 'None'; initialize(self) -> 'McpServerInfo'; list_tools(self) -> 'tuple[McpToolDescriptor, ...]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.mcp_transport.transport_for¶
Stability: alpha
Build the transport the declaration asks for.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.DEFAULT_COLLECTION¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.DEFAULT_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.DEFAULT_TABLE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.DISTANCE_OPERATORS¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.MemoryPage¶
Stability: alpha
One page of episodes and where the next one starts.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.MemoryStoreSettings¶
Stability: alpha
Where a store connects and how hard it tries, from the deployment's secret manager.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.PgvectorMemoryStore¶
Stability: alpha
Semantic recall in pgvector, ranked by the database rather than by the process.
class PgvectorMemoryStore(object) {erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.PostgresMemoryStore¶
Stability: alpha
Profiles and episodes in PostgreSQL, where nothing is overwritten.
class PostgresMemoryStore(object) {belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'tuple[Derivation, ...]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'tuple[MemoryRecord, ...]'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; page(self, scope: 'MemoryScope', query: 'MemoryQuery', *, cursor: 'str | None' = None) -> 'MemoryPage'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.RedisMemoryStore¶
Stability: alpha
Working memory in Redis, where expiry is the server's job and not a sweeper's.
class RedisMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; erase(self, scope: 'MemoryScope') -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; recall(self, scope: 'MemoryScope', keys: 'Sequence[str]') -> 'tuple[MemoryRecord, ...]'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.memory.RoutedMemoryStore¶
Stability: alpha
One MemoryStore over the three stores, routing by kind.
class RoutedMemoryStore(object) {append(self, scope: 'MemoryScope', key: 'str', value: 'JsonValue') -> 'int'; belief(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'Belief'; derivations(self, scope: 'MemoryScope', *, source_id: 'str | None' = None) -> 'tuple[Derivation, ...]'; derived(self, scope: 'MemoryScope', derivation: 'Derivation') -> 'None'; episodes(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; erase(self, scope: 'MemoryScope', *, kinds: 'tuple[MemoryKind, ...]' = (), dry_run: 'bool' = False) -> 'ErasureReceipt'; expire(self, scope: 'MemoryScope', key: 'str', *, ttl_seconds: 'float') -> 'None'; history(self, scope: 'MemoryScope', key: 'str | None' = None) -> 'tuple[MemoryRecord, ...]'; index(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; log(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; profile(self, scope: 'MemoryScope', key: 'str', *, as_of: 'float | None' = None) -> 'MemoryRecord | None'; read(self, scope: 'MemoryScope', key: 'str') -> 'MemoryRecord | None'; search(self, scope: 'MemoryScope', query: 'MemoryQuery') -> 'tuple[MemoryHit, ...]'; supersede(self, scope: 'MemoryScope', record: 'MemoryRecord', *, expected_version: 'int | None' = None, resolves: 'tuple[str, ...]' = ()) -> 'Supersession'; upsert(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'; write(self, scope: 'MemoryScope', record: 'MemoryRecord') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.namespaced¶
Stability: alpha
The name a model calls tool by, worked out the same way every time.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.open_graphiti¶
Stability: alpha
Build a GraphitiEngine for the configured backend.
def open_graphiti(settings: 'GraphSettings', *, factory: 'Callable[[str, str], GraphitiClient] | None' = None) -> 'GraphitiEngine'
Typed errors: MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.DEFAULT_OUTBOX_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.DEFAULT_RETENTION_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.EXPECTED_OUTBOX_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.OUTBOX_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.OutboxLag¶
Stability: alpha
How far behind the relay is, which is the only number worth alerting on.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.OutboxRelay¶
Stability: alpha
Moves committed rows onto the transport, in order per run, without losing any.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.OutboxTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.PostgresOutbox¶
Stability: alpha
An EventPublisher that inserts rather than publishes.
class PostgresOutbox(object) {bound(self, session: 'SqlSession') -> 'PostgresOutbox'; publish(self, event: 'EventEnvelope') -> 'None'; publish_batch(self, events: 'tuple[EventEnvelope, ...]') -> 'None'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.outbox.PostgresOutboxSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.partitioned¶
Stability: alpha
Split work that spans tenants into one batch per tenant.
def partitioned(items: 'Iterable[ItemT]', *, tenant_of: 'Callable[[ItemT], str]') -> 'dict[str, list[ItemT]]'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.payload_of¶
Stability: alpha
The event a consumer downstream should hear about, or None where there is not one.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.peer_tool¶
Stability: alpha
Offer one of a peer's skills to a model as a tool.
def peer_tool(client: 'PeerClient', skill: 'str', *, name: 'str' = '') -> 'Tool[..., dict[str, Any]]'
Typed errors: ConfigurationError, UnsupportedSchemaError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.peer_tools.PeerArguments¶
Stability: alpha
The peer's published input schema, made the contract for what a model may send.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.peer_tools.peer_tool¶
Stability: alpha
Offer one of a peer's skills to a model as a tool.
def peer_tool(client: 'PeerClient', skill: 'str', *, name: 'str' = '') -> 'Tool[..., dict[str, Any]]'
Typed errors: ConfigurationError, UnsupportedSchemaError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.CHUNK_SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.ChunkTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.DEFAULT_CHUNK_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.EXPECTED_CHUNK_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.PgvectorIndex¶
Stability: alpha
A SearchIndex over one chunk table, answering either branch or both.
class PgvectorIndex(object) {search(self, query: 'IndexQuery') -> 'Sequence[Hit]'; supports(self, branch: 'Branch') -> 'bool'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.pgvector.PgvectorSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.PortableAgentManifest¶
Stability: alpha
One Registry Agent artifact ready for agentic validate/apply.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.PortableExportError¶
Stability: alpha
A framework object cannot be exported without inventing mutable metadata.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.PortableExportOptions¶
Stability: alpha
Shared keyword contract for third-party framework exporters.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.PortableReference¶
Stability: alpha
An immutable Registry dependency reference.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.PortableRuntime¶
Stability: alpha
An immutable container or authenticated remote Agent runtime.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.container_runtime¶
Stability: alpha
Declare a digest-pinned OCI runtime.
def container_runtime(*, image: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int' = 8080, path: 'str' = '/a2a/v1', health_path: 'str' = '/healthz') -> 'PortableRuntime'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_a2a_agent¶
Stability: alpha
Export a generic or official A2A card as a runnable Registry Agent.
def export_a2a_agent(card: 'Mapping[str, object] | object', *, namespace: 'str', runtime: 'PortableRuntime', framework: 'str' = 'a2a', visibility: "Literal['private', 'internal', 'public']" = 'private') -> 'PortableAgentManifest'
Typed errors: PortableExportError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_google_adk_agent¶
Stability: alpha
Export a Google ADK agent without importing Google ADK.
def export_google_adk_agent(agent: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_langgraph_agent¶
Stability: alpha
Export a compiled LangGraph graph through public attributes only.
def export_langgraph_agent(graph: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_oci_agent¶
Stability: alpha
Export an unknown framework through its digest-pinned OCI boundary.
def export_oci_agent(*, name: 'str', version: 'str', namespace: 'str', image: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int' = 8080, path: 'str' = '/a2a/v1', health_path: 'str' = '/healthz', visibility: "Literal['private', 'internal', 'public']" = 'private') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_openai_agent¶
Stability: alpha
Export an OpenAI Agents SDK agent without importing that SDK.
def export_openai_agent(agent: 'object', **kwargs: 'Unpack[PortableExportOptions]') -> 'PortableAgentManifest'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.export_tesserix_agent¶
Stability: alpha
Export a reviewed Tesserix definition without silently moving dependencies.
def export_tesserix_agent(definition: 'AgentDefinition[OutputT]', *, namespace: 'str', runtime: 'PortableRuntime', model_provider: 'str' = '', tool_versions: 'Mapping[str, str] | None' = None, skills: 'Iterable[PortableReference]' = (), mcp_servers: 'Iterable[PortableReference]' = (), prompts: 'Iterable[PortableReference]' = (), description: 'str' = '', include_system_prompt: 'bool' = False, visibility: "Literal['private', 'internal', 'public']" = 'private', labels: 'Mapping[str, str] | None' = None) -> 'PortableAgentManifest'
Typed errors: PortableExportError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.portable.remote_runtime¶
Stability: alpha
Declare an HTTPS runtime whose bearer secret is resolved by DevAI.
def remote_runtime(*, url: 'str', credential_ref: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int | None' = None, path: 'str' = '', health_path: 'str' = '') -> 'PortableRuntime'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.published¶
Stability: alpha
The MCP descriptor for tool, generated from its definition rather than written.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.publishing¶
Stability: alpha
Iterate a run's progress, publishing the events other systems act on as it goes.
def publishing(stream: 'RunStream[OutputT]', eventing: 'Eventing') -> 'AsyncIterator[ProgressEvent]'
Typed errors: EventPublishError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.redacted¶
Stability: alpha
The same result with credential material masked out of it.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.remote_runtime¶
Stability: alpha
Declare an HTTPS runtime whose bearer secret is resolved by DevAI.
def remote_runtime(*, url: 'str', credential_ref: 'str', protocol: "Literal['a2a', 'http']" = 'a2a', port: 'int | None' = None, path: 'str' = '', health_path: 'str' = '') -> 'PortableRuntime'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.DEFAULT_TABLES¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.EXPECTED_SCHEMA¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.PostgresStateStore¶
Stability: alpha
Session and run state in PostgreSQL, with the version compare inside the write.
class PostgresStateStore(object) {bound(self, session: 'SqlSession') -> 'PostgresStateStore'; delete_run(self, key: 'StateKey') -> 'None'; delete_session(self, key: 'StateKey', *, cascade: 'bool' = False) -> 'None'; get_run(self, key: 'StateKey') -> 'RunRecord | None'; get_session(self, key: 'StateKey') -> 'SessionRecord | None'; list_runs(self, query: 'StateQuery') -> 'StatePage'; patch_run(self, key: 'StateKey', delta: 'StateDelta') -> 'RunRecord'; put_run(self, record: 'RunRecord') -> 'RunRecord'; put_session(self, record: 'SessionRecord') -> 'SessionRecord'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.PostgresStoreSettings¶
Stability: alpha
How to reach PostgreSQL, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.PostgresWorkQueue¶
Stability: alpha
A work queue in PostgreSQL, claimed with FOR UPDATE ... SKIP LOCKED.
class PostgresWorkQueue(object) {adopt(self, *, worker: 'str') -> 'tuple[WorkItem, ...]'; bound(self, session: 'SqlSession') -> 'PostgresWorkQueue'; claim(self, *, worker: 'str', queue: 'str' = 'default', lease_seconds: 'float | None' = None) -> 'WorkItem | None'; complete(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; dead_letters(self, *, tenant: 'str', limit: 'int' = 50) -> 'tuple[WorkItem, ...]'; enqueue(self, item: 'WorkItem') -> 'WorkItem'; fail(self, item_id: 'str', *, tenant: 'str', worker: 'str', error: 'str', retryable: 'bool' = True) -> 'WorkItem'; heartbeat(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; reap(self) -> 'tuple[WorkItem, ...]'; stats(self, *, queue: 'str' = 'default') -> 'QueueStats'; verify(self) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.SCHEMA_VERSION¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.SqlSession¶
Stability: alpha · Kind: Protocol
The one call these stores make.
class SqlSession(Protocol) {fetch(self, statement: 'str', *args: 'Any') -> 'Sequence[Sequence[Any]]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.SqlTransactor¶
Stability: alpha · Kind: Protocol
A session that can also open a transaction, which is where atomicity comes from.
class SqlTransactor(SqlSession, Protocol) {transaction(self) -> 'AbstractAsyncContextManager[SqlSession]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sql_state.StateTables¶
Stability: alpha
Where the rows live. One database may hold more than one kit deployment.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.sse_events¶
Stability: alpha
Frame events as server-sent events, heartbeating while the run is quiet.
def sse_events(events: 'AsyncIterator[ProgressEvent]', *, heartbeat_seconds: 'float' = 15.0, retry_milliseconds: 'int' = 3000, payload_limit_bytes: 'int' = 65536) -> 'AsyncGenerator[str]'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.COUNTERS¶
Stability: alpha
Built-in immutable sequence.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.DEFAULT_QUEUE_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.DEFAULT_STATE_NAMESPACE¶
Stability: alpha
str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.InspectableRedis¶
Stability: alpha · Kind: Protocol
The two calls these stores make: run a script, and say how the server is configured.
class InspectableRedis(Protocol) {config_get(self, pattern: 'str') -> 'Mapping[str, str]'; eval(self, script: 'str', numkeys: 'int', *args: 'str') -> 'Any'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.RedisStateStore¶
Stability: alpha
Session and run state in Redis, with the version compare inside the write.
class RedisStateStore(object) {delete_run(self, key: 'StateKey') -> 'None'; delete_session(self, key: 'StateKey', *, cascade: 'bool' = False) -> 'None'; get_run(self, key: 'StateKey') -> 'RunRecord | None'; get_session(self, key: 'StateKey') -> 'SessionRecord | None'; list_runs(self, query: 'StateQuery') -> 'StatePage'; patch_run(self, key: 'StateKey', delta: 'StateDelta') -> 'RunRecord'; preflight(self) -> 'None'; put_run(self, record: 'RunRecord') -> 'RunRecord'; put_session(self, record: 'SessionRecord') -> 'SessionRecord'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.RedisStoreSettings¶
Stability: alpha
How to reach Redis, and what this deployment needs it to promise.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.state.RedisWorkQueue¶
Stability: alpha
A work queue in Redis, where the lease is a sorted set and the reaper is a scan.
class RedisWorkQueue(object) {adopt(self, *, worker: 'str') -> 'tuple[WorkItem, ...]'; claim(self, *, worker: 'str', queue: 'str' = 'default', lease_seconds: 'float | None' = None) -> 'WorkItem | None'; complete(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; dead_letters(self, *, tenant: 'str', limit: 'int' = 50) -> 'tuple[WorkItem, ...]'; enqueue(self, item: 'WorkItem') -> 'WorkItem'; fail(self, item_id: 'str', *, tenant: 'str', worker: 'str', error: 'str', retryable: 'bool' = True) -> 'WorkItem'; heartbeat(self, item_id: 'str', *, tenant: 'str', worker: 'str') -> 'WorkItem'; preflight(self) -> 'None'; reap(self) -> 'tuple[WorkItem, ...]'; stats(self, *, queue: 'str' = 'default') -> 'QueueStats'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.subject_for¶
Stability: alpha
The subject one event is published on.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.ApprovalInbox¶
Stability: alpha
Where a held tool call waits for a decision that arrives over the control channel.
class ApprovalInbox(object) {decide(self, decision: 'ApprovalDecision', *, tenant: 'str') -> 'None'; request(self, record: 'ApprovalRecord') -> 'ApprovalDecision'; wait_for(self, record_id: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.DEFAULT_HEARTBEAT_SECONDS¶
Stability: alpha
Convert a string or number to a floating-point number, if possible.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.DEFAULT_PAYLOAD_LIMIT_BYTES¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.DEFAULT_RETRY_MILLISECONDS¶
Stability: alpha
int([x]) -> integer int(x, base=10) -> integer
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.PayloadElided¶
Stability: alpha
An event too large for the transport, referenced rather than cut in half.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.RunBroker¶
Stability: alpha
One run, driven once, readable by however many transports attach to it.
class RunBroker(Generic) {authorise(self, run_id: 'str', *, tenant: 'str') -> 'None'; cancel(self, run_id: 'str', *, tenant: 'str') -> 'None'; register(self, stream: 'RunStream[OutputT]', *, tenant: 'str') -> 'str'; run(self, run_id: 'str', *, tenant: 'str') -> 'Run[OutputT]'; subscribe(self, run_id: 'str', *, tenant: 'str', after: 'int | None' = None) -> 'AsyncGenerator[ProgressEvent]'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.SSE_HEADERS¶
Stability: alpha
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.StreamGap¶
Stability: alpha
Events a reconnecting client will never receive, said out loud.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.TransportAuthorizationError¶
Stability: alpha
Raised when a client asked about a run that is not its tenant's to ask about.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.WebSocketBridge¶
Stability: alpha
A run over a websocket: events out, control messages in.
class WebSocketBridge(Generic) {serve(self, connection: 'WebSocketLike', *, run_id: 'str', tenant: 'str', after: 'int | None' = None) -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.WebSocketLike¶
Stability: alpha · Kind: Protocol
The three methods a websocket needs to have. Any ASGI framework's will do.
class WebSocketLike(Protocol) {close(self, code: 'int' = 1000) -> 'None'; receive_text(self) -> 'str'; send_text(self, data: 'str') -> 'None'}
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport.sse_events¶
Stability: alpha
Frame events as server-sent events, heartbeating while the run is quiet.
def sse_events(events: 'AsyncIterator[ProgressEvent]', *, heartbeat_seconds: 'float' = 15.0, retry_milliseconds: 'int' = 3000, payload_limit_bytes: 'int' = 65536) -> 'AsyncGenerator[str]'
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.transport_for¶
Stability: alpha
Build the transport the declaration asks for.
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.wire_payload¶
Stability: alpha
The event as it may leave the process: redacted, and within the transport's limit.
Typed errors: None declared.
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.wrap_agent_as_subagent¶
Stability: alpha
Make a foreign agent addressable from a kit supervisor roster.
def wrap_agent_as_subagent(foreign: 'Callable[[InputT, ForeignAgentContext], object]', *, name: 'str', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, provenance: 'str | None' = None) -> 'WrappedSubagent[InputT, OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.wrap_agent_as_tool¶
Stability: alpha
Expose a foreign agent as a typed kit tool.
def wrap_agent_as_tool(foreign: 'Callable[[InputT, ForeignAgentContext], object]', *, name: 'str', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, description: 'str | None' = None, provenance: 'str | None' = None) -> 'Tool[..., OutputT]'
Typed errors: ConfigurationError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.
tesserix_adk.adapters.wrap_google_adk_agent¶
Stability: alpha
Wrap a Google BaseAgent as a typed, budgeted kit sub-agent.
def wrap_google_adk_agent(source: 'object', *, invoke: 'GoogleAdkAgentInvoker[InputT]', input_type: 'type[InputT]', output_type: 'type[OutputT]', policy: 'WrappedAgentPolicy', guardrails: 'GuardrailPipeline | None' = None, name: 'str | None' = None) -> 'WrappedSubagent[InputT, OutputT]'
Typed errors: ConfigurationError, MissingExtraError
Runnable recipe: examples/transports.py — integration boundaries validate and propagate context.