TRC20 Token Toolkit について
TRON 上の AI エージェント向けに、TRC20 の残高確認、送金、承認管理、トークン情報取得を行うツールキットです。一般的なトークンシンボルと任意のコントラクトアドレスに対応し、dry-run とアドレス検証を備えています。
主な機能
- 01トークンメタデータの取得
- 02単一・一括残高の確認
- 03dry-run による送金検証
- 04トークン承認の設定と確認
- 05シンボルまたはコントラクトアドレス指定
活用シーン
- 01複数トークンの残高確認
- 02送金前のアドレスと金額の検証
- 03特定コントラクト向け承認額の設定
- 04トークン名・シンボル・供給量の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ bofai/ skills --skill trc20-token-toolkitインストール後、Claude Code で/trc20-token-toolkitを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreREADME.mdpackage.jsonpackage-lock.jsonresources/well_known_tokens.jsonscripts/approve.jsbalance.jstransfer.jsinfo.jsutils.js詳細
TRC20 トークンツールキット
TRON 上の AI エージェント向けの汎用 TRC20 トークン操作ツールです。残高の確認、トークンの送金、承認の管理、任意の TRC20 トークンのメタデータ取得を行えます。一般的なトークン(USDT、USDD、SUN など)はシンボルで検索でき、任意のトークンはコントラクトアドレスを直接指定できます。
クイックスタート
ウォレットが必要です: 最初に
agent-wallet listを実行してください。
ウォレットが存在しない場合は、続行する前にbankofai-guide(セクション C — ウォレットガード)を呼び出してください。
- 依存関係をインストールします:
cd trc20-toolkit-skill && npm install - 環境変数を設定します:
export TRON_PRIVATE_KEY="<your-private-key>" export TRON_NETWORK="mainnet" export TRONGRID_API_KEY="<optional>"
注意
秘密鍵を表示したり、ログに記録したりしないでください。
利用可能なスクリプト
1. info.js — トークンのメタデータ
node scripts/info.js <tokenAddressOrSymbol>
node scripts/info.js USDT
node scripts/info.js TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t
出力: name、symbol、decimals、total_supply
2. balance.js — トークン残高
# Single token balance
node scripts/balance.js USDT
node scripts/balance.js USDT TWalletAddress123
# Batch balance check
node scripts/balance.js --batch USDT,USDD,SUN
node scripts/balance.js --batch USDT,USDD TWalletAddress123
出力: trx_balance、tokens[](各項目に symbol、balance、decimals を含みます)
動作に関する注意: --batch モードでは、無効なトークン入力はバッチ全体を中止せず、項目ごとのエラーとして返されます。
3. transfer.js — トークンの送金
| パラメーター | 必須 | 説明 |
|---|---|---|
token | はい | トークンアドレスまたはシンボル |
toAddress | はい | 受取人の TRON アドレス |
amount | はい | 人間が読み取れる形式の数量 |
--dry-run | いいえ | 検証のみを行い、トランザクションは実行しません |
node scripts/transfer.js USDT TRecipientAddress 10.5 --dry-run
node scripts/transfer.js USDT TRecipientAddress 10.5
出力: status、tx_id、amount、symbol
検証ルール: 受取人のアドレスは有効な TRON アドレスである必要があります。自分自身への送金は拒否されます。また、--dry-run でも amount は 0 より大きい必要があります。
4. approve.js — 使用許可の管理
# Set allowance (use the exact amount needed, never unlimited)
node scripts/approve.js USDT TSpenderAddress 1000 --dry-run
node scripts/approve.js USDT TSpenderAddress 1000
# Check current allowance
node scripts/approve.js USDT TSpenderAddress --check
node scripts/approve.js USDT TSpenderAddress --check TWalletAddress
出力: allowance、is_max、status、tx_id
検証ルール: スペンダーのアドレスと任意指定の所有者アドレスは有効な TRON アドレスである必要があります。amount は 0 より大きい必要があり、無制限の承認は引き続き無効です。
使用パターン
パターン 1:送金前に確認(推奨)
node scripts/balance.js USDT
node scripts/transfer.js USDT TRecipient 100 --dry-run
# Confirm with user
node scripts/transfer.js USDT TRecipient 100
パターン 2:ポートフォリオの概要
node scripts/balance.js --batch USDT,USDD,SUN,JST,BTT
セキュリティルール
注意
- 出力やログに秘密鍵を表示しないでください。
- ユーザーの確認なしに送金しないでください。 必ず最初に
--dry-runを使用してください。 - 自分自身への送金を防止してください。 スクリプトは送信者自身のアドレスへの送金を拒否します。
- アドレスを検証してください。 すべてのアドレスが
Tで始まり、有効な TRON base58 アドレスであることを確認してください。 - 送金前に残高を確認してください。 スクリプトは十分な残高があるか自動で検証します。
- 無制限の承認を使用しないでください。 予定しているスワップや送金に必要な正確な数量だけを、常に承認してください。無限(MAX_UINT256)の承認はスクリプトによって拒否されます。これにより、侵害された、または悪意のあるスペンダーコントラクトがトークン残高全体を引き出すのを防ぎます。
- 複数の権限を持つウォレットは慎重に扱ってください。 これらのスクリプトは直接使用できる署名キーを前提としています。明示的な
permissionIdの選択が必要なウォレットでは、異なるトランザクションフローが必要になる場合があります。
対応トークン
シンボルで解決できる一般的なトークン:USDT、USDD、USDC、WTRX、SUN、JST、BTT、WIN。
コントラクトアドレスを指定すれば、任意の TRC20 トークンを使用できます。
一覧については resources/well_known_tokens.json を参照してください。
よくある問題
| 問題 | 解決方法 |
|---|---|
Unknown token symbol | 代わりに完全なコントラクトアドレスを使用してください |
Insufficient balance | 最初に balance.js で残高を確認してください |
TRON_PRIVATE_KEY required | 環境変数を設定してください |
Cannot find module 'tronweb' | npm install を実行してください |
バージョン 1.0.0 — Bank of AI 向けに M2M Agent Registry が作成