jpskill.com
🛠️ 開発・MCP コミュニティ

defi-registry-manager

Manages expansion of tokens, pools, chains, networks, and DEXes across the codebase. Use when adding new tokens, protocols, chains, networks, or updating existing DeFi registry data. Triggers on add token, new coin, add protocol, new DEX, add chain, new network, add RPC, update address.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o defi-registry-manager.zip https://jpskill.com/download/17437.zip && unzip -o defi-registry-manager.zip && rm defi-registry-manager.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/17437.zip -OutFile "$d\defi-registry-manager.zip"; Expand-Archive "$d\defi-registry-manager.zip" -DestinationPath $d -Force; ri "$d\defi-registry-manager.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して defi-registry-manager.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → defi-registry-manager フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

[Skill 名] defi-registry-manager

DeFi Registry Manager

コードベース全体にわたるトークン、プール、チェーン、ネットワーク、および DEX の拡張を管理します。

使用するタイミング

  • 新しいトークンをレジストリに追加する場合
  • 新しいプロトコルまたは DEX を追加する場合
  • 新しいチェーンのサポートを追加する場合
  • ネットワーク RPC エンドポイントを構成する場合
  • トークンアドレスまたは小数点以下桁数を更新する場合

ワークフロー

ステップ 1: レジストリタイプを特定する

トークン、プロトコル、チェーン、またはネットワークのいずれを追加するかを判断します。

ステップ 2: チェックリストに従う

レジストリタイプに応じた適切なチェックリストを使用します。

ステップ 3: すべてのファイルを更新する

必要なすべてのファイルがまとめて更新されていることを確認します。

ステップ 4: 変更を検証する

検証コマンドを実行して、一貫性を確認します。


トリガーフレーズ

  • "add token", "new token", "add coin"
  • "add protocol", "new DEX", "add exchange"
  • "add chain", "new network", "support chain"
  • "add network", "new RPC", "configure network"
  • "update address", "fix token address"

レジストリの場所

トークン - すべてまとめて更新する必要があります:

ファイル 目的 フォーマット
client/src/constants/protocols.ts フロントエンドトークンリスト TOKENS[chainId] 配列
rust-core/crates/core/src/tokens.rs Rust コアトークン TOKENS LazyLock HashMap
server/src/services/wallet.ts ウォレットサービストークン COMMON_TOKENS + TOKEN_SYMBOLS
shared/schema.ts 共有小数点以下桁数マップ TOKEN_DECIMALS レコード

プロトコル/DEX:

ファイル 目的
client/src/constants/protocols.ts PROTOCOLS 配列
server/src/services/arbitrage.ts スキャン用の DEXES 配列
server/src/services/price-oracle.ts 価格オラクルアダプター

チェーン:

ファイル 目的
client/src/constants/protocols.ts CHAINS 配列 + ChainId
rust-core/crates/core/src/lib.rs ChainId enum
server/src/config/env.ts チェーンごとの RPC URL
shared/schema.ts ChainId
server/src/db/schema.ts adminChains テーブル (Admin UI)

ネットワーク (RPC/インフラストラクチャ):

ファイル 目的
server/src/config/env.ts プライマリ RPC URL、WebSocket エンドポイント
server/src/db/schema.ts rpcUrlexplorerUrl を含む adminChains テーブル
rust-core/crates/core/src/lib.rs ネットワーク定数、ブロック時間
server/src/services/trade-executor.ts チェーン固有のガス設定

Admin UI データベーステーブル:

テーブル 目的
adminTokens Admin UI を介した動的トークンレジストリ
adminProtocols Admin UI を介した動的プロトコル/DEX レジストリ
adminChains Admin UI を介した動的チェーン/ネットワーク構成
strategies 取引戦略構成

新しいトークンの追加 - チェックリスト

