Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
lidofinance/staking-modules: Smart contracts for the staking modules of the Lido protocol

lidofinance/staking-modules: Smart contracts for the staking modules of the Lido protocol

Staking Modules Logo

Lido Staking Modules

Intro

Smart contracts for the staking modules of the Lido protocol. Three modules ship from this repository and share a common code base:

  • Community Staking Module (CSM) — permissionless module for community stakers. See more in CSM docs.
  • CSM 0x02 — CSM dedicated to validators with the 0x02 withdrawal credentials prefix.
  • Curated Module v2 (CMv2) — next iteration of Lido's curated module. Reuses CSM components to introduce bond-based security, flexible operator classification, improved incentive alignment, and lower governance friction compared to the legacy curated module.

Repository layout

  • src/ — Solidity sources
  • script/ — deploy and helper scripts
  • test/Foundry tests
  • artifacts/ — per-chain deployment artifacts (mainnet/, hoodi/, plus latest/ and local/ working dirs)

Getting Started

Prerequisites:

  • Foundry — version pinned in .foundryref.
  • Just 1.24.0 or later.
  • Yarn — 4.1 or later.
  • jq 1.6 or later.
  • OpenBSD-flavored nc (netcat) on some Linux distributions (e.g. Arch) for local fork recipes.
Bootstrap
just deps

Build and run unit tests

just build
just test-unit

Run just --list to see all available recipes.

Utility contracts

The repository also ships a few utilities used for the modules:

  • TwoPhaseFrameConfigUpdate — shifts the Oracle report window by reconfiguring the HashConsensus in a safe manner
  • OneShotCurveSetup — atomically adds a new bond curve and applies its parameter overrides

ICS Assessment

Python utilities for assessing Identified Community Stakers (ICS) eligibility across engagement, experience, and humanity categories live in ics_assessment/. Methodology and scoring are described in the Research Forum post; see ics_assessment/README.md for usage.

Contributing

See the Contributing Guide and repository conventions in AGENTS.md.

Chat with me