From 984f869e9fe1faadd2ac95d7b6144538cb50ecc7 Mon Sep 17 00:00:00 2001 From: Camembear Date: Thu, 25 Jun 2026 16:21:03 -0400 Subject: [PATCH 1/6] improve wording for mainnet --- nodes/operations/fusaka.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nodes/operations/fusaka.mdx b/nodes/operations/fusaka.mdx index d48e172..57dbd5a 100644 --- a/nodes/operations/fusaka.mdx +++ b/nodes/operations/fusaka.mdx @@ -53,7 +53,7 @@ The old style of `--chain ` still works, but you must be sure to fetch and 1. **If you are running Bera-Geth, you [have to migrate to Bera-Reth](/nodes/operations/bera-geth-to-reth).** 2. Download the [recommended versions](/nodes/architecture/evm-execution). 3. Adjust Bera-Reth startup: - - Change your `--chain` option to `--chain bepolia` and remove `--bootnodes [enode-list]`. + - Change your `--chain` option to `--chain (mainnet|bepolia)` and remove `--bootnodes [enode-list]`. - OR download and fetch the current bepolia genesis file from the [recommended versions](/nodes/architecture/evm-execution) page, and overwrite your current genesis file with it. 4. No changes are needed to BeaconKit options. 5. Start the new `beacond` and `bera-reth` binaries. From 886dc8f519c71b99c6a213590ec09d49470f659b Mon Sep 17 00:00:00 2001 From: Camembear Date: Thu, 2 Jul 2026 16:06:25 -0400 Subject: [PATCH 2/6] update mintlify mcp description --- docs.json | 3 ++- index.mdx | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs.json b/docs.json index 1aaee3c..01dd84c 100644 --- a/docs.json +++ b/docs.json @@ -3,6 +3,7 @@ "theme": "palm", "mode": "dark", "name": "Berachain", + "description": "Official Berachain documentation. Berachain is an EVM-identical L1 secured by Proof-of-Liquidity (PoL). Covers the BERA, BGT, WBERA, sWBERA, and HONEY tokens; reward vaults, incentives, boosts, block rewards, and the BeraChef, BlockRewardController, and Distributor contracts; BEX (the DEX) swaps, weighted and stable pools, liquidity provision, and the Smart Order Router (SOR); Bend lending, borrow/repay, collateral, LTV, liquidation, interest rate models, and oracles; running nodes and validators with Beacon Kit and Bera-Reth, staking pools, RPC endpoints, genesis, and snapshots; mainnet (chain ID 80094) and Bepolia testnet (80069); and building on Berachain with deployed contract addresses, ABIs, SDKs, Foundry, Hardhat, viem, and wagmi. Consult these docs for any Berachain, PoL, BGT, HONEY, BEX, Bend, or validator question.", "colors": { "primary": "#92400E", "light": "#FBBF24", @@ -1352,4 +1353,4 @@ "permanent": true } ] -} \ No newline at end of file +} diff --git a/index.mdx b/index.mdx index 2723172..f4b388c 100644 --- a/index.mdx +++ b/index.mdx @@ -1,6 +1,6 @@ --- title: "Introduction" -description: "Official documentation for Berachain - the first blockchain powered by Proof-of-Liquidity" +description: "Official Berachain documentation. Berachain is an EVM-identical L1 secured by Proof-of-Liquidity (PoL). Covers the BERA, BGT, WBERA, sWBERA, and HONEY tokens; reward vaults, incentives, boosts, block rewards, and the BeraChef, BlockRewardController, and Distributor contracts; BEX (the DEX) swaps, weighted and stable pools, liquidity provision, and the Smart Order Router (SOR); Bend lending, borrow/repay, collateral, LTV, liquidation, interest rate models, and oracles; running nodes and validators with Beacon Kit and Bera-Reth, staking pools, RPC endpoints, genesis, and snapshots; mainnet (chain ID 80094) and Bepolia testnet (80069); and building on Berachain with deployed contract addresses, ABIs, SDKs, Foundry, Hardhat, viem, and wagmi. Consult these docs for any Berachain, PoL, BGT, HONEY, BEX, Bend, or validator question." --- Date: Fri, 3 Jul 2026 10:54:23 -0400 Subject: [PATCH 3/6] add noop action for org zizmor --- .github/actions/zizmor-noop/action.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .github/actions/zizmor-noop/action.yml diff --git a/.github/actions/zizmor-noop/action.yml b/.github/actions/zizmor-noop/action.yml new file mode 100644 index 0000000..73498b7 --- /dev/null +++ b/.github/actions/zizmor-noop/action.yml @@ -0,0 +1,7 @@ +name: zizmor-noop +description: No-op action to satisfy org-level zizmor input collection +runs: + using: composite + steps: + - shell: bash + run: ":" From 609380fcacff66d5c4308b74322c7216e6e947b2 Mon Sep 17 00:00:00 2001 From: Camembear Date: Fri, 3 Jul 2026 11:10:37 -0400 Subject: [PATCH 4/6] override llms.txt without stale openapi spec --- llms.txt | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 llms.txt diff --git a/llms.txt b/llms.txt new file mode 100644 index 0000000..6cfb227 --- /dev/null +++ b/llms.txt @@ -0,0 +1,153 @@ +# Berachain + +> Official Berachain documentation. Berachain is an EVM-identical L1 secured by Proof-of-Liquidity (PoL). Covers the BERA, BGT, WBERA, sWBERA, and HONEY tokens; reward vaults, incentives, boosts, block rewards, and the BeraChef, BlockRewardController, and Distributor contracts; BEX (the DEX) swaps, weighted and stable pools, liquidity provision, and the Smart Order Router (SOR); Bend lending, borrow/repay, collateral, LTV, liquidation, interest rate models, and oracles; running nodes and validators with Beacon Kit and Bera-Reth, staking pools, RPC endpoints, genesis, and snapshots; mainnet (chain ID 80094) and Bepolia testnet (80069); and building on Berachain with deployed contract addresses, ABIs, SDKs, Foundry, Hardhat, viem, and wagmi. Consult these docs for any Berachain, PoL, BGT, HONEY, BEX, Bend, or validator question. + +## Docs + +- [Borrow & Repay](https://docs.berachain.com/bend/guides/borrow-repay.md): Supply collateral, borrow HONEY, monitor LTV/LLTV, and repay to withdraw collateral on Bend. +- [Curator Application](https://docs.berachain.com/bend/guides/curator-application.md): How curators apply to list a vault on the Bend UI; governance and application form. +- [Deposit & Withdraw](https://docs.berachain.com/bend/guides/deposit-withdraw.md): Step-by-step: supply HONEY to a vault, stake for PoL rewards, unstake, and withdraw from Bend. +- [Bundlers](https://docs.berachain.com/bend/learn/bundlers.md): Bundler3: combine supply, borrow, swap, and other Bend actions into a single atomic transaction; gas savings. +- [Curator](https://docs.berachain.com/bend/learn/curator.md): Curator role: vault strategy, risk parameterization, market selection, caps, and timelock; distinct from Allocator. +- [Flash Loans](https://docs.berachain.com/bend/learn/flash-loans.md): Uncollateralized borrow-and-repay within one transaction; flashLoan flow, callback, and implementation steps. +- [Interest Rates](https://docs.berachain.com/bend/learn/interest-rates.md): How supply and borrow rates are set by the IRM and utilization; AdaptiveCurveIRM and target utilization. +- [Interest Rate Model](https://docs.berachain.com/bend/learn/irm.md): AdaptiveCurveIRM: immutable IRM, target utilization, curve and adaptive mechanisms; supply and borrow rates. +- [Liquidation](https://docs.berachain.com/bend/learn/liquidation.md): When positions are liquidated, health factor and LLTV, liquidation process, and liquidator incentives. +- [Collateral, LTV & Health](https://docs.berachain.com/bend/learn/ltv.md): Collateral and debt relationship, LTV formula, health factor, and liquidation thresholds in Bend markets. +- [Market](https://docs.berachain.com/bend/learn/market.md): Lending pool primitive: collateral/loan pairing, supply and borrow positions, risk parameters, and market creation. +- [Oracle](https://docs.berachain.com/bend/learn/oracle.md): Price feeds for Bend markets; oracle-agnostic design, compatible types, and how to query price data. +- [Introduction](https://docs.berachain.com/bend/learn/overview.md): Decentralized lending on Berachain. Get started with guides and concepts. +- [Public Allocator](https://docs.berachain.com/bend/learn/public-allocator.md): Just-in-time liquidity reallocation between Bend markets; how borrowers get liquidity from multiple vault markets. +- [Rewards for Lenders](https://docs.berachain.com/bend/learn/rewards-for-lenders.md): Vault APY, native lending yield, and PoL reward yield from staking vault shares. +- [Vaults](https://docs.berachain.com/bend/learn/vault.md): Yield-generating vault structure, curator and allocator roles, supply/withdraw queues, and risk considerations. +- [What Is Bend?](https://docs.berachain.com/bend/learn/what-is-bend.md): Morpho-based lending and borrowing with native Proof-of-Liquidity on Berachain; vaults, markets, and key features. +- [Yield & Fees](https://docs.berachain.com/bend/learn/yield-fees.md): How vault yield is generated from lending markets and how fees are applied; share price and depositor interest. +- [Add Token Metadata](https://docs.berachain.com/bex/guides/add-token.md): Submit token logo, CoinGecko ID, and metadata via the Berachain metadata repo. +- [Fees](https://docs.berachain.com/bex/guides/fees.md): How trading fees are split between LPs and the protocol and compounded in pools. +- [Liquidity Provision](https://docs.berachain.com/bex/guides/liquidity.md): Deposit tokens, mint LP positions, and manage or withdraw liquidity. +- [Pool Configuration](https://docs.berachain.com/bex/guides/pool-configuration.md): Stable and weighted pool parameters, fee tiers, and example configurations. +- [Pool Creation](https://docs.berachain.com/bex/guides/pool-creation.md): Create a new pool, set initial ratio, and add liquidity; token burn requirement. +- [BEX and Proof of Liquidity](https://docs.berachain.com/bex/guides/proof-of-liquidity.md): Earn PoL rewards by providing liquidity and staking LP tokens in reward vaults. +- [Swaps](https://docs.berachain.com/bex/guides/swaps.md): Single-hop and multi-hop swaps, routing, and slippage settings. +- [Decentralized Exchanges](https://docs.berachain.com/bex/learn/dex.md): How DEXs and AMMs work and how BEX uses Balancer V2-style architecture. +- [Flash Loans](https://docs.berachain.com/bex/learn/flash-loans.md): Uncollateralized same-transaction loans; currently disabled via protocol fees. +- [Introduction](https://docs.berachain.com/bex/learn/overview.md): Native DEX on Berachain. Swap and provide liquidity via weighted and stable pools. +- [Pools](https://docs.berachain.com/bex/learn/pools.md): Weighted and stable pool types, key parameters, and when to use each. +- [Stable Pools](https://docs.berachain.com/bex/learn/stable-pools.md): Pools for stablecoins and correlated assets; composability and amplification. +- [Vault](https://docs.berachain.com/bex/learn/vault.md): Unified contract that holds pool tokens and executes swaps, joins, and exits. +- [Weighted Pools](https://docs.berachain.com/bex/learn/weighted-pools.md): Multi-token pools with configurable weights for uncorrelated assets; exposure and impermanent loss. +- [What Is BEX?](https://docs.berachain.com/bex/learn/what-is-bex.md): Trade any token pair and provide liquidity via weighted and stable pools on Berachain. +- [Deployed Contracts](https://docs.berachain.com/build/bend/deployed-contracts.md): Bend smart contract addresses on Berachain; Morpho, IRM, oracles, URD, and related contracts. +- [Deployed Markets](https://docs.berachain.com/build/bend/deployed-markets.md): Market IDs and parameters for deployed Bend lending markets on Berachain. +- [Bundlers](https://docs.berachain.com/build/bend/onchain-bundlers.md): Group multiple Bend onchain operations into one atomic transaction; Bundler3 integration and use cases. +- [Public Allocator](https://docs.berachain.com/build/bend/onchain-public-allocator.md): Programmatically reallocate vault liquidity between Bend markets; just-in-time liquidity for borrowers. +- [Overview](https://docs.berachain.com/build/bend/overview.md): Bend on Berachain: lending protocol built on Morpho, mainnet-only, with deployed contracts, markets, and onchain tooling. +- [Batch Swap](https://docs.berachain.com/build/bex/concepts/batch-swap.md): Multi-hop swaps across BEX pools to optimize routes and pricing. +- [Underlying Tokens](https://docs.berachain.com/build/bex/concepts/lp-underlying.md): Query underlying tokens for a BEX LP token and your pool share. +- [Valuing LP Tokens](https://docs.berachain.com/build/bex/concepts/lp-valuing.md): Calculate BEX LP token value: informational and on-chain methods. +- [Pool Exits](https://docs.berachain.com/build/bex/concepts/pool-exits.md): Remove liquidity from BEX pools via the Vault exitPool function. +- [Pool Interfacing](https://docs.berachain.com/build/bex/concepts/pool-interfacing.md): Nuances of interacting with different BEX pool types. +- [Pool Joins](https://docs.berachain.com/build/bex/concepts/pool-joins.md): Add liquidity to BEX pools via the Vault joinPool function. +- [Relayers](https://docs.berachain.com/build/bex/concepts/relayers.md): Opt-in contracts that call the Vault on behalf of users for multi-step operations. +- [Single Swap](https://docs.berachain.com/build/bex/concepts/single-swap.md): Exchange one token for another in a single BEX pool via the Vault. +- [Deployed Contracts](https://docs.berachain.com/build/bex/deployed-contracts.md): Registry of deployed BEX contract addresses by network. +- [Pool Creation Guide](https://docs.berachain.com/build/bex/guides/pool-creation.md): Create BEX pools programmatically with the SDK. +- [Error Codes](https://docs.berachain.com/build/bex/help/error-codes.md): BEX smart contract error codes and meanings. +- [Overview](https://docs.berachain.com/build/bex/overview.md): BEX on Berachain: native DEX, deployed contracts, SDK, pool concepts, and guides. +- [Add Liquidity Guide](https://docs.berachain.com/build/bex/sdk/add-liquidity.md): Add liquidity to BEX pools with the SDK. +- [Berancer SDK](https://docs.berachain.com/build/bex/sdk/overview.md): BEX SDK introduction, installation, and usage. +- [SDK API Reference](https://docs.berachain.com/build/bex/sdk/reference.md): BEX SDK API reference documentation. +- [Remove Liquidity Guide](https://docs.berachain.com/build/bex/sdk/remove-liquidity.md): Remove liquidity from BEX pools with the SDK. +- [Smart Order Router (SOR) Guide](https://docs.berachain.com/build/bex/sdk/sor.md): Find optimal swap routes with the BEX SDK SOR. +- [Swap Guide](https://docs.berachain.com/build/bex/sdk/swap.md): Swap tokens with the BEX SDK. +- [Common Resources](https://docs.berachain.com/build/getting-started/common-resources.md): Quick reference for RPC, block explorer, faucet, chain IDs, and key dApp URLs when building on Berachain. +- [Deployed Contract Addresses](https://docs.berachain.com/build/getting-started/deployed-contracts.md): Berachain core and staking-pool contract addresses by network. +- [Developer Tools](https://docs.berachain.com/build/getting-started/developer-tools.md): IDEs, SDKs, and tooling for building on Berachain. +- [Introduction](https://docs.berachain.com/build/getting-started/overview.md): Get started building on Berachain: networks, tools, BEX, Bend, and common developer resources. +- [AI Developer](https://docs.berachain.com/build/guides/ai-developer.md): Use Berachain docs with AI assistants and MCP. Server URL, stack coverage, and how to ask for the right doc. +- [Berascan Token Update Guide](https://docs.berachain.com/build/guides/berascan-token-update.md): Learn how to update token information on Berascan, the Berachain block explorer +- [Governance Proposal for Reward Vaults](https://docs.berachain.com/build/guides/community/berachain-governance-proposal.md): Create and submit a governance proposal for Reward Vaults on Berachain (BRIP-style). +- [Envio Indexer ERC20](https://docs.berachain.com/build/guides/community/envio-indexer-erc20.md): Index ERC20 token data on Berachain using Envio's indexer framework. Schema and handlers for ERC20 events. +- [HelloWorld with Ethers6 & solc](https://docs.berachain.com/build/guides/community/ethers6-solc-helloworld.md): Deploy a HelloWorld-style contract to Berachain using Ethers.js v6 and the solc compiler (no Hardhat/Foundry). +- [ERC20 with Foundry](https://docs.berachain.com/build/guides/community/foundry-erc20.md): Create and deploy an ERC20 token on Berachain using Foundry (Forge, Cast). +- [Gelato VRF on Berachain](https://docs.berachain.com/build/guides/community/gelato-vrf.md): Verifiable Random Function (VRF) on Berachain with Gelato. Deploy SimpleVRFContract, create a Gelato VRF task, request and fulfill randomness. +- [Index & Query with Goldsky](https://docs.berachain.com/build/guides/community/goldsky-subgraph.md): Index Berachain data with Goldsky SDK; example subgraph for ERC20 balances. Build, deploy, query via GraphQL. +- [Hardhat Contract Verification](https://docs.berachain.com/build/guides/community/hardhat-contract-verification.md): Verify Hardhat-deployed contracts on Berascan using the Ethers v6 verification plugin. +- [Hardhat Ethers6 ERC1155](https://docs.berachain.com/build/guides/community/hardhat-ethers6-erc1155.md): Deploy and interact with an ERC1155 multi-token contract on Berachain using Hardhat and Ethers v6. +- [HelloWorld with Hardhat & Viem](https://docs.berachain.com/build/guides/community/hardhat-viem-helloworld.md): Deploy and verify a HelloWorld contract on Berachain testnet with Hardhat and Viem. Includes local node and tests. +- [Irys Upload with $BERA (Node.js)](https://docs.berachain.com/build/guides/community/irys-bera-nodejs.md): Upload files to Irys decentralized storage and pay with Berachain $BERA. Node.js script with Irys SDK. +- [Bridging ERC20 with LayerZero V2](https://docs.berachain.com/build/guides/community/layerzero-oft.md): Bridge ERC20 tokens (e.g. $UNI) from Sepolia to Berachain using LayerZero V2 and the Omnichain Fungible Token (OFT) standard. +- [Upgradeable Contracts (OpenZeppelin)](https://docs.berachain.com/build/guides/community/openzeppelin-upgrades.md): Deploy upgradeable contracts on Berachain using OpenZeppelin Upgrades (proxy pattern). +- [Overview](https://docs.berachain.com/build/guides/community/overview.md) +- [Particle Auth Core Vite](https://docs.berachain.com/build/guides/community/particle-auth-core-vite.md): Wallet connection and auth on Berachain using Particle Auth in a Vite app. +- [Provably Fair NFTs with Pyth Entropy](https://docs.berachain.com/build/guides/community/pyth-entropy.md): Use Pyth Entropy on Berachain for verifiable randomness and provably fair NFT minting. Includes setup, deploy EntropyNFT contract, and request randomness. +- [Pyth Oracle on Berachain](https://docs.berachain.com/build/guides/community/pyth-oracle.md): Query Pyth Network price data on Berachain with on-demand updates. Deploy consumer contract, fetch price payload, call updatePrice and getPrice. +- [RainbowKit Vite](https://docs.berachain.com/build/guides/community/rainbowkit-vite.md): Minimal React + Vite app with RainbowKit for connecting wallets to Berachain. +- [ThirdWeb ConnectWallet NextJS](https://docs.berachain.com/build/guides/community/thirdweb-connectwallet-nextjs.md): Connect wallet and interact with Berachain using ThirdWeb ConnectWallet and Next.js. +- [HelloWorld with Viem & solc](https://docs.berachain.com/build/guides/community/viem-solc-helloworld.md): Deploy a HelloWorld-style contract to Berachain using Viem and the solc compiler. +- [WalletConnect Expo](https://docs.berachain.com/build/guides/community/walletconnect-expo.md): Mobile app example using Expo and WalletConnect to connect to Berachain. +- [NextJS WalletConnect WAGMI + Viem](https://docs.berachain.com/build/guides/community/walletconnect-nextjs.md): Deploy a contract from a Next.js frontend with WalletConnect, WAGMI, and Viem. Connect via QR with MetaMask Mobile. +- [Add Incentives to a Reward Vault](https://docs.berachain.com/build/guides/proof-of-liquidity/add-incentives.md): Add incentive tokens to an existing Reward Vault. +- [Add Incentives with Safe](https://docs.berachain.com/build/guides/proof-of-liquidity/add-incentives-safe.md): Queue and execute Reward Vault incentive transactions through Safe. +- [Setup Reward Vault](https://docs.berachain.com/build/guides/proof-of-liquidity/setup-reward-vault.md): Create and configure a Reward Vault for PoL integration. +- [Verifying Smart Contracts](https://docs.berachain.com/build/guides/verifying-smart-contracts.md): Verify smart contracts on Berachain using Berascan, Hardhat, Forge, and Remix. +- [Advanced PoL Integration](https://docs.berachain.com/build/pol/advanced-pol.md): Proof of Liquidity Integration Guide for Non-ERC20 Protocols +- [PoL Integration Overview](https://docs.berachain.com/build/pol/integration-basics.md): Start here for PoL integration paths, setup flow, and guide map. +- [LST Integration for PoL Auction Yield](https://docs.berachain.com/build/pol/lst-integration.md): Register an LSTStakerVault so your LST product earns a pro-rata share of WBERA paid through the PoL Incentive Auction. +- [Partial Reward Claims](https://docs.berachain.com/build/pol/partial-reward-claims.md): Guide to partial reward claiming in Reward Vaults with WBERA emissions. +- [RewardVaultHelper Claim Flow](https://docs.berachain.com/build/pol/reward-vault-helper-claim-flow.md): Claim Reward Vault rewards as sWBERA or native BERA. +- [Staking for Other Accounts](https://docs.berachain.com/build/pol/staking-for-other-accounts.md): Guide to using stakeOnBehalf functionality in Berachain Reward Vaults +- [EIP-5792 Introduction](https://docs.berachain.com/build/protocol/eip5792-overview.md): Learn about EIP-5792 and how it enables wallet batching capabilities for improved user experience +- [Eip7702 basics](https://docs.berachain.com/build/protocol/eip7702-basics.md) +- [EIP-7702 Batch Transactions](https://docs.berachain.com/build/protocol/eip7702-batch-transactions.md): Guide to batch transactions using EIP-7702 on Berachain. +- [Eip7702 gas sponsorship](https://docs.berachain.com/build/protocol/eip7702-gas-sponsorship.md) +- [Protocol Features](https://docs.berachain.com/build/protocol/overview.md): Berachain-supported EIPs and chain-level capabilities for developers. +- [PoL Governance](https://docs.berachain.com/general/governance/reward-vault-governance.md): Governance controls for Proof of Liquidity: vault whitelisting, emission parameters, incentive fee routing, and DES. +- [Frequently Asked Questions](https://docs.berachain.com/general/help/faqs.md): Common questions about Berachain. +- [Glossary](https://docs.berachain.com/general/help/glossary.md): Technical terms used across Berachain docs. +- [Honeypaper](https://docs.berachain.com/general/help/honeypaper.md): Berachain Proof of Liquidity honeypaper. +- [Reward Vault Requirements and Guidelines](https://docs.berachain.com/general/help/reward-vault-guidelines.md): Ecosystem value, technical requirements, and governance rules for Reward Vault whitelisting and WBERA emissions. +- [Connect to Berachain](https://docs.berachain.com/general/introduction/connect-to-berachain.md): Add Berachain to your wallet and switch networks. +- [How to Get $BERA](https://docs.berachain.com/general/introduction/how-to-get-bera.md): Bridge, buy, or earn $BERA for gas and staking. +- [What is Berachain?](https://docs.berachain.com/general/introduction/what-is-berachain.md): EVM-identical L1, Proof-of-Liquidity consensus, and BeaconKit. +- [What is Proof of Liquidity?](https://docs.berachain.com/general/introduction/what-is-proof-of-liquidity.md): Berachain’s economic coordination system for turning network emissions into productive liquidity, application growth, and ecosystem value. +- [Block Production & Rewards](https://docs.berachain.com/general/proof-of-liquidity/block-rewards.md): Block production, fixed WBERA reward rate, and reward distribution. +- [What's New](https://docs.berachain.com/general/proof-of-liquidity/changelog.md): Proof of Liquidity changes over time. +- [Dedicated Emission Stream (DES)](https://docs.berachain.com/general/proof-of-liquidity/dedicated-emission-stream.md): Governance-guaranteed WBERA emission for strategically important vaults. +- [Incentive Marketplace](https://docs.berachain.com/general/proof-of-liquidity/incentives.md): How businesses and protocols bid for validator-allocated WBERA emissions. +- [Proof-of-Liquidity Overview](https://docs.berachain.com/general/proof-of-liquidity/overview.md): How BERA stake, WBERA emissions, Reward Vaults, Dedicated Emission Streams, incentives, and sWBERA fit together. +- [Reward Vaults](https://docs.berachain.com/general/proof-of-liquidity/reward-vaults.md): Where $WBERA emissions flow, how Reward Vault incentives work, and how vault rewards are claimed. +- [BERA Token](https://docs.berachain.com/general/tokens/bera.md): Gas token, staking, tokenomics, and how to get BERA. +- [BGT Token](https://docs.berachain.com/general/tokens/bgt.md) +- [HONEY Stablecoin](https://docs.berachain.com/general/tokens/honey.md): Minting, redemption, collateral, and basket mode. +- [$sWBERA Token](https://docs.berachain.com/general/tokens/swbera.md): What is the $sWBERA token and how does it work. +- [Introduction](https://docs.berachain.com/index.md): Official documentation for Berachain - the first blockchain powered by Proof-of-Liquidity +- [BeaconKit Consensus](https://docs.berachain.com/nodes/architecture/beaconkit-consensus.md): Consensus client and framework for EVM chains: CometBFT, Engine API, Eth2 modularity, and execution client diversity. +- [EVM Execution](https://docs.berachain.com/nodes/architecture/evm-execution.md): Recommended versions and genesis files for mainnet and Bepolia. +- [Validator Lifecycle](https://docs.berachain.com/nodes/architecture/validator-lifecycle.md): Validator states and transitions: Deposited, Eligible, Active, Exited, and Withdrawn; activation queue and stake requirements. +- [BeaconKit API](https://docs.berachain.com/nodes/beaconkit/api.md) +- [BeaconKit CLI](https://docs.berachain.com/nodes/beaconkit/cli.md) +- [BeaconKit Configuration](https://docs.berachain.com/nodes/beaconkit/configuration.md) +- [What is BeaconKit?](https://docs.berachain.com/nodes/beaconkit/overview.md): Modular consensus layer for Ethereum-based chains. +- [Becoming a Validator](https://docs.berachain.com/nodes/guides/become-a-validator.md): Register and activate a validator: beacond setup, deposit transaction, BeaconDeposit contract, operator and withdrawal address. +- [Change Operator Address](https://docs.berachain.com/nodes/guides/change-operator-address.md): Update the validator operator address on the execution layer (BeaconDeposit) for BeraChef and other contract interactions. +- [Increase Stake](https://docs.berachain.com/nodes/guides/increase-validator-stake.md): Add BERA to an existing validator via the BeaconDeposit contract to improve position in the active set. +- [Local Devnet with Docker](https://docs.berachain.com/nodes/guides/local-devnet-docker.md): Run a local Berachain devnet with Docker for testing validator flows and deposits. +- [Local Devnet with Kurtosis](https://docs.berachain.com/nodes/guides/local-devnet-kurtosis.md): Run a local Berachain devnet with Kurtosis for development and testing validator deposits. +- [Manage Incentives Commission](https://docs.berachain.com/nodes/guides/manage-incentives-commission.md): Set and change the validator incentives commission rate (0–20%) via BeraChef; queue and activation delay. +- [Manage Reward Allocations](https://docs.berachain.com/nodes/guides/manage-reward-allocations.md): Direct PoL incentives to applications via BeraChef +- [Withdraw Stake](https://docs.berachain.com/nodes/guides/withdraw-stake.md): Partial or full withdrawal of validator BERA: withdrawal credentials, fees, minimum stake, and finalization delay. +- [Validator FAQ](https://docs.berachain.com/nodes/help/faq.md): Frequently asked questions: getting BERA, technical support, and where to get help for node operations. +- [Migrate Bera-Geth -> Bera-Reth](https://docs.berachain.com/nodes/operations/bera-geth-to-reth.md): Replace your execution client, match your old configuration, install a snapshot. +- [Fusaka Upgrade](https://docs.berachain.com/nodes/operations/fusaka.md): Validator and developer changes from the Fusaka upgrade on Berachain. +- [Monitoring](https://docs.berachain.com/nodes/operations/monitoring.md): Set up Prometheus and Grafana to monitor BeaconKit and execution layer metrics, endpoints, and sample dashboards. +- [Production Checklist](https://docs.berachain.com/nodes/operations/production-checklist.md): Actionable pre-support checks for Beacon Kit (beacond) and Bera-Reth: versions, peering, launch flags, and ops hygiene. +- [Quickstart: Run a Node](https://docs.berachain.com/nodes/operations/quickstart.md): Prerequisites, scripts, and steps to run BeaconKit and Bera-Reth on Linux or Mac. +- [Self-Hosted RPC](https://docs.berachain.com/nodes/operations/self-hosted-rpc.md): Use RPCs efficiently, choose paid or self-hosted nodes, and run your own node when you need isolation or predictable throughput. +- [Introduction](https://docs.berachain.com/nodes/overview/index.md): Run validators and RPC nodes on Berachain: BeaconKit, architecture, operations, and staking pools. +- [Node Architecture](https://docs.berachain.com/nodes/overview/node-architecture.md): Validator and RPC node architecture: consensus and execution separation, Engine API, and dual P2P networks. +- [Staking Pool Contracts](https://docs.berachain.com/nodes/staking-pools/contracts.md): Addresses and ABIs for StakingPoolContractsFactory, DelegationHandlerFactory, WithdrawalVault, and per-pool proxies (StakingPool, SmartOperator, etc.). +- [Delegation Guide](https://docs.berachain.com/nodes/staking-pools/delegators.md): Use Foundation-delegated capital to run a staking pool: delegated create, activate, deposit, and withdraw yield. +- [Staking Pool Installation](https://docs.berachain.com/nodes/staking-pools/installation.md): Install and activate a staking pool with helper scripts: register, activate, set min effective balance, and optional stake. +- [Staking Pools Operator Guide](https://docs.berachain.com/nodes/staking-pools/operators.md): Configure and operate a staking pool: roles, commission, reward allocation, min effective balance, and front-end. +- [Staking Pools Overview](https://docs.berachain.com/nodes/staking-pools/overview.md): Validator-operated liquid staking: stBERA, contract architecture, security, staker experience, and PoL integration. From 9e43e714831dd6bdc04bf0a8e49d019114b2a1ed Mon Sep 17 00:00:00 2001 From: Camembear Date: Fri, 3 Jul 2026 11:40:38 -0400 Subject: [PATCH 5/6] generate llms.txt from docs metadata --- Makefile | 15 ++- README.md | 8 +- llms.txt | 12 +- scripts/generate-llms.mjs | 268 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 292 insertions(+), 11 deletions(-) create mode 100644 scripts/generate-llms.mjs diff --git a/Makefile b/Makefile index dd0e88c..71d4696 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -default: contracts-generate format check +default: contracts-generate llms-generate format check help: @echo "Common docs tasks:" @@ -14,6 +14,8 @@ help: @echo " make check-redirects # Verify all redirects land on HTTP 200 (needs running server)" @echo " # Override port: BASE_URL=http://localhost:3335 make check-redirects" @echo " make contracts-generate # Regenerate contract pages/snippets from data/contracts.json" + @echo " make llms-generate # Regenerate llms.txt from docs.json + page frontmatter" + @echo " make llms-check # Fail if llms.txt is stale" @echo " make check-pol-addresses # POLAddresses vs contracts.json summary (fails if not_ok > 0)" @echo " make list-pol-addresses-not-ok # List all not_ok POL address rows" @echo " make format # Reformat all .md and .mdx files with Prettier" @@ -23,9 +25,9 @@ help: dev: mint dev -check: check-validate check-links check-assets check-a11y check-vale check-redirects check-pol-addresses +check: llms-check check-validate check-links check-assets check-a11y check-vale check-redirects check-pol-addresses -check-validate: +check-validate: llms-check mint validate check-links: @@ -82,6 +84,12 @@ contracts-generate: node scripts/contracts/generate-pages.mjs make format +llms-generate: + node scripts/generate-llms.mjs + +llms-check: + node scripts/generate-llms.mjs --check + POL_ADDRESSES_SOL := ../contracts-internal/script/pol/POLAddresses.sol check-pol-addresses: @@ -102,4 +110,3 @@ list-pol-addresses-not-ok: mint-install: npm i -g mint - diff --git a/README.md b/README.md index 15649c7..1018b84 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ We welcome contributions from the community. Whether you're fixing a typo, clari - **Build** — Getting started, BEX, Bend, nodes, validators - **Reference** — APIs, contracts, and technical reference -Content is in MDX. Navigation and branding are configured in `docs.json`. +Content is in MDX. Navigation and branding are configured in `docs.json`. `llms.txt` is generated from navigation and page metadata; do not edit it by hand. --- @@ -52,6 +52,12 @@ Check that the docs build with no warnings or errors (recommended for CI and bef mint validate ``` +If page metadata or navigation changed, regenerate the committed LLM index too: + +```bash +make llms-generate +``` + --- ## Contributing diff --git a/llms.txt b/llms.txt index 6cfb227..1aa0962 100644 --- a/llms.txt +++ b/llms.txt @@ -78,7 +78,7 @@ - [Irys Upload with $BERA (Node.js)](https://docs.berachain.com/build/guides/community/irys-bera-nodejs.md): Upload files to Irys decentralized storage and pay with Berachain $BERA. Node.js script with Irys SDK. - [Bridging ERC20 with LayerZero V2](https://docs.berachain.com/build/guides/community/layerzero-oft.md): Bridge ERC20 tokens (e.g. $UNI) from Sepolia to Berachain using LayerZero V2 and the Omnichain Fungible Token (OFT) standard. - [Upgradeable Contracts (OpenZeppelin)](https://docs.berachain.com/build/guides/community/openzeppelin-upgrades.md): Deploy upgradeable contracts on Berachain using OpenZeppelin Upgrades (proxy pattern). -- [Overview](https://docs.berachain.com/build/guides/community/overview.md) +- [Community Developer Guides](https://docs.berachain.com/build/guides/community/overview.md): Awesome List of Community Developer Guides - [Particle Auth Core Vite](https://docs.berachain.com/build/guides/community/particle-auth-core-vite.md): Wallet connection and auth on Berachain using Particle Auth in a Vite app. - [Provably Fair NFTs with Pyth Entropy](https://docs.berachain.com/build/guides/community/pyth-entropy.md): Use Pyth Entropy on Berachain for verifiable randomness and provably fair NFT minting. Includes setup, deploy EntropyNFT contract, and request randomness. - [Pyth Oracle on Berachain](https://docs.berachain.com/build/guides/community/pyth-oracle.md): Query Pyth Network price data on Berachain with on-demand updates. Deploy consumer contract, fetch price payload, call updatePrice and getPrice. @@ -98,9 +98,9 @@ - [RewardVaultHelper Claim Flow](https://docs.berachain.com/build/pol/reward-vault-helper-claim-flow.md): Claim Reward Vault rewards as sWBERA or native BERA. - [Staking for Other Accounts](https://docs.berachain.com/build/pol/staking-for-other-accounts.md): Guide to using stakeOnBehalf functionality in Berachain Reward Vaults - [EIP-5792 Introduction](https://docs.berachain.com/build/protocol/eip5792-overview.md): Learn about EIP-5792 and how it enables wallet batching capabilities for improved user experience -- [Eip7702 basics](https://docs.berachain.com/build/protocol/eip7702-basics.md) +- [Understand EIP7702 Basics](https://docs.berachain.com/build/protocol/eip7702-basics.md): Learn the basics on understanding EIP7702 by setting code for an EOA - [EIP-7702 Batch Transactions](https://docs.berachain.com/build/protocol/eip7702-batch-transactions.md): Guide to batch transactions using EIP-7702 on Berachain. -- [Eip7702 gas sponsorship](https://docs.berachain.com/build/protocol/eip7702-gas-sponsorship.md) +- [EIP-7702 Gas Sponsorship with Anvil](https://docs.berachain.com/build/protocol/eip7702-gas-sponsorship.md): Set up a quick demo showcasing gas sponsorship on an Anvil fork unlocked by EIP-7702 - [Protocol Features](https://docs.berachain.com/build/protocol/overview.md): Berachain-supported EIPs and chain-level capabilities for developers. - [PoL Governance](https://docs.berachain.com/general/governance/reward-vault-governance.md): Governance controls for Proof of Liquidity: vault whitelisting, emission parameters, incentive fee routing, and DES. - [Frequently Asked Questions](https://docs.berachain.com/general/help/faqs.md): Common questions about Berachain. @@ -118,15 +118,15 @@ - [Proof-of-Liquidity Overview](https://docs.berachain.com/general/proof-of-liquidity/overview.md): How BERA stake, WBERA emissions, Reward Vaults, Dedicated Emission Streams, incentives, and sWBERA fit together. - [Reward Vaults](https://docs.berachain.com/general/proof-of-liquidity/reward-vaults.md): Where $WBERA emissions flow, how Reward Vault incentives work, and how vault rewards are claimed. - [BERA Token](https://docs.berachain.com/general/tokens/bera.md): Gas token, staking, tokenomics, and how to get BERA. -- [BGT Token](https://docs.berachain.com/general/tokens/bgt.md) +- [BGT Token](https://docs.berachain.com/general/tokens/bgt.md): BGT is a legacy token that is being deprecated. It was used in earlier iterations of Proof of Liquidity for governance and reward routing. - [HONEY Stablecoin](https://docs.berachain.com/general/tokens/honey.md): Minting, redemption, collateral, and basket mode. - [$sWBERA Token](https://docs.berachain.com/general/tokens/swbera.md): What is the $sWBERA token and how does it work. -- [Introduction](https://docs.berachain.com/index.md): Official documentation for Berachain - the first blockchain powered by Proof-of-Liquidity +- [Introduction](https://docs.berachain.com/index.md): Official Berachain documentation. Berachain is an EVM-identical L1 secured by Proof-of-Liquidity (PoL). Covers the BERA, BGT, WBERA, sWBERA, and HONEY tokens; reward vaults, incentives, boosts, block rewards, and the BeraChef, BlockRewardController, and Distributor contracts; BEX (the DEX) swaps, weighted and stable pools, liquidity provision, and the Smart Order Router (SOR); Bend lending, borrow/repay, collateral, LTV, liquidation, interest rate models, and oracles; running nodes and validators with Beacon Kit and Bera-Reth, staking pools, RPC endpoints, genesis, and snapshots; mainnet (chain ID 80094) and Bepolia testnet (80069); and building on Berachain with deployed contract addresses, ABIs, SDKs, Foundry, Hardhat, viem, and wagmi. Consult these docs for any Berachain, PoL, BGT, HONEY, BEX, Bend, or validator question. - [BeaconKit Consensus](https://docs.berachain.com/nodes/architecture/beaconkit-consensus.md): Consensus client and framework for EVM chains: CometBFT, Engine API, Eth2 modularity, and execution client diversity. - [EVM Execution](https://docs.berachain.com/nodes/architecture/evm-execution.md): Recommended versions and genesis files for mainnet and Bepolia. - [Validator Lifecycle](https://docs.berachain.com/nodes/architecture/validator-lifecycle.md): Validator states and transitions: Deposited, Eligible, Active, Exited, and Withdrawn; activation queue and stake requirements. - [BeaconKit API](https://docs.berachain.com/nodes/beaconkit/api.md) -- [BeaconKit CLI](https://docs.berachain.com/nodes/beaconkit/cli.md) +- [BeaconKit CLI](https://docs.berachain.com/nodes/beaconkit/cli.md): beacond, is an EVM consensus client implementation used as a basic beacon node for Berachain. See BeaconKit Consensus Layer for more details. - [BeaconKit Configuration](https://docs.berachain.com/nodes/beaconkit/configuration.md) - [What is BeaconKit?](https://docs.berachain.com/nodes/beaconkit/overview.md): Modular consensus layer for Ethereum-based chains. - [Becoming a Validator](https://docs.berachain.com/nodes/guides/become-a-validator.md): Register and activate a validator: beacond setup, deposit transaction, BeaconDeposit contract, operator and withdrawal address. diff --git a/scripts/generate-llms.mjs b/scripts/generate-llms.mjs new file mode 100644 index 0000000..e8969d1 --- /dev/null +++ b/scripts/generate-llms.mjs @@ -0,0 +1,268 @@ +#!/usr/bin/env node + +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), ".."); +const docsConfigPath = path.join(repoRoot, "docs.json"); +const outputPath = path.join(repoRoot, "llms.txt"); +const checkMode = process.argv.includes("--check"); + +const docsConfig = JSON.parse(fs.readFileSync(docsConfigPath, "utf8")); +const siteName = normalizeInlineText(docsConfig.name || "Documentation"); +const siteDescription = normalizeInlineText(docsConfig.description || ""); +const siteUrl = normalizeSiteUrl(docsConfig.logo?.href || "https://docs.berachain.com"); + +const pagePaths = collectPagePaths(docsConfig.navigation?.tabs || []); +const lines = pagePaths.map(renderPageLine).filter(Boolean); +const nextContent = `${[`# ${siteName}`, siteDescription ? `> ${siteDescription}` : "", "## Docs", lines.join("\n")] + .filter(Boolean) + .join("\n\n")}\n`; +const prevContent = fs.existsSync(outputPath) ? fs.readFileSync(outputPath, "utf8") : null; + +if (prevContent === nextContent) { + console.log(`Unchanged ${path.relative(repoRoot, outputPath)}`); + process.exit(0); +} + +if (checkMode) { + console.error("llms.txt is stale. Run: node scripts/generate-llms.mjs"); + process.exit(1); +} + +fs.writeFileSync(outputPath, nextContent); +console.log(`Generated ${path.relative(repoRoot, outputPath)}`); + +function collectPagePaths(tabs) { + const seen = new Set(); + + function addPagePath(pagePath) { + if (typeof pagePath !== "string" || !pagePath.trim()) { + return; + } + seen.add(pagePath); + } + + function visitPage(entry) { + if (typeof entry === "string") { + addPagePath(entry); + return; + } + + if (!entry || typeof entry !== "object") { + return; + } + + addPagePath(entry.root); + + if (Array.isArray(entry.pages)) { + entry.pages.forEach(visitPage); + } + } + + for (const tab of tabs) { + for (const group of tab.groups || []) { + for (const page of group.pages || []) { + visitPage(page); + } + } + } + + return Array.from(seen).sort((left, right) => left.localeCompare(right)); +} + +function renderPageLine(pagePath) { + const meta = readPageMeta(pagePath); + if (!meta) { + console.warn(`Skipping ${pagePath}; missing source file`); + return ""; + } + + const label = meta.title || slugToTitle(pagePath); + const description = meta.description ? `: ${meta.description}` : ""; + return `- [${label}](${siteUrl}/${pagePath}.md)${description}`; +} + +function readPageMeta(pagePath) { + const filePath = resolvePageFile(pagePath); + if (!filePath) { + return null; + } + + const raw = fs.readFileSync(filePath, "utf8"); + const { frontmatter, body } = splitFrontmatter(raw); + + const title = + extractFrontmatterValue(frontmatter, "title") || + extractHeadMetaContent(frontmatter, "og:title") || + extractFirstHeading(body) || + slugToTitle(pagePath); + const description = + extractFrontmatterValue(frontmatter, "description") || + extractHeadDescription(frontmatter) || + extractFirstParagraph(body); + + return { + title: normalizeInlineText(title), + description: normalizeInlineText(description) + }; +} + +function resolvePageFile(pagePath) { + for (const extension of [".mdx", ".md"]) { + const absolutePath = path.join(repoRoot, `${pagePath}${extension}`); + if (fs.existsSync(absolutePath)) { + return absolutePath; + } + } + + return null; +} + +function splitFrontmatter(raw) { + if (!raw.startsWith("---\n")) { + return { frontmatter: "", body: raw }; + } + + const end = raw.indexOf("\n---\n", 4); + if (end === -1) { + return { frontmatter: "", body: raw }; + } + + return { + frontmatter: raw.slice(4, end), + body: raw.slice(end + 5) + }; +} + +function extractFrontmatterValue(frontmatter, key) { + const match = frontmatter.match(new RegExp(`^${key}:\\s*(.+)$`, "m")); + return match ? stripWrappingQuotes(match[1].trim()) : ""; +} + +function extractHeadMetaContent(frontmatter, property) { + const lines = frontmatter.split("\n"); + for (let index = 0; index < lines.length; index += 1) { + if (!lines[index].includes(property)) { + continue; + } + + for (let nextIndex = index + 1; nextIndex < Math.min(index + 4, lines.length); nextIndex += 1) { + const match = lines[nextIndex].match(/^\s*content:\s*(.+)$/); + if (match) { + return stripWrappingQuotes(match[1].trim()); + } + } + } + + return ""; +} + +function extractHeadDescription(frontmatter) { + const lines = frontmatter.split("\n"); + for (let index = 0; index < lines.length; index += 1) { + if (!lines[index].match(/^\s*-?\s*name:\s*description\s*$/)) { + continue; + } + + for (let nextIndex = index + 1; nextIndex < Math.min(index + 4, lines.length); nextIndex += 1) { + const match = lines[nextIndex].match(/^\s*content:\s*(.+)$/); + if (match) { + return stripWrappingQuotes(match[1].trim()); + } + } + } + + return ""; +} + +function extractFirstHeading(body) { + const match = body.match(/^#\s+(.+)$/m); + return match ? match[1].trim() : ""; +} + +function extractFirstParagraph(body) { + const lines = body.split("\n"); + const paragraph = []; + let inCodeBlock = false; + + for (const line of lines) { + const trimmed = line.trim(); + + if (trimmed.startsWith("```") || trimmed.startsWith("~~~")) { + inCodeBlock = !inCodeBlock; + continue; + } + + if (inCodeBlock) { + continue; + } + + if (!paragraph.length && trimmed.startsWith("## ")) { + return ""; + } + + if (!trimmed) { + if (paragraph.length) { + break; + } + continue; + } + + if (!paragraph.length && shouldSkipParagraphLine(trimmed)) { + continue; + } + + paragraph.push(trimmed); + } + + return paragraph.join(" "); +} + +function shouldSkipParagraphLine(line) { + return ( + line.startsWith("#") || + line.startsWith("<") || + line.startsWith("import ") || + line.startsWith("export ") || + line.startsWith(":::") || + line.startsWith("|") || + /^[-*+]\s/.test(line) || + /^\d+\.\s/.test(line) + ); +} + +function normalizeInlineText(value) { + return String(value || "") + .replace(/\[([^\]]+)\]\([^)]+\)/g, "$1") + .replace(/[`*_~]/g, "") + .replace(/<[^>]+>/g, "") + .replace(/\\\$/g, "$") + .replace(/\s+/g, " ") + .trim(); +} + +function stripWrappingQuotes(value) { + if ( + (value.startsWith('"') && value.endsWith('"')) || + (value.startsWith("'") && value.endsWith("'")) + ) { + return value.slice(1, -1); + } + + return value; +} + +function slugToTitle(pagePath) { + const slug = pagePath.split("/").at(-1) || pagePath; + return slug + .split("-") + .filter(Boolean) + .map((part) => part.charAt(0).toUpperCase() + part.slice(1)) + .join(" "); +} + +function normalizeSiteUrl(url) { + return String(url || "https://docs.berachain.com").replace(/\/+$/, ""); +} From 0b120c86296c24090bb64787f0c1f3c6ccd1d169 Mon Sep 17 00:00:00 2001 From: Camembear Date: Fri, 3 Jul 2026 11:49:29 -0400 Subject: [PATCH 6/6] shorten homepage description --- index.mdx | 2 +- llms.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/index.mdx b/index.mdx index f4b388c..6a7a8d0 100644 --- a/index.mdx +++ b/index.mdx @@ -1,6 +1,6 @@ --- title: "Introduction" -description: "Official Berachain documentation. Berachain is an EVM-identical L1 secured by Proof-of-Liquidity (PoL). Covers the BERA, BGT, WBERA, sWBERA, and HONEY tokens; reward vaults, incentives, boosts, block rewards, and the BeraChef, BlockRewardController, and Distributor contracts; BEX (the DEX) swaps, weighted and stable pools, liquidity provision, and the Smart Order Router (SOR); Bend lending, borrow/repay, collateral, LTV, liquidation, interest rate models, and oracles; running nodes and validators with Beacon Kit and Bera-Reth, staking pools, RPC endpoints, genesis, and snapshots; mainnet (chain ID 80094) and Bepolia testnet (80069); and building on Berachain with deployed contract addresses, ABIs, SDKs, Foundry, Hardhat, viem, and wagmi. Consult these docs for any Berachain, PoL, BGT, HONEY, BEX, Bend, or validator question." +description: "Official Berachain documentation for Proof-of-Liquidity, BEX, Bend, nodes, and building on Berachain." ---