mcpField
C
cardano-cli-transactions

cardano-cli-transactions

github.com/flux-point-studiosその他839 回インストール5 週間前に更新
リポジトリ

cardano-cli-transactions について

`cardano-cli`でCardano取引を作成する人向けのガイダンススキルです。コマンド例と説明を示し、取引は実行せず、実行処理は`cardano-cli-transactions-operator`に委ねます。

主な機能

  1. 01取引作成コマンドのテンプレート
  2. 02UTxO選択とおつりの説明
  3. 03トークンとメタデータの例
  4. 04ネットワーク確認と手数料の案内
  5. 05Dockerラッパーによる代替手順

活用シーン

  1. 01Cardano取引作成パターンの学習
  2. 02ADA送金コマンド手順の作成
  3. 03複数出力やトークン取引の準備
  4. 04ローカルにcardano-cliがない環境でのコマンド作成

インストール

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

$npx skills add https://github.com/flux-point-studios/cardano-agent-skills --skill cardano-cli-transactions

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

reference/
docker-fallback.md
tx-send-ada.md
scripts/
cardano-cli.sh

詳細

cardano-cli-transactions

これはガイダンス用のスキルです。 テンプレートと説明を提供します。実行には cardano-cli-transactions-operator を使用してください。

使用する場面

  • トランザクション構築パターンを学ぶ
  • UTxO の選択とお釣りについて理解する
  • さまざまな種類のトランザクションのコマンドテンプレートを取得する

運用ルール(必ず従うこと)

  • コマンドを提示する前に、ネットワーク(mainnet/preprod/preview)を確認する
  • 実行はしない。テンプレートのみを提供する
  • 必ず手数料の処理とお釣りを含める
  • 検証手順を含める

Docker フォールバックモード

cardano-cli がローカルにインストールされていない場合は、このスキルフォルダー内のラッパースクリプトを使用して、Docker 内で cardano-cli を実行してください(Cardano のノードコンテナーイメージには CLI が含まれています)。

chmod +x {baseDir}/scripts/cardano-cli.sh
{baseDir}/scripts/cardano-cli.sh version

注:

  • ラッパーは現在のディレクトリを /work としてコンテナーにマウントするため、pparams.json、tx.body、datum.json などのファイルを通常どおり使用できます。
  • ローカルノードのソケットがある場合は、実行前に CARDANO_NODE_SOCKET_PATH を設定すると、query コマンドが動作します。
  • CARDANO_DOCKER_IMAGE=ghcr.io/intersectmbo/cardano-node:<tag> でイメージを上書きできます。

ワークフローテンプレート

ADA の簡単な送金
# 1. Query sender UTxOs
cardano-cli conway query utxo \
  --address <sender-addr> \
  --testnet-magic 1

# 2. Get protocol parameters
cardano-cli conway query protocol-parameters \
  --testnet-magic 1 \
  --out-file pparams.json

# 3. Build transaction
cardano-cli conway transaction build \
  --testnet-magic 1 \
  --tx-in <utxo-hash>#<index> \
  --tx-out <recipient>+<amount-lovelace> \
  --change-address <sender-addr> \
  --out-file tx.unsigned

# 4. Sign
cardano-cli conway transaction sign \
  --tx-file tx.unsigned \
  --signing-key-file payment.skey \
  --testnet-magic 1 \
  --out-file tx.signed

# 5. Submit
cardano-cli conway transaction submit \
  --testnet-magic 1 \
  --tx-file tx.signed

# 6. Verify
cardano-cli conway transaction txid --tx-file tx.signed
複数出力のトランザクション
cardano-cli conway transaction build \
  --testnet-magic 1 \
  --tx-in <utxo>#<index> \
  --tx-out <addr1>+<amount1> \
  --tx-out <addr2>+<amount2> \
  --tx-out <addr3>+<amount3> \
  --change-address <sender> \
  --out-file tx.unsigned
ネイティブトークンを使用する場合
cardano-cli conway transaction build \
  --testnet-magic 1 \
  --tx-in <utxo>#<index> \
  --tx-out "<recipient>+<lovelace>+<amount> <policy-id>.<asset-name>" \
  --change-address <sender> \
  --out-file tx.unsigned
メタデータを使用する場合
cardano-cli conway transaction build \
  --testnet-magic 1 \
  --tx-in <utxo>#<index> \
  --tx-out <recipient>+<amount> \
  --change-address <sender> \
  --metadata-json-file metadata.json \
  --out-file tx.unsigned

例

例:preprod で 10 ADA を送金する

ユーザーの依頼:「addr_test1qz... に 10 ADA を送金してください」

回答:

# === Send 10 ADA on Preprod ===

# Setup
SENDER_ADDR="addr_test1..."
RECIPIENT="addr_test1qz..."
AMOUNT=10000000  # 10 ADA in lovelace

# 1. Query UTxOs
cardano-cli conway query utxo \
  --address $SENDER_ADDR \
  --testnet-magic 1

# 2. Build (using first UTxO with sufficient funds)
cardano-cli conway transaction build \
  --testnet-magic 1 \
  --tx-in <paste-utxo-here>#0 \
  --tx-out "$RECIPIENT+$AMOUNT" \
  --change-address $SENDER_ADDR \
  --out-file tx.unsigned

# 3. Sign
cardano-cli conway transaction sign \
  --tx-file tx.unsigned \
  --signing-key-file payment.skey \
  --testnet-magic 1 \
  --out-file tx.signed

# 4. Submit (use operator skill or run manually)
# cardano-cli conway transaction submit --testnet-magic 1 --tx-file tx.signed

Tx バンドルのフォルダー構成

tx-20240115-143022/
├── pparams.json       # Protocol parameters used
├── tx.unsigned        # Unsigned transaction
├── tx.signed          # Signed transaction
├── utxos.json         # Input UTxOs at build time
└── commands.log       # Commands executed

安全性/キーの取り扱い

  • 署名キーを決して公開しない
  • 受取人のアドレスを慎重に確認する
  • mainnet では、まず少額のテスト送金を行う
  • 監査証跡として tx バンドルを保管する

参考資料

  • shared/PRINCIPLES.md
  • cardano-cli-transactions-operator(実行用)

コメント