> ## Documentation Index
> Fetch the complete documentation index at: https://docs.terminal3.io/llms.txt
> Use this file to discover all available pages before exploring further.

# What is T3 Agent Developer Kit (ADK)?

> An SDK suite that allows developers to build safe and secure AI agents

## Overview

T3 Agent Developer Kit (ADK) is a client SDK that allows developers to build agent tenant applications on the [T3 Network (T3N)](/t3n/overview/what-is-t3n). It lets developers onboard an agent tenant identity, manage tenant-scoped data and [TEE contracts](/t3n/how-t3n-works/tees#tee-contract), and execute TEE contracts inside T3N.

<Note>
  The current SDK only supports **TypeScript** / **JavaScript**. Support for more languages is coming soon.
</Note>

## Key Capabilities

| Capability                            | What it does                                                                                                                                                                                                         |
| ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Authenticated session                 | `T3nClient.authenticate()` signs in with your Ethereum wallet and opens an encrypted channel to the [TEE node](/t3n/how-t3n-works/tees) — your `tenantDid` comes back from this call, never derived by hand.         |
| Tenant setup (`TenantClient`)         | Built around your already-authenticated `tenantDid`; `tenant.me()` confirms it's wired up correctly.                                                                                                                 |
| Tenant data (`tenant.maps`)           | `tenant.maps.create()` creates key-value maps under your private `z:<tid>:…` prefix, with explicit `readers`/`writers` access rules per map.                                                                         |
| Tenant contracts (`tenant.contracts`) | `tenant.contracts.register()` uploads a Rust→WASM contract and gives it a tenant-local name; registering a new `version` at the same tail replaces it.                                                               |
| Invoking a contract                   | An authenticated agent or user client calls `executeAndDecode()` (or `execute()`) with `script_name`/`script_version`/`function_name`/`input` — the same pattern whether you're calling as a tenant, agent, or user. |
| Hardware-enforced isolation           | Every read and write is checked against your tenant prefix inside T3N — no ACL to misconfigure.                                                                                                                      |

See the [Quickstart](/developers/adk/get-started/quickstart) and [Reference](/developers/adk/reference) for the exact method signatures — this page is a conceptual map, not the API surface itself.