[ ] 1. ブロックエクスプローラーでトークンアドレスを確認する (チェックサム形式)
[ ] 2. 小数点以下桁数を確認する (重要: USDC/USDT=6, WBTC=8, ほとんど=18)
[ ] 3. client/src/constants/protocols.ts - TOKENS[chainId] を更新する
[ ] 4. rust-core/crates/core/src/tokens.rs - chain_tokens.insert() を更新する
[ ] 5. server/src/services/wallet.ts - COMMON_TOKENS[chainId] を更新する
[ ] 6. server/src/services/wallet.ts - TOKEN_SYMBOLS (小文字) を更新する
[ ] 7. shared/schema.ts - TOKEN_DECIMALS (標準の 18 でない場合) を更新する
[ ] 8. 実行: grep -r "TOKEN_ADDRESS_HERE" を実行して、ハードコードされた参照を見つける

トークンテンプレート

// フロントエンド (protocols.ts)
{
  address: '0x...', // チェックサムアドレス
  symbol: 'TOKEN',
  name: 'Token Name',
  decimals: 18,
  chains: ['ethereum'],
}

// Rust (tokens.rs)
tokens.insert("TOKEN", Token::new(
    "0x...".parse().unwrap(),
    "TOKEN", "Token Name", 18, ChainId::Ethereum
));

// ウォレットサービス (wallet.ts) - COMMON_TOKENS
'0x...', // TOKEN

// ウォレットサービス (wallet.ts) - TOKEN_SYMBOLS
'0x...lowercase': 'TOKEN',

新しいプロトコル/DEX の追加 - チェックリスト

[ ] 1. client/src/constants/protocols.ts - PROTOCOLS 配列に追加する
[ ] 2. shared/schema.ts - PROTOCOL_ADDRESSES にルーターアドレスを追加する
[ ] 3. server/src/services/arbitrage.ts - DEXES (スキャン可能な場合) に追加する
[ ] 4. server/src/services/price-oracle.ts にアダプターを作成する (必要な場合)
[ ] 5. プロトコルに特定の検証が必要な場合は、validation.ts を更新する

新しいチェーンの追加 - チェックリスト

[ ] 1. ChainId を shared/schema.ts に追加する
[ ] 2. ChainId enum バリアントを rust-core/crates/core/src/lib.rs に追加する
[ ] 3. client/src/constants/protocols.ts - CHAINS 配列に追加する
[ ] 4. RPC URL を server/src/config/env.ts に追加する
[ ] 5. チェーン構成を server/src/services/trade-executor.ts に追加する
[ ] 6. すべてのトークンファイルに新しいチェーンのトークンを追加する
[ ] 7. 新しいチェーンのプロトコルアドレスを追加する
[ ] 8. (オプション) 動的構成のために Admin UI を介して adminChains に追加する

ネットワークの追加/構成 - チェックリスト

[ ] 1. 信頼性の高い RPC エンドポイントを取得する (Alchemy、Infura、QuickNode、またはセルフホスト)
[ ] 2. 環境変数を server/src/config/env.ts に追加する
     - HTTP RPC: {CHAIN}_RPC_URL
     - WebSocket: {CHAIN}_WS_URL (サブスクリプションに必要な場合)
[ ] 3. レート制限とフォールバック RPC を構成する (利用可能な場合)
[ ] 4. ネットワークパラメータを rust-core/crates/core/src/lib.rs に追加する:
     - ブロック時間 (タイミング見積もり用)
     - ガス トークン小数点以下桁数
     - EIP-1559 サポートフラグ
[ ] 5. ガス設定を server/src/services/trade-executor.ts で構成する:
     - 基本料金乗数
     - 優先料金のデフォルト
     - ガス制限のオーバーライド
[ ] 6. トランザクションリンクのエクスプローラー URL を追加する
[ ] 7. 接続をテストする: curl -X POST {RPC_URL} -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
[ ] 8. 動的更新のために /admin -> Chains タブを介して Admin UI に追加する

ネットワーク構成テンプレート


// 環境 (.env)
ETHEREUM_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
ETHEREUM_WS_URL=wss://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
ARBITRUM_RPC_URL=https://arb-mainnet.g.alchemy.com/v2/YOUR_KEY

// server/src/config/env.ts
ethereum: {
  rpcUrl: process.env.ETHEREUM_RPC_URL,
  wsUrl: process.env.ETHEREUM_WS_URL,
  chainId: 1,
  blockTime: 12, // 秒
  supportsEip1559: true,
}

