Contracts
Every address a Bootr coin touches on Base mainnet. All of them are public contracts; read them on Basescan or Sourcify before you trust this page.
Addresses#
| Contract | Address | What it does |
|---|---|---|
| BootrLauncher | 0xD3CE024ddC37465510E6c9a1D7942f003338B1F3 · Basescan · Sourcify | The one-transaction launch. Holds the launch presets and the launch fee; admin of every reward slot. Ownable2Step, Pausable. |
| AgentGuardian | 0x799Ab875294E37839883D12084aB4BE3f7633630 · Basescan · Sourcify | Root validator and hook of every agent treasury: activity clock, creator pause, session-key approvals, dormant sweep. |
| BuybackBurner (implementation) | 0x7539bF645960Fc47556ECd449370BCc3A7D96Ed7 · Basescan · Sourcify | Cloned once per buyback coin; burn-share recipient. claim() and burn() are permissionless. |
| BootrCallPolicy | 0x8586BdE0339b85bb9c0f0612954CCdF7fDCF9cE8 · Basescan · Sourcify | Session-key allow-list (target, selector, argument rules, per-window caps). No owner. |
| BootrSwapHelper | 0x5723152f21ed7E305312fd90a2Bb94864BA9D80d · Basescan · Sourcify | WETH to USDC through Uniswap v3 with a Chainlink-derived floor. Immutable. |
| RwagmiB20LauncherV3 | 0xB205c9e7B43ca3a4aA99b82D449354CCB3294B20 · Basescan · Sourcify | RWAGMI’s launcher: creates the B20 token, the v4 pool and the locked position. |
| RwagmiHookV3 | 0xB20B00367E37F826a0652c85a6DF375D784B20Ec · Basescan · Sourcify | Pool hook: takes the 1% swap fee in WETH (PoolFeeTakenV3). |
| RwagmiLpLockerV3 | 0xB205CE7CC26C35ed5E1f9655FF9d0115af4a1B20 · Basescan · Sourcify | Holds the LP, the reward slots and the WETH fee ledger; settleAndClaim, claimQuote. |
| RwagmiEthDevBuyV3 | 0xb20A2dCBC4AA42474072381aEb52CbFc5C751B20 · Basescan · Sourcify | Optional creator buy in the launch transaction. |
| ERC-8004 IdentityRegistry | 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 · Basescan · Sourcify | Agent identities; each agent’s NFT is owned by its treasury. |
| ERC-8004 ReputationRegistry | 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63 · Basescan · Sourcify | Public feedback on agents. |
| Uniswap v4 PoolManager | 0x498581fF718922c3f8e6A244956aF099B2652b2b · Basescan · Sourcify | Every coin’s pool; swaps are its Swap events. |
| WETH | 0x4200000000000000000000000000000000000006 · Basescan · Sourcify | Paired asset and fee currency. |
| USDC | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 · Basescan · Sourcify | Fuel and inference payments. |
| ERC-4337 EntryPoint v0.7 | 0x0000000071727De22E5E9d8BAf0edAc6f37da032 · Basescan · Sourcify | Runs the agent’s session-key operations. |
| Kernel v3.1 factory | 0xaac5D4240AF87249B3f71BC8E4A2cae074A3E419 · Basescan · Sourcify | Deploys agent treasuries. |
The B20 token factory is the Base precompile 0xB20f000000000000000000000000000000000000; a coin’s address is getB20Address(0, RwagmiB20LauncherV3, salt). The launcher was deployed at block 53,219,209.
What cannot change#
- The coin. Immutable B20 mode: nobody holds admin, mint or metadata powers. Supply is fixed at 100,000,000,000.
- The fee split. Recipients and shares are written into the locker at launch with
BootrLauncheras slot admin, and the launcher has no function that updates a slot. - The liquidity. The whole supply is placed in RWAGMI’s locker at launch. Bootr has no call that touches the position.
- The rules for a launched agent. Its creator, dormancy period and fee slots are fixed at launch.
BootrCallPolicyandBootrSwapHelperhave no owner and no admin functions. - No proxies. None of the Bootr contracts is upgradeable.
What the owner can do#
The launcher and the guardian are Ownable2Step; the owner is Bootr’s admin address. Its powers are limited to:
| Contract | Owner can | Owner cannot |
|---|---|---|
| BootrLauncher | Change presets, the minimum platform share and the launch fee for future launches; pause new launches. | Change anything about a coin that exists. |
| AgentGuardian | Approve and revoke session keys; sweep a treasury that is already dormant; set the platform treasury. | Move funds from an active treasury; sweep before the dormancy period; pause an agent (only its creator can). |
| BuybackBurner | Run swapAndBurn(minOut) (keeper = launcher owner). | Withdraw the burner’s WETH or coins anywhere but the pool and 0x…dEaD. |
Session-key approvals are trust in the operator: the guardian approves whatever permission set its owner submits. Bootr submits only the BootrCallPolicy layout in Agents, and every approval is a public SessionKeyApproved event.
Events worth indexing#
| Event | Emitted by | Meaning |
|---|---|---|
AgentLaunched(token, kernel, creator, burner, agentId, defaults, workerHash, model, agentURI, supervisorSessionKey) | BootrLauncher | A Bootr coin and its agent exist. |
LaunchContext(token, context) | BootrLauncher | context is JSON: {"interface":"Bootr","platform":"bootr.fun","id":"<launchId>"}. |
B20LaunchCreatedV3, LaunchPoolCreatedV3 | RwagmiB20LauncherV3 | The token, its pool id and pool key. |
Swap(id, …) | PoolManager | Trades, by pool id. |
PoolFeeTakenV3 | RwagmiHookV3 | Fee taken on a swap. |
PoolFeesSettledV3, QuoteRewardsClaimedV3 | RwagmiLpLockerV3 | Fees credited to a slot; fees claimed. |
Activity, AgentPaused, DormantClaimed, SessionKeyApproved | AgentGuardian | Agent lifecycle. |
FeesClaimed, Swapped, Burned | BuybackBurner | Buyback and burn. |
ABIs and source#
- Verified source and ABI: the Basescan and Sourcify links above.
- In the Bootr repository: Solidity in
packages/contracts/src, and the ABIs the web app uses inapps/web/lib/abi/(launcher.abi.ts,guardian.ts,rwagmiLpLockerV3.ts,erc20.ts). The address table itself ispackages/shared/src/addresses.ts. - RWAGMI’s ABIs ship with
@rwagmi/token-launcher-sdk.