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. 04Anvil のメインネットフォークテスト作成
  5. 05ボールト回帰テストの実行

活用シーン

  1. 01既存ボールトへのオンチェーンデータ取得追加
  2. 02ライブラリのアクセサーによるコントラクトメソッド公開
  3. 03ABI メソッドの統合と回帰のテスト

インストール

コマンドをコピーしてターミナルで実行します。

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

インストール後、Claude Code で/add-vault-abi-methodsを入力して読み込まれたか確認します。

詳細

vault ABI メソッドの追加

スマートコントラクトを追加するためのスキルの説明です。

入力

  1. Vault プロトコル名
  2. スマートコントラクトアドレスとブロックチェーン(ブロックチェーンエクスプローラーのリンク)
  3. 対象とするメソッド

Vault クラス

Vault プロトコルのクラスは、eth_defi/erc_4626/vault_protocol フォルダーにあります。各 Vault プロトコルには独自のクラスがあります。プロトコルは 40 種類以上あります。一部のプロトコルはクラスを共有し、他のプロトコルを拡張しています。

スマートコントラクト

各 Vault クラスは、Ethereum スマートコントラクトへの JSON-RPC 呼び出しをラップします。これらのスマートコントラクトは、eth_defi/abi フォルダー内の ABI ファイルで記述されています。

Step 1) プロキシクラスを特定する

Vault プロトコルで使用されているプロキシクラスを特定します。

  • eth_defi/erc_4626/vault_protocol フォルダー内のプロキシクラスを特定します。
  • プロトコルにプロキシクラスがない場合があります。その場合はその旨を報告し、作業を中止します。

Step 2) ABI ファイルを特定する

この作業で使用する ABI ファイルを特定します。

  • eth_defi/abi フォルダーに、すでにダウンロード済みの ABI ファイルがあるか確認します。
  • ABI ファイルが類似しているか確認します。類似していない場合は、違いを要約してユーザーに進め方を確認し、その後作業を中止します。

Step 3) Vault プロトコルのプロキシクラスに ABI ファイルの読み込みを追加する

例として、YearnV3Vault.vault_contract プロパティを参照してください。

Step 4) 作業に関連するメソッドを見つける

  • ABI ファイルを読みます。
  • プロトコルのドキュメントを読みます。
  • 関連するスマートコントラクトのメソッドを特定します。

Step 5) アクセサーメソッドを作成する

例として、IPORVault.get_performance_fee() メソッドを参照してください。

  • スマートコントラクトの呼び出し方
  • 結果の解釈方法

Step 6) テストケースを書く

例として、test_ipor_fee テストケースを参照してください。

  • Anvil のメインネットフォークを使った方法でテストを書きます。
  • 名前付きチェーンの最新ブロック番号を使用します。テストケースで必要な場合は、get-block-number スキルを使用します。
  • テストを実行します。
  • 潜在的な問題を修正します。

Step 7) リグレッションを確認する

意図せず何かを壊していないことを確認します。

次のコマンドですべての Vault テストを実行します。

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

Step 8) 結果を報告する

  • スマートコントラクトの機能と、結果の変換方法に関する調査結果
  • 作成したファイル
  • 作成したアクセサーメソッド

コメント