Documentation Index
Fetch the complete documentation index at: https://kleros-mintlify-changelog-2026-05-12-1778458371.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
These are V1 (KlerosLiquid) deployment addresses. For V2 (KlerosCore on Arbitrum), see V2 Deployment Addresses.
Ethereum Mainnet (Chain ID: 1)
| Contract | Address |
|---|
| KlerosLiquid | 0x988b3A538b618C7A603e1c11Ab82Cd16dbE28069 |
| PNK Token | 0x93ED3FBe21207Ec2E8f2d3c3de6e058Cb73Bc04d |
| PolicyRegistry | 0xcf1f07713d5193fae5c1653c9f61953d048bece4 |
| SortitionSumTreeFactory | 0x180eba68d164c3f8c3f6dc354125ebccf4dfcb86 |
| KlerosLiquid Extra Views | 0x2B562ea613ad2f58746935C842d09EB147E1E940 |
| Governor (kleros.eth) | 0xe5bcEa6F87aAEe4a81f64dfDB4d30d400e0e5cf4 |
| Governor (poh.eth) | 0x327a29fcE0a6490E4236240Be176dAA282EcCfdF |
| Governor (ubi-voting.eth) | 0x7510c77163683448b8Dc8fe9e019d9482Be1ed2b |
| Governor (fork-dao.eth) | 0xf7dE5537eCD69a94695fcF4BCdBDeE6329b63322 |
| ArbitrableProxy | 0x99489d7bb33539f3d1a401741e56e8f02b9ae0cf |
| Transaction Batcher | 0x82458d1c812d7c930bb3229c9e159cbabd9aa8cb |
| RNGenerator | 0x90992fb4E15ce0C59aEFfb376460Fda4Ee19C879 |
| Escrow (ETH) | 0x0d67440946949FE293B45c52eFD8A9b3d51e2522 |
| ArbitrableTokenList (T2CR) | 0xebcf3bca271b26ae4b162ba560e243055af0e679 |
| ArbitrableAddressList (Ethfinex) | 0x916deab80dfbc7030277047cd18b233b3ce5b4ab |
| ArbitrableAddressList (ERC20) | 0xCb4Aae35333193232421E86Cd2E9b6C91f3B125F |
| Proof of Humanity | 0xC5E9dDebb09Cd64DfaCab4011A0D5cEDaf7c9BDb |
| KlerosConnector for Unslashed | 0xe0e1bc8C6cd1B81993e2Fcfb80832d814886eA38 |
| UBI Pool | 0xa27bfea336bc7058ff1297eeff2732389f8b208f |
| UBI ProxyAdmin | 0x2b59500ad441bf5accf8ff89449552b6487132e0 |
Realitio Arbitration Proxies (Ethereum)
Used for Reality.eth + Kleros oracle integration and Safe Zodiac governance.
| Contract | Address |
|---|
| Realitio Arbitrator Proxy (original, no appeals) | 0xd47f72a2d1d0e91b0ec5e5f5d02b2dc26d00a14d |
| Realitio Proxy 2.1 With Appeals (General Purpose) | 0x728cba71a3723caab33ea416cb46e2cc9215a596 |
| Realitio Proxy 2.1 With Appeals (Gnosis Zodiac) | 0xf72cfd1b34a91a64f9a98537fe63fbab7530adca |
| Realitio Cross-Chain xDAI Foreign Proxy (non-2.1) | 0x2f0895732bfacdcf2fdb19962fe609d0da695f21 |
| Realitio Cross-chain xDAI Foreign Proxy (Realitio 2.1) | 0x79d0464ec27f67663dadf761432fc8dd0aea3d49 |
| Realitio Cross-chain Polygon Foreign Proxy | 0x776e5853e3d61b2dfb22bcf872a43bf9a1231e52 |
Gnosis Chain (Chain ID: 100)
| Contract | Address |
|---|
| xKlerosLiquid | 0x9C1dA9A04925bDfDedf0f6421bC7EEa8305F9002 |
| wrappedPNK (stPNK) | 0xcb3231aBA3b451343e0Fddfc45883c842f223846 |
| PolicyRegistry | 0x9d494768936b6bDaabc46733b8D53A937A6c6D7e |
| KlerosLiquid/PNK ProxyAdmin | 0xD1a711a863aFB85D1b4E721DcB3e48C477E46475 |
| KlerosLiquid Extra Views | 0xFA71f907B48f27d22f670d9E446f8137b0769e4B |
| SortitionSumTreeFactory | 0x7AE716d9935F41F173D944FE6557c1e117d561E9 |
| Transaction Batcher | 0x6426800F8508b15AED271337498fa5e7D0794d46 |
Realitio Cross-Chain Proxies (Gnosis Chain)
| Contract | Address |
|---|
| Realitio Cross-Chain xDAI Home Proxy | 0x29f39de98d750eb77b5fafb31b2837f079fce222 |
| Realitio v2.1 with Appeals (for Moderate) | 0xe04f5791d671d5C4e08ab49b39807087B591ea3e |
| Realitio Cross-chain xDAI Home Proxy (2.1) — Omen | 0xe40DD83a262da3f56976038F1554Fe541Fa75ecd |
LGTCR Registries (Gnosis Chain)
These registries power Kleros Scout and are consumed by block explorers (Etherscan, Scout) for address tagging.
| Contract | Address |
|---|
| LGTCR Tokens | 0x70533554fe5c17CAf77fE530f77eAB933B92af60 |
| LGTCR Address Tags | 0x66260C69d03837016d88c9877e61e08Ef74C59F2 |
| LGTCR Contract Domain Names | 0x957A53A994860BE4750810131d9c876b2f52d6E1 |
V1 Subcourt IDs (Ethereum Mainnet)
The General Court ID is 0 on V1 (different from V2 where General Court is ID 1).
Check current subcourt IDs and parameters on KlerosBoard.
To specify a subcourt and juror count in V1:
const generateArbitratorExtraData = (subcourtID, noOfVotes) =>
`0x${parseInt(subcourtID, 10).toString(16).padStart(64, "0")}${parseInt(noOfVotes, 10).toString(16).padStart(64, "0")}`;
// Example: General Court (0), 3 jurors
generateArbitratorExtraData(0, 3);
// "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003"
Further Reading