How they relate
IDLs
IDLs (Anchor interface description language) are JSON files describing each program’s instructions, accounts, and types. You need them to build instruction calls from a TypeScript client. The canonical IDLs ship in the protocol repo attarget/idl/<program>.json. After cloning the repo and running anchor build, they regenerate. They’re also packaged in frontend/lib/idl/ for the official frontend.
Drop them into your project:
PDAs at a glance
Authority model
Different operations require different signers:
The
keeper_authority and admin_authority are typically separate keypairs - a keeper rotation doesn’t require admin signature. Mainnet authorities will be Squads multisigs.
Errors
Each program exposes its own error catalog. Anchor maps them to numeric codes starting at6000 per program.
Full lookup table: Reference → Errors.
Programs:
Choosing what to call
For trading L/S, the venues are native: the per-side CLMM books for instant size, committed orders for anything larger - see Trade.
See also
mint-redeem
Paired mint/redeem; keeper single-side; market admin.
oracle
Price observations, TWAP, risk states.
clp
Capital vaults, native books, committed orders, OI cap.
SDK setup
Bootstrapping a TypeScript project against these programs.