// Admin UI (adminChains table)
{
  id: 'ethereum',
  name: 'Ethereum Mainnet',

(原文がここで切り詰められています)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

DeFi Registry Manager

Manages expansion of tokens, pools, chains, networks, and DEXes across the codebase.

When to Use

  • Adding new tokens to the registry
  • Adding new protocols or DEXes
  • Adding support for new chains
  • Configuring network RPC endpoints
  • Updating token addresses or decimals

Workflow

Step 1: Identify Registry Type

Determine if adding token, protocol, chain, or network.

Step 2: Follow Checklist

Use the appropriate checklist for the registry type.

Step 3: Update All Files

Ensure ALL required files are updated together.

Step 4: Validate Changes

Run validation commands to verify consistency.


Trigger Phrases

  • "add token", "new token", "add coin"
  • "add protocol", "new DEX", "add exchange"
  • "add chain", "new network", "support chain"
  • "add network", "new RPC", "configure network"
  • "update address", "fix token address"

Registry Locations

Tokens - ALL must be updated together:

File Purpose Format
client/src/constants/protocols.ts Frontend token list TOKENS[chainId] array
rust-core/crates/core/src/tokens.rs Rust core tokens TOKENS LazyLock HashMap
server/src/services/wallet.ts Wallet service tokens COMMON_TOKENS + TOKEN_SYMBOLS
shared/schema.ts Shared decimals map TOKEN_DECIMALS record

Protocols/DEXes:

File Purpose
client/src/constants/protocols.ts PROTOCOLS array
server/src/services/arbitrage.ts DEXES array for scanning
server/src/services/price-oracle.ts Price oracle adapters

Chains:

File Purpose
client/src/constants/protocols.ts CHAINS array + ChainId type
rust-core/crates/core/src/lib.rs ChainId enum
server/src/config/env.ts RPC URLs per chain
shared/schema.ts ChainId type
server/src/db/schema.ts adminChains table (Admin UI)

Networks (RPC/Infrastructure):

File Purpose
server/src/config/env.ts Primary RPC URLs, WebSocket endpoints
server/src/db/schema.ts adminChains table with rpcUrl, explorerUrl
rust-core/crates/core/src/lib.rs Network constants, block times
server/src/services/trade-executor.ts Chain-specific gas settings

Admin UI Database Tables:

Table Purpose
adminTokens Dynamic token registry via Admin UI
adminProtocols Dynamic protocol/DEX registry via Admin UI
adminChains Dynamic chain/network config via Admin UI
strategies Trading strategy configurations

Adding a New Token - Checklist

[ ] 1. Verify token address on block explorer (checksum format)
[ ] 2. Confirm decimals (CRITICAL: USDC/USDT=6, WBTC=8, most=18)
[ ] 3. Update client/src/constants/protocols.ts - TOKENS[chainId]
[ ] 4. Update rust-core/crates/core/src/tokens.rs - chain_tokens.insert()
[ ] 5. Update server/src/services/wallet.ts - COMMON_TOKENS[chainId]
[ ] 6. Update server/src/services/wallet.ts - TOKEN_SYMBOLS (lowercase)
[ ] 7. Update shared/schema.ts - TOKEN_DECIMALS (if not standard 18)
[ ] 8. Run: grep -r "TOKEN_ADDRESS_HERE" to find any hardcoded refs

Token Template

// Frontend (protocols.ts)
{
  address: '0x...', // Checksum address
  symbol: 'TOKEN',
  name: 'Token Name',
  decimals: 18,
  chains: ['ethereum'],
}

// Rust (tokens.rs)
tokens.insert("TOKEN", Token::new(
    "0x...".parse().unwrap(),
    "TOKEN", "Token Name", 18, ChainId::Ethereum
));

// Wallet service (wallet.ts) - COMMON_TOKENS
'0x...', // TOKEN

// Wallet service (wallet.ts) - TOKEN_SYMBOLS
'0x...lowercase': 'TOKEN',

Adding a New Protocol/DEX - Checklist

[ ] 1. Add to client/src/constants/protocols.ts - PROTOCOLS array
[ ] 2. Add router address to shared/schema.ts - PROTOCOL_ADDRESSES
[ ] 3. Add to server/src/services/arbitrage.ts - DEXES (if scannable)
[ ] 4. Create adapter in server/src/services/price-oracle.ts (if needed)
[ ] 5. Update validation.ts if protocol needs specific validation

Adding a New Chain - Checklist

[ ] 1. Add ChainId to shared/schema.ts
[ ] 2. Add ChainId enum variant to rust-core/crates/core/src/lib.rs
[ ] 3. Add to client/src/constants/protocols.ts - CHAINS array
[ ] 4. Add RPC URL to server/src/config/env.ts
[ ] 5. Add chain config to server/src/services/trade-executor.ts
[ ] 6. Add tokens for new chain in all token files
[ ] 7. Add protocol addresses for new chain
[ ] 8. (Optional) Add to adminChains via Admin UI for dynamic config

Adding/Configuring a Network - Checklist

[ ] 1. Obtain reliable RPC endpoint (Alchemy, Infura, QuickNode, or self-hosted)
[ ] 2. Add environment variable to server/src/config/env.ts
     - HTTP RPC: {CHAIN}_RPC_URL
     - WebSocket: {CHAIN}_WS_URL (if needed for subscriptions)
[ ] 3. Configure rate limits and fallback RPCs if available
[ ] 4. Add network parameters to rust-core/crates/core/src/lib.rs:
     - Block time (for timing estimates)
     - Gas token decimals
     - EIP-1559 support flag
[ ] 5. Configure gas settings in server/src/services/trade-executor.ts:
     - Base fee multiplier
     - Priority fee defaults
     - Gas limit overrides
[ ] 6. Add explorer URL for transaction links
[ ] 7. Test connectivity: curl -X POST {RPC_URL} -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
[ ] 8. Add to Admin UI via /admin -> Chains tab for dynamic updates

Network Configuration Template

// Environment (.env)
ETHEREUM_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
ETHEREUM_WS_URL=wss://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
ARBITRUM_RPC_URL=https://arb-mainnet.g.alchemy.com/v2/YOUR_KEY

// server/src/config/env.ts
ethereum: {
  rpcUrl: process.env.ETHEREUM_RPC_URL,
  wsUrl: process.env.ETHEREUM_WS_URL,
  chainId: 1,
  blockTime: 12, // seconds
  supportsEip1559: true,
}

// Admin UI (adminChains table)
{
  id: 'ethereum',
  name: 'Ethereum Mainnet',
  chainIdNumeric: 1,
  rpcUrl: 'https://...',
  explorerUrl: 'https://etherscan.io',
  nativeToken: 'ETH',
  enabled: true,
}

Common Token Addresses (Ethereum Mainnet)

Token Address Decimals
WETH 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 18
USDC 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 6
USDT 0xdAC17F958D2ee523a2206206994597C13D831ec7 6
DAI 0x6B175474E89094C44Da98b954EedeAC495271d0F 18
WBTC 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 8

Validation Commands

After making changes, run these to verify consistency:

# Check all files have same token count for a chain
grep -c "ethereum" client/src/constants/protocols.ts
grep -c "Ethereum" rust-core/crates/core/src/tokens.rs

# Verify address consistency
grep -ri "0xA0b86991" --include="*.ts" --include="*.rs"

# Check for typos in addresses
grep -ri "0x6B175474E89094C44Da98b954" --include="*.ts" --include="*.rs"

Common Networks

Network Chain ID Block Time Native Token EIP-1559
Ethereum 1 12s ETH Yes
Arbitrum One 42161 0.25s ETH Yes
Base 8453 2s ETH Yes
Polygon 137 2s MATIC Yes
Optimism 10 2s ETH Yes
Avalanche 43114 2s AVAX Yes
BSC 56 3s BNB No

Critical Rules

  1. ALWAYS verify decimals - Wrong decimals = catastrophic bugs
  2. Use checksum addresses - Mixed case for EIP-55 compliance
  3. Update ALL files - Partial updates cause runtime errors
  4. Test after changes - Run build for both client and Rust core
  5. Lowercase in TOKEN_SYMBOLS - Keys must be lowercase addresses
  6. Test RPC connectivity - Verify endpoint before deploying
  7. Use fallback RPCs - Primary + backup for reliability
  8. Monitor rate limits - Stay within provider quotas