### Install Project Dependencies Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Installs necessary Node.js packages and Foundry dependencies for the project. Ensure Node.js and Foundry are installed beforehand. ```shell $ npm i $ forge install ``` -------------------------------- ### Run Slither Static Analysis Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Analyzes the smart contracts for vulnerabilities and code quality issues using Slither. Requires Python and the slither-analyzer package. ```shell $ pip3 install slither-analyzer $ npm run slither ``` -------------------------------- ### Build Smart Contracts with Foundry Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Compiles the Solidity smart contracts using the Foundry framework. This command generates the contract artifacts needed for testing and deployment. ```shell $ forge build ``` -------------------------------- ### Deploy Smart Contracts using Foundry Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Deploys the smart contracts to a specified network using Foundry's scripting capabilities. Requires an RPC URL and a private key for the deployer account. ```shell $ forge script script/Deploy.s.sol --broadcast --rpc-url --private-key $PRIVATE_KEY ``` -------------------------------- ### Run Fuzz Tests with Diligence Fuzzing Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Performs fuzz testing on the smart contracts using the diligence-fuzzing package. Requires Node.js (>=16), Python (>=3.6), and an FUZZ_AP_KEY in a .env file. ```shell $ pip3 install diligence-fuzzing $ fuzz forge test ``` -------------------------------- ### Run Manticore Symbolic Execution Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Executes symbolic analysis on the smart contracts using Manticore. Requires Docker to build and run the analysis environment. ```shell $ docker build -t manticore-analysis . $ docker run --rm -v "$(pwd)":/app manticore-analysis ``` -------------------------------- ### Run Unit Tests with Foundry Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Executes the unit tests for the smart contracts. The '-vvv' flag provides verbose output, useful for debugging test failures. ```shell $ forge test -vvv ``` -------------------------------- ### Deployed Contract Addresses Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md Lists the addresses of deployed smart contracts for various networks. These addresses are essential for interacting with the deployed instances of ProxyAdmin, TimelockController, EthMultiVault, and Admin Safe contracts. ```APIDOC Network: Base Mainnet ProxyAdmin: 0xc920E2F5eB6925faE85C69a98a2df6f56a7a245A TimelockController (proxy admin owner): 0xE4992f9805D7737b5bDaDBEF5688087CF25D4B89 EthMultiVault (proxy address): 0x430BbF52503Bd4801E51182f4cB9f8F534225DE5 Admin Safe: 0xa28d4AAcA48bE54824dA53a19b05121DE71Ef480 Network: Base Sepolia ProxyAdmin: 0xD4436f981D2dcE0C074Eca869fdA1650227c7Efe TimelockController (proxy admin owner): 0xe6BE2A42cCAeB73909A79CC89299eBDA7bAa7Ea2 EthMultiVault (proxy address): 0x1A6950807E33d5bC9975067e6D6b5Ea4cD661665 Admin Safe: 0xEcAc3Da134C2e5f492B702546c8aaeD2793965BB Network: Linea Mainnet (ValueSys) ProxyAdmin: 0x89e6a3c49cb1DF3D8Ee6036a158A728603CC1AD TimelockController (proxy admin owner): 0xA71B2185D10CaB95Cd0d2DA2B9b0210f8ed31A66 EthMultiVault (proxy address): 0xB4375293a13017BCe71a034bB588786A3D3C7295 Admin Safe: 0x323e9506B929C21AE602D64d3807721AA49b4884 ``` -------------------------------- ### Verify Smart Contracts with Forge Source: https://github.com/0xintuition/intuition-beta-contracts/blob/main/README.md This command verifies deployed smart contracts on Etherscan using the Forge CLI. It requires an Etherscan API key set as an environment variable (ETHERSCAN_API_KEY) and takes the contract address, contract name, and chain ID as parameters. An optional --constructor-args flag can be used to pass ABI-encoded constructor arguments. ```shell $ forge verify-contract <0x_contract_address> ContractName --watch --chain-id # Example with constructor arguments: # forge verify-contract <0x_contract_address> ContractName --watch --chain-id --constructor-args "0x..." ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.