grimoire-morpho-blue について
grimoire-morpho-blueは、戦略作成やエージェントのワークフロー向けに、Morpho Blueのデプロイ情報、マーケット、Vaultデータを照会するスキルです。APYや流動性指標を確認し、出典情報付きのspell用パラメータスナップショットを生成します。
主な機能
- 01デプロイ情報とコントラクトアドレスの照会
- 02Vaultの絞り込みと並べ替え
- 03Vaultパラメータスナップショットの生成
- 04Vault V2の引き出し可能流動性の確認
- 05APY、利用率、Vault指標の比較
活用シーン
- 01チェーン、資産、利回り条件によるVault検索
- 02Vaultの引き出し可能流動性の確認
- 03マーケットAPYや利用率の比較
- 04spell用Vaultデータパラメータの生成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ franalgaba/ grimoire --skill grimoire-morpho-blueインストール後、Claude Code で/grimoire-morpho-blueを入力して読み込まれたか確認します。
詳細
Grimoire Morpho Blue スキル
このスキルを使って、spell パラメーター用の Morpho Blue のデプロイメタデータとボールトのスナップショットを照会します。
推奨される実行方法:
grimoire venue morpho-blue ...npx -y @grimoirelabs/cli venue morpho-blue ...(インストール不要)bun run packages/cli/src/index.ts venue morpho-blue ...(リポジトリ内)grimoire-morpho-blue ...(@grimoirelabs/venuesの直接実行バイナリ)
推奨される事前チェック:
grimoire venue doctor --adapter morpho-blue --chain 8453 --rpc-url <rpc> --json
--format spell を使うと、params: スナップショットブロックを出力できます。
スナップショットには、出典情報のフィールド(snapshot_at、snapshot_source)と APY データが含まれます。
Morpho Vault V2 全体の出金流動性には vault-liquidity を使います。オンチェーンの Vault V2 フィールドを読み取り、Morpho Market V1 流動性アダプターの資産額を、利用可能な基礎資産市場の現金残高で上限設定します。Vault V2 では意図的に 0 を返すため、ERC-4626 の maxWithdraw/maxRedeem は使用しません。
APY の意味:
apy/net_apyは小数形式の利率です(例:0.0408=4.08%)。- 報告時には、可能な限り小数形式とパーセント表示の両方を含めてください。
コマンド
grimoire venue morpho-blue info— アダプターのメタデータgrimoire venue morpho-blue addresses [--chain <id>]— チェーンごとのコントラクトアドレスgrimoire venue morpho-blue vaults [--chain <id>] [--asset <symbol>] [--min-tvl <usd>] [--min-apy <decimal>] [--min-net-apy <decimal>] [--sort <netApy|apy|tvl|totalAssetsUsd|name>] [--order <asc|desc>] [--limit <n>]— ボールトの一覧表示と絞り込みgrimoire venue morpho-blue vaults-snapshot [--chain <id>] [--asset <symbol>] [--min-tvl <usd>] [--min-apy <decimal>] [--min-net-apy <decimal>] [--sort <netApy|apy|tvl|totalAssetsUsd|name>] [--order <asc|desc>] [--limit <n>]— ボールト用の spellparams:ブロックを生成します(エージェント専用)grimoire venue morpho-blue vault-liquidity [--chain <id>] --vault <address> [--rpc-url <url>] [--format json|table|spell]— Morpho Vault V2 の出金可能流動性を、資産単位と整数の bps で読み取ります
例
grimoire venue morpho-blue info --format table
grimoire venue morpho-blue addresses --chain 1
grimoire venue morpho-blue addresses --chain 8453
grimoire venue morpho-blue vaults --chain 8453 --asset USDC --min-tvl 5000000 --format table
grimoire venue morpho-blue vaults --chain 8453 --asset USDC --min-tvl 5000000 --format spell
grimoire venue morpho-blue vaults-snapshot --chain 8453 --asset USDC --min-tvl 5000000
grimoire venue morpho-blue vault-liquidity --chain 8453 --vault 0xbeef0e0834849aCC03f0089F01f4F1Eeb06873C9 --format json
grimoire venue morpho-blue vault-liquidity --chain 8453 --vault 0xbeef0e0834849aCC03f0089F01f4F1Eeb06873C9 --format spell
spell 入力用の params: ブロックを出力するには、vaults-snapshot を使います。これはエージェント専用のコマンドです(対話モードでは出力が抑制されます)。
vault-liquidity --format spell は、protocol: morpho-vault-v2、metric: withdrawable_liquidity_bps、withdrawable_liquidity_assets、total_assets、idle_assets、liquidity_adapter、liquidity_adapter_assets の、ペイロードに使用できる JSON パラメーターを出力します。
保持すべき出典情報の出力フィールドの例:
snapshot_atsnapshot_sourceunits(例:net_apy=decimal、net_apy_pct=percent、tvl_usd=usd)
メトリクスの範囲(spell 比較)
Morpho は apy メトリクスの範囲を公開し、セレクターによる市場指定をサポートします。
morpho_apy_default = apy(morpho, USDC)
morpho_apy_market = apy(morpho, USDC, "weth-usdc-86")
morpho_apy_market_id = apy(morpho, USDC, "0x...")
morpho_apy_generic = metric("apy", morpho, USDC, "wbtc-usdc-86")
morpho_utilization_bps = metric("utilization_bps", morpho, USDC, "wbtc-usdc-86")
vault_apy = metric("vault_apy", morpho, USDC, "vault=0xVaultAddress")
vault_net_apy = metric("vault_net_apy", morpho, USDC, "vault=0xVaultAddress")
vault_withdrawable_liquidity_bps = metric("withdrawable_liquidity_bps", morpho, USDC, "vault=0xVaultAddress")
Morpho Blue 市場の APY を比較するには、apy(morpho, asset[, selector]) を使います。
Morpho Blue 市場の利用率を確認するには、metric("utilization_bps", morpho, asset[, selector]) を使います。
MetaMorpho ボールトを比較するには、metric("vault_apy", morpho, asset, selector) または metric("vault_net_apy", morpho, asset, selector) を使います。
Morpho Vault V2 の現在の出金流動性を確認するには、metric("withdrawable_liquidity_bps", morpho, asset, selector) を使います。
セレクターの動作:
- 市場のセレクターなし(
apy):アクティブチェーン上でassetによって解決し、TVL が最も高い一致を選びます - 設定済みの市場セレクター:アダプター設定にある既知の市場 ID を使います(例:
weth-usdc-86) - オンチェーン市場 ID セレクター:生の市場 ID(
0x...)を使います - ボールトセレクター(
vault_apy/vault_net_apy):vault=<address|name|symbol>またはボールトのアドレス/名前/シンボルをそのまま指定します vault_apy/vault_net_apyには明示的なセレクターが必要です(暗黙のフォールバックはありません)
1 つの資産に複数のボールト/市場がある場合は、比較結果を決定的にするため、明示的なセレクターを指定してください。
スペルの制約
Morpho Blue のアクションは、実行時の制約(max_slippage など)をサポートしていません。価値を移動するアクションには、明示的な market_id が必要です。
morpho_blue.lend(USDC, params.amount, "cbbtc-usdc-86")
morpho_blue.withdraw(USDC, params.amount, "cbbtc-usdc-86")
morpho_blue.borrow(USDC, params.amount) with (
market_id="cbbtc-usdc-86",
)
morpho_blue.supply_collateral(cbBTC, params.amount, "cbbtc-usdc-86")
morpho_blue.withdraw_collateral(cbBTC, params.amount, "cbbtc-usdc-86")
位置引数が使いにくい場合は、with (market_id=...) を使用してください。
morpho_blue.lend(USDC, params.amount) with (
market_id="0x1234...abcd",
)
grimoire venue morpho-blue vaults を使用して、利用可能なマーケット ID を確認してください。
アクションの選択ガイド
戦略の意図に応じてアクションを選択してください。
- 供給のみの戦略(借入の予定なし):
vault_deposit/vault_withdrawを優先してください。 - 借入戦略(または今後の借入/返済/担保管理):明示的な
market_idを指定してマーケットアクションを使用してください。
厳守事項:
vault_deposit/vault_withdrawには明示的なボールトアドレスが必要で、market_idは使用しません。lend、withdraw、borrow、repay、supply_collateral、withdraw_collateralには明示的なmarket_idが必要です。- ボールトアクションに必要なボールトアドレスが指定されていない場合は、推測しないでください。候補となるボールトを一覧表示し、作成/実行する前にユーザーに選択してもらってください。
アクションの意味
lend(asset, amount, market_id):マーケットのローン資産を貸し出します(貸し手側)。withdraw(asset, amount, market_id):以前貸し出したローン資産を引き出します。supply_collateral(asset, amount, market_id):借入のために担保を預け入れます(借り手側)。withdraw_collateral(asset, amount, market_id):預け入れた担保を引き出します。borrow(asset, amount, collateral?, market_id):マーケットのローン資産を借り入れます。repay(asset, amount, market_id):借り入れたローン資産を返済します。vault_deposit(asset, amount, vault_address):MetaMorpho ボールトに預け入れます。vault_withdraw(asset, amount, vault_address):MetaMorpho ボールトから引き出します。
lend と supply_collateral は互換性がありません。
lendは、ローン資産による貸し手向け利回りを対象とします。supply_collateralは、借入余力を確保するための担保管理です。
APY に関する想定:
lendではマーケットの供給 APY(およびインセンティブがある場合はその利回り)が発生します。supply_collateralではマーケットの貸し手向け APY は得られません。借入に対するリスクバッファーです。- 担保トークンには、Morpho の供給 APY とは別に、独自のネイティブ利回りがある場合があります(例:wstETH)。
ワークフローのパターン
ボールト経由で供給のみを行う場合:
morpho_blue.vault_deposit(USDC, params.amount, "0xVaultAddress")
ボールトが指定されていない場合は、最初に検索を実行し、ユーザーに選択してもらってください。
grimoire venue morpho-blue vaults --chain <id> --asset <symbol> --sort netApy --order desc --limit 5 --format table
次に、選択したボールトアドレスを vault_deposit / vault_withdraw で使用してください。
借入ワークフロー(マーケット):
morpho_blue.supply_collateral(WETH, params.collateral_amount, "weth-usdc-86")
morpho_blue.borrow(USDC, params.borrow_amount, WETH, "weth-usdc-86")
借入を解消するワークフロー:
morpho_blue.repay(USDC, params.repay_amount, "weth-usdc-86")
morpho_blue.withdraw_collateral(WETH, params.collateral_out, "weth-usdc-86")
マーケット経由で貸し出す場合(マーケットを明示的に管理したい場合):
morpho_blue.lend(USDC, params.amount, "cbbtc-usdc-86")
デフォルトのマーケット
このアダプターには、Ethereum(チェーン 1)および Base(チェーン 8453)向けのマーケットが事前設定されています。
Ethereum(チェーン 1)
| マーケット | ローン | 担保 | LLTV |
|---|---|---|---|
| cbbtc-usdc-1 | USDC | cbBTC | 86% |
| wbtc-usdc-1 | USDC | WBTC | 86% |
| wsteth-weth-1 | WETH | wstETH | 96.5% |
Base(チェーン 8453)
| マーケット | ローン | 担保 | LLTV |
|---|---|---|---|
| cbbtc-usdc-86 | USDC | cbBTC | 86% |
| weth-usdc-86 | USDC | WETH | 86% |
注意事項
- 出力形式は JSON またはテーブルです。
vaultsは--format spellにも対応しています。 - SDK のチェーンアドレスレジストリを使用します。
- 自動化では
--format json、手早く状況を把握する場合は--format tableを優先してください。