setup-local-testnet

🧪 零 Gas 智能合约本地测试环境

基于 Foundry Anvil 的一键式 Uniswap 本地测试网部署工具,提供预置资金账户与真实链状态分叉,实现零 Gas 成本的智能合约开发与自动化测试。

收藏
8.6k
安装
1.9k
版本
v0.1.0
CLS 安全性认证2026-05-06
点击查看完整报告 >

使用说明

setup-local-testnet 是一个专为 Uniswap 生态设计的本地开发环境快速部署工具,通过集成 Foundry 的 Anvil 工具实现一键启动分叉测试网。用户仅需简单的自然语言指令,即可在本地启动具备完整 Uniswap 合约、预置流动性资金池及多账户资金的测试环境,彻底告别传统需要手动编写 30 余行 Shell 脚本、配置 RPC、模拟资金等繁琐流程。

该 Skill 的核心用法围绕 mcp__uniswap__setup_local_testnet 等 MCP 工具展开,支持灵活配置分叉源链(Ethereum、Base、Arbitrum 等)、特定区块高度、资金账户数量及流动性注入策略。启动后自动返回所有关键合约地址(V3Factory、PositionManager、UniversalRouter 等)及私钥,便于开发者立即开始交互测试。其输出设计充分考虑了与后续技能(如创建测试池、时间旅行等)的衔接,形成完整的开发测试闭环。

显著优点包括:第一,极致的便捷性,将原本数小时的测试网搭建工作压缩至秒级;第二,真实的链上状态,通过 Fork 模式获取主网真实流动性池状态,无需手动 Mock;第三,零 Gas 成本,所有交易在本地执行,配合每个账户预置的 10,000 ETH 及数百万稳定币,支持高频测试场景;第四,智能的端口管理,自动解决 8545 端口占用问题,确保多项目并行开发的兼容性。

然而,该 Skill 也存在一定局限性。首先,它高度依赖用户本地预装 Foundry/Anvil 工具,若环境缺失则无法运行;其次,Fork 模式需要稳定的网络连接访问主网 RPC,网络波动可能导致启动超时;第三,作为 T3 级社区项目(个人开发者维护),缺乏官方组织的长期维护背书;第四,测试网使用公开的默认私钥,虽便利但存在误用风险。

该工具最适合智能合约开发者、DeFi 协议集成工程师、自动化交易策略研究员以及需要演示 Uniswap 功能的 Educator。对于需要快速验证合约交互逻辑、测试时间敏感型功能(如 TWAP、锁仓释放)或进行无风险演示的场景尤为适用。

使用风险方面,需特别注意:尽管 Skill 本身为纯文档型、无自动执行代码,但文档中提供的 Foundry 安装脚本(curl | bash)需用户手动执行,建议先审查脚本内容;测试网私钥为 Anvil 公开的默认密钥,绝不可用于主网或存储真实资产;本地测试网默认监听 8545 端口,若部署在共享服务器或云环境需确保端口不暴露于公网,防止未授权访问;此外,长时间运行的 Fork 测试网可能因基础链状态变化而产生非确定性行为,建议定期重启。

安全解读

核心用法

setup-local-testnet 是一个面向区块链开发者的高效本地测试环境构建工具。用户仅需一句自然语言指令(如"启动本地测试网"),即可通过调用 mcp__uniswap__setup_local_testnet 等 MCP 工具完成以下全套配置:

  • 智能分叉模式:默认 fork 以太坊主网(可选 Base/Arbitrum/Optimism/Polygon),继承真实链上状态,无需 mock
  • 资金充裕的测试账户:自动生成 3 个(可扩展至 5 个)预充值账户,各含 10,000 ETH、100 万 USDC/USDT、1 万 DAI、100 WETH 及 1 万 UNI
  • 完整合约生态:自动返回 V3Factory、NonfungiblePositionManager、UniversalRouter、Permit2、QuoterV2 等关键合约地址
  • 端口智能管理:自动检测并规避 8545 端口冲突,清理历史测试网实例

显著优点

1. 极致效率:替代 30+ 行 shell 脚本,单命令完成 Anvil 启动、合约部署、资金分发
2. 真实环境:Fork 模式带来真实流动性池、实时价格与 tick 状态,测试置信度远高于纯 mock

3. 无缝集成:输出格式专为下游技能(create-test-pooltime-travel)设计,支持工作流串联

4. 零成本试错:完全本地运行,彻底规避主网 Gas 消耗与资金风险

潜在缺点与局限性

  • 环境依赖:必须本地安装 Foundry/Anvil,首次配置有一定门槛
  • 网络要求:Fork 模式需访问目标链 RPC,网络波动可能导致 TESTNET_STARTUP_TIMEOUT
  • T3 来源风险:维护者为个人开发者(wpank),非官方背书,长期维护稳定性存疑
  • Mock 模式未实现:当前仅支持 fork 模式,纯离线 mock 场景无法满足

适合人群

  • DeFi 协议开发者:需高频测试智能合约交互与流动性策略
  • Agent/自动化工具开发者:验证 Uniswap 相关 AI Agent 工作流
  • 教学与演示场景:快速搭建可复现的 Demo 环境,向非技术受众展示链上操作
  • 安全研究者:在隔离环境中复现与分析交易行为

常规风险

  • 私钥泄露风险:返回的私钥为 Anvil 默认测试密钥(如 0xac09...),严禁用于主网
  • 端口占用冲突:虽自动处理,但多实例并行可能导致状态混淆
  • RPC 节点依赖:Fork 的链状态随外部 RPC 变化,特定区块高度测试需显式指定 blockNumber

setup-local-testnet 内容

手动下载zip · 4.5 kB
README.mdtext/markdown
请选择文件