mcpField
A
add-vault-abi-methods

add-vault-abi-methods

github.com/tradingstrategy-ai开发82962 次安装今天更新
代码仓库

关于 add-vault-abi-methods

用于在 eth_defi 中为现有金库协议添加智能合约 ABI 方法的开发技能。它指导开发者检查代理类和 ABI、实现访问器,并通过分叉测试验证更改。

主要功能

  1. 01检查协议代理类与 ABI
  2. 02识别相关合约方法
  3. 03添加合约访问器
  4. 04编写 Anvil 主网分叉测试
  5. 05运行金库回归测试

适用场景

  1. 01为现有金库读取新增链上数据
  2. 02将智能合约方法封装为库访问器
  3. 03验证 ABI 方法集成及回归情况

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tradingstrategy-ai/web3-ethereum-defi --skill add-vault-abi-methods

安装后在 Claude Code 中输入/add-vault-abi-methods确认已加载。

详细介绍

添加金库 ABI 方法

这是用于添加智能合约的技能说明

输入

  1. 金库协议名称
  2. 智能合约地址和区块链,格式为区块链浏览器链接
  3. 要涵盖的方法

金库类

金库协议类位于 eth_defi/erc_4626/vault_protocol 文件夹中。每种金库协议都有自己的类。协议数量超过 40 种。有些协议会共享类,并扩展其他协议。

智能合约

每个金库类都会封装对以太坊智能合约的 JSON-RPC 调用。这些智能合约由 eth_defi/abi 文件夹中的 ABI 文件描述。

第 1 步)确定代理类

确定金库协议使用的代理类。

  • 确定 eth_defi/erc_4626/vault_protocol 文件夹下的代理类。
  • 该协议可能没有代理类。遇到这种情况时,请报告并终止。

第 2 步)确定 ABI 文件

确定此任务应使用的 ABI 文件。

  • 检查 eth_defi/abi 文件夹中是否已有下载的 ABI 文件
  • 检查这些 ABI 文件是否与我们要找的文件相似。如果不相似,请总结差异并询问用户如何继续,然后停止。

第 3 步)在金库协议代理类中添加 ABI 文件加载

请参阅 YearnV3Vault.vault_contract 属性作为示例。

第 4 步)查找与任务相关的方法

  • 阅读 ABI 文件
  • 阅读协议文档
  • 确定相关的智能合约方法

第 5 步)创建访问器方法

请参阅 IPORVault.get_performance_fee() 方法作为示例。

  • 如何调用智能合约
  • 如何解读结果

第 6 步)编写测试用例

请参阅 test_ipor_fee 测试用例作为示例。

  • 使用基于 Anvil 主网分叉的方法编写测试
  • 对指定链使用最新区块号;如测试用例需要,可使用 get-block-number 技能
  • 运行测试
  • 修复潜在问题

第 7 步)检查回归

确认没有意外破坏任何功能。

使用以下命令运行所有金库测试:

source .local-test.env && poetry run pytest -n auto -k vault_protocol

第 8 步)反馈结果

  • 关于智能合约功能运作方式以及结果如何转换的发现
  • 创建的文件
  • 创建的访问器方法

评论

支持 Markdown