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

# Altheia

> The on-chain control plane for AI agents on Sui. Policy in, enforcement and audit out.

Altheia is the on-chain control plane for AI agents on Sui. An agent gets its own key and a vault governed by a Move Policy object: per-transaction and per-day spend caps, an allowed-action set, a protocol scope, an expiry, and instant revocation. The SDK builds the policy-gated transactions. The contract enforces the policy. An over-budget or out-of-scope action reverts on-chain.

The contract enforces it, not a server you trust.

<Frame>
  <img src="https://mintcdn.com/altheia/FaUWnizMhLhPg3t5/images/landing-hero.png?fit=max&auto=format&n=FaUWnizMhLhPg3t5&q=85&s=3c589187c5340e6196d24b174a0e9e26" alt="Altheia — on-chain agents, on a leash" width="3024" height="1674" data-path="images/landing-hero.png" />
</Frame>

<Note>
  Altheia is live on **Sui testnet**. The deployed package ids are in [`SUI_TESTNET`](/sdk/altheia#sui_testnet). RPC, coin types, and faucet links below are testnet.
</Note>

## The spec

Sui Foundation's Overflow 2026 Agentic Web sub-track 2 specifies a Move policy object granting an AI agent a capped budget and protocol scope, with self-enforced ceilings, on-chain activity logs, and owner revocation. Altheia is the implementation: a Move `Policy` shared object, a `Vault`, a non-transferable `AgentCap`, a DeepBook adapter, and on-chain audit events.

## What Altheia is not

* Not a wallet. The agent holds its own key; Altheia governs what that key may do.
* Not a payment rail. The DeepBook adapter is one gated action, not a settlement service.
* Not a server-side guard. Enforcement is in the Move contract. The backend reads chain state; it does not decide it.

## The policy model

An operator provisions one agent: a vault funded with a budget asset, and a `Policy` that grants the agent's `AgentCap` a scoped capability. Every agent action routes through `policy::check_and_consume`, which asserts the policy is live and the spend is within the caps before any coin leaves the vault. A denied action aborts; no coin moves.

| Control                   | Field                            | Enforced                                         |
| ------------------------- | -------------------------------- | ------------------------------------------------ |
| Per-transaction cap       | `AssetCap.per_tx_cap`            | `check_and_consume` aborts `over_per_tx_cap`     |
| Per-day cap (rolling 24h) | `AssetCap.per_day_cap`           | `check_and_consume` aborts `over_per_day_cap`    |
| Allowed actions           | `allowed_actions` (default-deny) | `assert_allows` aborts `action_not_allowed`      |
| Protocol scope            | `allowed_packages`               | `check_and_consume` aborts `package_not_allowed` |
| Expiry                    | `expires_at_ms`                  | aborts `policy_expired`                          |
| Pause                     | `paused`                         | aborts `agent_paused` (reversible)               |
| Revoke                    | `revoked`                        | aborts `policy_revoked` (terminal)               |

Caps live in a shared object, so cumulative daily spend persists across transactions. An agent cannot bypass a cap by splitting a spend across multiple PTBs.

## Start here

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    Install `@altheia-xyz/sui`, run a five-line agent, see allowed and denied.
  </Card>

  <Card title="Concepts" icon="book" href="/concepts/policy-object">
    The Move Policy object, Vault, AgentCap, and on-chain enforcement.
  </Card>

  <Card title="DeepBook swap example" icon="play" href="/guides/deepbook-swap-example">
    A runnable agent that swaps on DeepBook, capped and revocable.
  </Card>

  <Card title="SDK reference" icon="code" href="/sdk/altheia">
    `AltheiaSui`, `agentRefs`, the PTB builders, chain reads.
  </Card>
</CardGroup>

## Repositories

| Surface          | Where                                                                                      |
| ---------------- | ------------------------------------------------------------------------------------------ |
| Contracts (Move) | [github.com/altheia-xyz/altheia-sui](https://github.com/altheia-xyz/altheia-sui)           |
| Demo agent       | [github.com/altheia-xyz/altheia-sui-demo](https://github.com/altheia-xyz/altheia-sui-demo) |
| SDK (npm)        | [`@altheia-xyz/sui`](https://www.npmjs.com/package/@altheia-xyz/sui)                       |

<Card title="Open the dashboard" icon="arrow-up-right-from-square" href="https://altheia.xyz/sui" horizontal>
  Connect a Sui wallet on testnet to provision your first agent.
</Card>
