Program map
kimia-perp
Matching engine, orderbook, funding, liquidation, spot pool.
delta-vault
Holds USDC, opens/maintains a SOL-PERP short, mints vault shares.
split-engine
Wraps vault shares into
PT + YT with MasterChef-style yield accounting.yield-amm
Yield-space AMM for PT ↔ underlying, with prices that decay into par at maturity.
intent-router
Session state machine that verifies a multi-step fixed-rate lock succeeded.
kusd-mint
Stablecoin with multi-reserve backing and staking-based yield distribution.
Layered view
CPI graph
Arrows mean “A invokes B via CPI” between Kimia’s own programs. External programs can CPI in the same way, but note that Kimia does not publish its program crates to crates.io — consumers add them aspath or git
dependencies in their own Cargo.toml with features = ["cpi"].
The fixed-rate lock, three transactions
The canonical user flow uses all five programs to turn USDC into a guaranteed fixed rate:TX1, Deposit into delta-vault
User calls
delta-vault::deposit(amount, open_perp=true).
The vault splits the deposit 50/50, swaps one half into wSOL via spot_swap,
and opens a matching SOL-PERP short via place_order.
The user receives vault shares.TX2, Split into PT + YT
User calls
split-engine::deposit(vault_shares).
The engine escrows the vault shares and mints PT (1:1) and YT (1:1) to the user.TX3, Swap YT for underlying on yield-amm
User calls
yield-amm::swap(YT → underlying).
YT trades at a discount, the difference between what you paid and what you
got back is the prepaid yield.Design principles
One program, one responsibility
One program, one responsibility
Matching ≠ hedging ≠ tokenizing. Each program’s account model is independently
auditable, and integrations only need to grok the parts they use.
Permissionless cranks
Permissionless cranks
update_funding_rate, liquidate, update_rewards, and rebalance can be
called by anyone. The protocol pays the liquidator and skims yield for the
insurance fund, incentives align, no whitelist.Reserved margin up-front
Reserved margin up-front
Open orders lock collateral at placement. You can’t over-leverage by spamming
the orderbook, a position and a resting order compete for the same free
collateral.
Round-against-trader everywhere
Round-against-trader everywhere
The shared
kimia-math and perps-math crates always round down on the
user’s side. No “$0.00000001 of free money” arbitrage.
