From openzeppelin-skills
Sets up Solidity smart contract projects with OpenZeppelin Contracts using Hardhat or Foundry. Covers project init, dependency installs, remappings, and import conventions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/openzeppelin-skills:setup-solidity-contractsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
For existing projects, detect the framework by looking for `hardhat.config.*` (Hardhat) or `foundry.toml` (Foundry). For new projects, ask the user which framework they prefer.
For existing projects, detect the framework by looking for hardhat.config.* (Hardhat) or foundry.toml (Foundry). For new projects, ask the user which framework they prefer.
npx hardhat init # Hardhat v2
npx hardhat --init # Hardhat v3
npm install @openzeppelin/contracts
npm install @openzeppelin/contracts-upgradeable
curl -L https://foundry.paradigm.xyz | bash
foundryup
forge init my-project
cd my-project
forge install OpenZeppelin/openzeppelin-contracts@v<VERSION>
forge install OpenZeppelin/openzeppelin-contracts-upgradeable@v<VERSION>
Look up the current version from https://github.com/OpenZeppelin/openzeppelin-contracts/releases. Pin to a release tag — without one,
forge installpulls the default branch, which may be unstable.
remappings.txt (if not using upgradeable contracts)@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/
remappings.txt (if using upgradeable contracts)@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/
@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/
Note The above remappings mean that both
@openzeppelin/contracts/(including proxy contracts) and@openzeppelin/contracts-upgradeable/come from theopenzeppelin-contracts-upgradeablesubmodule and its subdirectories, which includes its own transitive copy ofopenzeppelin-contractsof the same release version number. This format is needed for Etherscan verification to work. Particularly, any copies ofopenzeppelin-contractsthat are installed separately are NOT used.
@openzeppelin/contracts/token/ERC20/ERC20.sol@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.solnpx claudepluginhub openzeppelin/openzeppelin-skills --plugin openzeppelin-skillsUpgrades Solidity contracts with OpenZeppelin UUPS, Transparent, or Beacon proxies. Covers Hardhat/Foundry workflows, initializers, storage safety (ERC-7201), validation, and v4-v5 restrictions.
Guides writing production-grade Solidity smart contracts with defensive patterns, custom errors, fuzz testing, and structured code layout.
Deploys smart contracts on Abstract Ethereum L2 using Foundry (default) or Hardhat. Covers zksolc compilation, Abscan verification, testnet faucets, and zkSync-specific forge commands.