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

# Programs Overview

> The six Anchor programs that make up Kimia, at a glance.

Kimia ships six Anchor programs. They share a math crate (`kimia-math` / `perps-math`)
and a shared utility crate (`perps-common`) for oracle validation.

| Program                                  | Purpose                                                     | Devnet Program ID                              |
| ---------------------------------------- | ----------------------------------------------------------- | ---------------------------------------------- |
| [kimia-perp](/programs/kimia-perp)       | Perpetuals matching engine, funding, liquidation, spot pool | See [program IDs](/resources/program-ids)      |
| [delta-vault](/programs/delta-vault)     | Delta-neutral yield vault (USDC + SOL-PERP short)           | `HyCt6unDrKvvG2n6u99FZvhgSbtkTCuA2u8Bc8gdTuJ2` |
| [split-engine](/programs/split-engine)   | PT / YT tokenization of vault shares                        | `CKnwfi5e1jXipqXwccW3u7g3kwrZNZFi9XzVSUuNF36q` |
| [yield-amm](/programs/yield-amm)         | $x \cdot y^t = k$ AMM for PT / underlying                   | `7d48WW4sUSdsfGKxqHRYeL92kmqJxW5YmKbT78mVCT9e` |
| [intent-router](/programs/intent-router) | Fixed-rate intent state machine                             | `CU3A8MLxrJsz4CiahcduqubCA2WrniiVS4jdovxyyjR6` |
| [kusd-mint](/programs/kusd-mint)         | kUSD stablecoin with multi-reserve backing                  | `94kLqc35iGWgJ4sZTMeXnvLSyzCAgqUarJfbj2JvkTZ2` |

## What uses what

```
intent-router   ─ reads ─► delta-vault, split-engine, yield-amm accounts
delta-vault     ─ CPI  ──► kimia-perp (deposit_collateral, place_order,
                                        spot_swap, settle_funding)
split-engine    ─ reads ─► delta-vault.Vault (for share price)
yield-amm       ─ standalone (uses kimia-math only)
kusd-mint       ─ standalone (integrates with external reserves)
kimia-perp      ─ leaf (calls Pyth Receiver only)
```

## Where IDLs live

After `anchor build`:

```
Perp-engine/target/idl/kimia_perp.json
Programs/target/idl/delta_vault.json
Programs/target/idl/split_engine.json
Programs/target/idl/yield_amm.json
Programs/target/idl/intent_router.json
Programs/target/idl/kusd_mint.json
```

The frontend's `codama.*.json` files pin each IDL and regenerate TS clients under
`app/generated/<program>/`.

## Generated client layout

Every program gets a uniform client shape:

```
app/generated/<program>/
├── accounts/          # typed account codecs + PDA helpers
├── instructions/      # builder functions that return IInstruction
├── programs/          # program ID constant
├── pdas/              # findXPda helpers
└── errors/            # typed error enum
```

Each builder accepts `@solana/kit` primitives directly, so instructions compose
without adapters.
