8.1 KiB
Monad 区块链开发助手
区块链 智能合约 Monad DeFi Foundry AI辅助开发
Monad Wingman
一款以 Agent Skill 形式构建的 Monad 区块链开发全能导师与指南。涵盖使用 Foundry + Scaffold-Monad 工具链进行智能合约开发、DeFi 协议集成,以及针对 Monad 并行执行 EVM 兼容 L1 的安全最佳实践。
快速开始
在 AI 辅助下从零构建 Monad dApp:
# 1. 创建新项目目录
mkdir my-monad-project
cd my-monad-project
# 2. 安装 Monad Wingman skill
npx skills add monad-wingman
# 3. 用 Cursor(或其他支持 AI 的编辑器)打开
cursor .
然后直接告诉 AI 你想构建什么:
"帮我在 Monad 上构建一个质押合约"
"创建一个带买卖功能的代币"
"构建一个 NFT 系列并部署到 Monad 测试网"
Monad Wingman 将会:
- 搭建 Foundry 或 Scaffold-Monad 项目
- 为 Monad 进行配置(prague EVM、--legacy 标志、正确的链 ID)
- 提醒你关键的注意事项(gas 上限计费、代币精度、重入攻击等)
- 指导安全最佳实践
- 附带正确的验证步骤将合约部署到 Monad 测试网
什么是 Monad Wingman?
Monad Wingman 是一套知识库与提示词系统,帮助 AI 代理协助开发者在 Monad 上进行开发。内容涵盖:
- 智能合约挑战:12 个学习模块(NFT、质押、DEX、借贷、预言机等)
- Foundry 工具链:以 forge 脚本、Anvil 测试、Monad 部署为核心的主要工作流
- Scaffold-Monad:含 React/Next.js 前端的全栈 dApp 脚手架
- DeFi 协议:Monad 上的 Uniswap V3、Euler、Morpho、Kuru、Fastlane、Pyth 使用模式
- ERC 标准:ERC-20、721、1155、4626 的完整指南
- Monad 架构:并行执行、MonadBFT、gas 上限计费、储备余额
- 安全性:关键注意事项(通用 + Monad 专属)、历史漏洞案例、上线前检查清单
安装
通过 skills.sh 安装(推荐)
npx skills add monad-wingman
兼容 Cursor、Claude Code、Codex、OpenCode 及其他 AI 编程助手。
手动安装
Cursor:
将 .cursorrules 复制到项目根目录,或添加到 Cursor 全局规则中。
Claude Code:
在项目说明中引用 CLAUDE.md 文件。
目录结构
monad-wingman/
├── skills/
│ └── monad-wingman/ # skills.sh 兼容包
│ ├── SKILL.md # 含 frontmatter 的 Skill 定义
│ ├── AGENTS.md # 完整编译后的指令
│ ├── metadata.json # Skill 元数据
│ ├── README.md # Skill 文档
│ ├── scripts/ # 辅助脚本
│ │ ├── init-project.sh
│ │ └── check-gotchas.sh
│ └── references/ # 核心知识文件
├── knowledge/
│ ├── challenges/ # 12 个智能合约挑战模块
│ ├── protocols/ # DeFi 协议文档(Uniswap、Euler、Morpho、Kuru 等)
│ ├── standards/ # ERC 标准
│ ├── foundations/ # Monad 基础、Solidity、预言机、生态系统
│ └── gotchas/ # 安全知识
├── tools/
│ ├── scaffold-eth/ # Scaffold-Monad 文档
│ ├── deployment/ # 部署模式
│ ├── testing/ # 前端测试
│ └── security/ # 安全工具
├── prompts/ # AI 代理提示词(构建、教学、审查、调试)
├── data/
│ └── addresses/ # Monad 上的代币、协议、鲸鱼地址
├── AGENTS.md # skills/monad-wingman/AGENTS.md 的软链接
├── skill.json # Skill 清单
├── .cursorrules # Cursor IDE 集成
└── CLAUDE.md # Claude Code 集成
核心概念
最重要的概念
链上没有任何事情是自动发生的。
智能合约无法自动执行。对于任何"需要发生"的函数:
- 让任何人都可以调用(而非仅限管理员)
- 给调用者一个理由(利润、奖励、自身利益)
- 确保激励足以覆盖 gas 费用并有盈余
Wingman 始终会问:"谁来调用这个函数?他们为何要支付 gas?"
关键注意事项
每位 Monad 开发者必须了解:
- 代币精度各异:USDC = 6 位,WBTC = 8 位,大多数 = 18 位
- 需要 Approve 模式:合约在调用 transferFrom 前需要授权
- 重入攻击:始终使用检查-效果-交互模式 + ReentrancyGuard
- 预言机操纵:永远不要使用 DEX 现货价格
- 无浮点数:使用基点(500/10000 = 5%)
- Gas 上限计费(Monad):按 gas_limit 收费,而非实际用量——请设置严格上限!
- 储备余额(Monad):EIP-7702 委托 EOA 的余额不能低于 10 MON
- --legacy 标志(Monad):在 Monad 上使用 forge/cast 时始终加上
--legacy
Monad 链配置
| 网络 | 链 ID | RPC |
|---|---|---|
| 主网 | 143 | https://rpc.monad.xyz |
| 测试网(默认) | 10143 | https://testnet-rpc.monad.xyz |
| 本地(Anvil) | 31337 | http://localhost:8545 |
- 原生代币:MON(18 位精度)
- EVM 版本:prague
- Solidity:推荐 0.8.28
- 合约最大体积:128KB
智能合约挑战
| 挑战 | 概念 |
|---|---|
| 简单 NFT | ERC-721、铸造、元数据 |
| 去中心化质押 | 协调机制、截止日期、托管 |
| 代币售卖机 | ERC-20 授权模式 |
| 骰子游戏 | 随机数漏洞 |
| DEX | AMM、恒定乘积公式 |
| 预言机 | 价格数据源、防操纵 |
| 借贷 | 抵押机制、清算 |
| 稳定币 | 锚定机制 |
| 预测市场 | 结果结算 |
| ZK 投票 | 隐私保护治理 |
| 多签 | 门限签名 |
| SVG NFT | 链上生成艺术 |
使用示例
构建模式
- "帮我在 Monad 上构建一个带买卖功能的代币"
- "搭建一个带奖励的质押合约"
- "用 Scaffold-Monad 创建一个 NFT 铸造页面"
教学模式
- "Monad 上的并行执行是如何工作的?"
- "解释 AMM 中的恒定乘积公式"
- "借贷协议有哪些安全注意事项?"
代码审查模式
- "检查这个提款函数是否存在漏洞"
- "检查这个 vault 合约是否存在通胀攻击风险"
- "审计这个 Monad 上的预言机集成"
调试模式
- "为什么我的交易在 Monad 测试网上回滚了?"
- "我遇到了 'transaction type not supported' 错误——怎么解决?"
- "调试这个 gas 不足的问题"
Monad 上的 DeFi 协议
- Uniswap V3 —— AMM,集中流动性
- Euler —— 模块化借贷协议
- Morpho —— 借贷优化
- Kuru —— Monad 原生订单簿 DEX
- Fastlane —— MEV 基础设施
- Chainlink / Pyth —— 预言机与价格数据源
- Kintsu / Magma —— 流动性质押(shMON、gMON)
- LayerZero / Wormhole —— 跨链桥
贡献
添加新内容:
- 将 Markdown 文件添加到对应目录
- 遵循现有格式(代码示例、安全说明)
- 如添加新功能,更新 skill.json
- 与 AI 代理测试以确保内容清晰
资源
许可证
MIT 许可证——可自由用于学习和开发。
致谢
为 Monad 开发者社区而构建。
派生自 BuidlGuidl 的 Ethereum Wingman。原版 Ethereum Wingman 提供了基础知识库结构和智能合约挑战体系。Monad Wingman 在此基础上针对 Monad 生态系统进行了适配与扩展,新增了 Monad 专属工具链、注意事项、部署工作流及 DeFi 协议文档。
整合了来自以下来源的知识: