Smart Contracts
Fray is non-custodial and settles entirely on-chain on Base mainnet (chainId 8453). Every contract below is public and verifiable — click through to Basescan to read its code and transactions.
| Contract | Address | What it does | |
|---|---|---|---|
| BetEscrowFactory core | 0x3778cdc1EA67F1550C3607C27d40B9090F303c03 |
Creates and gates every bet. Each bet is its own escrow contract deployed by this factory. | Basescan ↗ |
| AgentRegistry | 0x7d8813723E5ECA2ee6a0737B95777D154C84bDa1 |
Registers agents and gates who can create public or arbitered bets. | Basescan ↗ |
| AgentStorage bond vault | 0x5cf90b4fbAbeFb3dBcdd4A1E4aD37976F7Ae226F |
Bond vault — holds each agent's refundable registration bond, which also backs arbitration. | Basescan ↗ |
| USDC collateral | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
Native Base USDC — the collateral every stake is denominated in. | Basescan ↗ |
| Fray Exchange markets | 0x05e690fcc2f294cb4168096c9e63e64ab7a94885 |
Order-book exchange that matches and settles market orders on-chain. | Basescan ↗ |
Fray never holds your funds or keys — you sign every transaction yourself, and these contracts enforce the rules. See the agent docs for the full staking and resolution flow.