Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 0品質スコア 50/100

crypto-com-app

Crypto.com APP APIを通じて、仮想通貨の売買・スワップ・交換などの取引を実行し、現金の入出金やアカウント残高・市場価格・取引履歴の照会を行います。週次取引限度額やポートフォリオのポジション、銀行口座、入金手順、法定通貨ウォレットの管理にも対応します。BTC・ETH・CROをはじめ200以上のトークンをサポートしており、ユーザーが仮想通貨の取引や資金の入出金、口座情報の確認などを行いたい場合に使用します。

description の原文を見る

Execute crypto trades (buy, sell, swap, exchange), manage cash deposits and withdrawals, and query account balances, market prices, and transaction history via the Crypto.com APP API. View weekly trading limits, portfolio positions, bank accounts, and payment networks. Use when the user wants to trade cryptocurrency, deposit or withdraw cash, check bank account details, view deposit instructions, or manage fiat wallet operations. Supports BTC, ETH, CRO, and 200+ tokens across fiat and crypto wallets.

SKILL.md 本文

Skill: crypto-com-app

Agent Capability Requirements

このスキルは、エージェント プラットフォームが以下の機能をサポートすることを必要とします。プラットフォームが必須機能に欠けている場合、このスキルは動作しません。

機能必須詳細
シェルコマンド実行Yesnpx tsx ./scripts/... を実行し、stdout をキャプチャできる必要があります
環境変数Yesシェル環境から CDC_API_KEYCDC_API_SECRET を読み込む必要があります
JSON パースYesスクリプト stdout から構造化 JSON をパースし、フィールドを抽出する必要があります
マルチターン会話Yes取引は複数ユーザーターンにわたるクォート → 確認フローを使用します
永続的メモリNoconfirmation_required プリファレンスに使用されます。サポートされていない場合、常に取引を確認することがデフォルトです
経過時間認識Noクォート失効(countdown フィールド)チェックに使用されます。サポートされていない場合、常に確認を試み、invalid_quotation エラーを適切に処理します

重大: このスキルの仕組み

ALL API interactions は TypeScript スクリプトを使用する MUST です。curlfetch、またはその他の HTTP メソッドで API を直接呼び出す決してしてください。

スクリプトはリクエスト署名、エラー処理、レスポンスフォーマットを処理します。バイパスした場合:

  • リクエストが失敗します(HMAC 署名が欠落)
  • レスポンスはフィルタリングまたは構造化されません

すべてのユーザーリクエストに対して、以下のマッチングコマンドを見つけ、npx tsx 経由で実行します。JSON 出力を読み込みます。それに作用します。

Configurations

  • BASE_URL: https://wapi.crypto.com
  • CDC_API_KEY: {{env.CDC_API_KEY}}
  • CDC_API_SECRET: {{env.CDC_API_SECRET}}
  • CONFIRMATION_REQUIRED: {{memory.confirmation_required}} (Default: true)
  • SKILL_DIR: この SKILL.md ファイルを含むディレクトリ。このファイルをロードしたパスから解決します(例: /home/user/skills/crypto-com-app/SKILL.md を読み取った場合、SKILL_DIR/home/user/skills/crypto-com-app です)。

Environment Setup

  • CDC_API_KEYCDC_API_SECRET の両方を使用する前に環境変数として設定する必要があります。

  • スクリプトを実行する前に、以下を実行して両方の変数が設定されているかどうか確認します:

    echo "CDC_API_KEY=${CDC_API_KEY:+set}" "CDC_API_SECRET=${CDC_API_SECRET:+set}"
    

    どちらかが set の代わりに空を出力する場合、ユーザーに以下をプロンプトします:

    "API 認証情報が構成されていません。進む前にターミナルで設定してください:

    export CDC_API_KEY="your-api-key"
    export CDC_API_SECRET="your-api-secret"
    

    API キーは https://help.crypto.com/en/articles/13843786-api-key-management で生成できます。 設定したら、お知らせください。"

    その後、停止してユーザーが確認するまで待ちます。再試行する前に。

  • スクリプトが MISSING_ENV エラーを返す場合、同じように扱います:ユーザーに変数を設定するようプロンプトし、待機します。

Script Commands

ALL API interactions はこれらのスクリプトを通す MUST です。 署名、実行、フィルタリング、エラーフォーマットを処理します。シェル経由で適切なコマンドを実行し、JSON 出力をパースします。

前提条件: npx tsx (Node.js 18 以上が必要; tsxnpx によって自動的にフェッチされます)。

重要: 下記のすべてのスクリプトパスは $SKILL_DIR をこのスキルのルートディレクトリのプレースホルダーとして使用します。この SKILL.md をロードしたパスから解決するか、スキルディレクトリに cd して ./scripts/... をパスとして使用します。どちらのアプローチでも機能します。

Account Commands

# ゼロでないバランスがフィルタされた (scope: fiat | crypto | all)
npx tsx $SKILL_DIR/scripts/account.ts balances [fiat|crypto|all]

# 単一トークン残高ルックアップ
npx tsx $SKILL_DIR/scripts/account.ts balance <SYMBOL>

# 週間取引制限
npx tsx $SKILL_DIR/scripts/account.ts trading-limit

# 取引タイプ用の資金提供されたソースウォレットを検索
npx tsx $SKILL_DIR/scripts/account.ts resolve-source <purchase|sale|exchange>

# キルスイッチ — API キーを失効させる
npx tsx $SKILL_DIR/scripts/account.ts revoke-key

Trade Commands

取引は2 ステップフローに従います:最初にクォーテーションを取得し、次にオーダーを確認します。

# ステップ 1 — クォーテーションを取得 (type: purchase | sale | exchange)
npx tsx $SKILL_DIR/scripts/trade.ts quote <type> '<json-params>'
# Returns: {"ok": true, "data": {"id": "<quotation-id>", "from_amount": {...}, "to_amount": {...}, "countdown": 15, ...}}

# ステップ 2 — オーダーを確認: ステップ 1 の data.id を <quotation-id> として渡す
npx tsx $SKILL_DIR/scripts/trade.ts confirm <type> <quotation-id>

# 最近のトランザクションを表示
npx tsx $SKILL_DIR/scripts/trade.ts history

ユーザーの意図を取引タイプにマップする方法:

ユーザーが言う取引タイプFromTo
"100 USD で CRO を買い"purchaseUSD (fiat)CRO (crypto)
"0.1 BTC を売り"saleBTC (crypto)USD (fiat)
"0.1 BTC を ETH にスワップ"exchangeBTC (crypto)ETH (crypto)

取引タイプ別のクォーテーション JSON パラメーター:

TypeJSON フィールド
purchase{"from_currency":"USD","to_currency":"CRO","from_amount":"100"} または代わりに to_amount を使用
sale{"from_currency":"BTC","to_currency":"USD","from_amount":"0.1","fixed_side":"from"}
exchange{"from_currency":"BTC","to_currency":"ETH","from_amount":"0.1","side":"buy"}

例 — "100 USD で CRO を買い":

  1. 実行: npx tsx $SKILL_DIR/scripts/trade.ts quote purchase '{"from_currency":"USD","to_currency":"CRO","from_amount":"100"}'
  2. レスポンスから data.iddata.from_amountdata.to_amountdata.countdown を読みます。
  3. 確認が必要な場合(デフォルト): ユーザーに「確認: 100 USD を X CRO に? {countdown}s 有効。進めるには 'YES' と返信してください。」とプロンプト します。
    • ユーザーが YES と言った場合(countdown 内): npx tsx $SKILL_DIR/scripts/trade.ts confirm purchase <data.id>
  4. 確認がオプトアウトされた場合memory.confirmation_requiredfalse の場合): 聞くのをスキップし、すぐに npx tsx $SKILL_DIR/scripts/trade.ts confirm purchase <data.id> を実行します。

オプトイン / オプトアウト: ユーザーは「確認を求めるのを止めて」と言って取引を自動実行することもできますし、「確認が必要」と言ってプロンプトを再度有効にすることもできます。下記のセクション 3 を参照してください。

Coin Discovery Commands

# コインを検索
npx tsx $SKILL_DIR/scripts/coins.ts search '{"keyword":"BTC","sort_by":"rank","sort_direction":"asc","native_currency":"USD","page_size":10}'

必須 JSON パラメーター:

パラメーターType許可値
sort_bystringrankmarket_capalphabeticalvolumeperformance
sort_directionstringascdesc
native_currencystring大文字の通貨コード(例:USD
keywordstring検索文字列、1〜100 文字;コイン名とシンボルのみに一致します
page_sizeinteger1 ページあたりの結果数

オプション: page_token — 次のページをフェッチするための不透明なトークン(下記のページネーション を参照)。

ページネーション: レスポンスには、has_more(ブール値)と next_page_token(文字列)を持つ pagination オブジェクトが含まれます。has_moretrue の場合、次のリクエストで page_token として next_page_token を渡して、次のページをフェッチします。

コインあたりの主要レスポンスフィールド: rails_idcurrency_id / currency と同一取引および アカウント API — これを使用して相互参照)、price_nativeprice_usdpercent_change_*_native(過去の時間枠にわたる価格パフォーマンス、例:percent_change_24h_native)。

Cash (Fiat) Commands

キャッシュコマンドは、入金、出金、および銀行口座管理を処理します。

# 現金概要 — バランス + 通貨ごとの利用可能な決済ネットワーク
npx tsx $SKILL_DIR/scripts/fiat.ts discover

# 通貨用の決済ネットワーク
npx tsx $SKILL_DIR/scripts/fiat.ts payment-networks <CURRENCY>

# 入金方法の詳細(銀行ルーティング情報)
npx tsx $SKILL_DIR/scripts/fiat.ts deposit-methods <CURRENCY> <DEPOSIT_METHOD>

# ユーザーに入金指示をメール送信
npx tsx $SKILL_DIR/scripts/fiat.ts email-deposit-info <CURRENCY> <VIBAN_TYPE>

# 出金の詳細(クォータ、手数料、最小)
npx tsx $SKILL_DIR/scripts/fiat.ts withdrawal-details <CURRENCY> <VIBAN_TYPE>

# 出金オーダーを作成(手数料 + 受け取り可能な金額を含むオーダーを返す)
npx tsx $SKILL_DIR/scripts/fiat.ts create-withdrawal-order '<json-params>'

# 出金を実行(TOTP 認証器コードを求めるプロンプトが表示される場合があります)
npx tsx $SKILL_DIR/scripts/fiat.ts create-withdrawal <ORDER_ID>

# リンク済み銀行口座をリスト
npx tsx $SKILL_DIR/scripts/fiat.ts bank-accounts [CURRENCY]

主要パラメーター:

パラメーター説明
CURRENCY大文字の通貨コードUSDEURGBPAUD
DEPOSIT_METHODpayment-networks からのネットワーク IDus_achsepauk_fps
VIBAN_TYPE入金方法/出金ネットワークと同じus_achsepauk_fps

出金オーダー JSON パラメーター:

フィールド必須説明
currencyYes通貨コード(例:"USD"
amountYes文字列としての金額(例:"500.00"
viban_typeYes決済ネットワーク(例:"us_ach"
bank_account_idNo特定の銀行口座 ID

例 — "USD をどのように入金しますか?":

  1. 実行: npx tsx $SKILL_DIR/scripts/fiat.ts payment-networks USD
  2. data 配列を読みます — 各エントリは deposit_push_payment_networks(例:["us_ach", "us_wire_transfer"])を持ちます
  3. 詳細については: npx tsx $SKILL_DIR/scripts/fiat.ts deposit-methods USD us_ach
  4. data 配列を読みます — ルーティング番号、アカウント番号などを含む bank_details が含まれます

例 — "ACH を経由して 500 USD を出金":

  1. 実行: npx tsx $SKILL_DIR/scripts/fiat.ts withdrawal-details USD us_ach — クォータと手数料を確認
  2. 実行: npx tsx $SKILL_DIR/scripts/fiat.ts create-withdrawal-order '{"currency":"USD","amount":"500","viban_type":"us_ach"}'
  3. レスポンスから data.id(オーダー ID)、data.feedata.receivable_amount を読みます
  4. ユーザーに確認: "ACH を経由して 500 USD を出金します。手数料:{fee}。受け取ります:{receivable_amount}。確認しますか?"
  5. YES の場合: npx tsx $SKILL_DIR/scripts/fiat.ts create-withdrawal <order-id>
  6. TOTP が必要な場合、スクリプトは stderr で 6 桁の認証器コードを求めるプロンプトが表示されます

Output Format

すべてのスクリプトは構造化 JSON を stdout に出力します:

成功:

{"ok": true, "data": { ... }}

エラー:

{"ok": false, "error": "ERROR_CODE", "error_message": "Human-readable message"}

Constraints

  • 検証: 成功には、スクリプト出力で ok: true が必要です。
  • 確認ウィンドウ: クォート有効性は、クォーテーション データの countdown フィールドによって定義されます。
  • 実行警告: オーダー確認が 5 秒以上かかる場合、通知してください:「オーダーが送信されましたが、予想より長くかかっています。'最近の取引を表示' で注文ステータスを確認してください」。
  • レート制限:
    • 1 分あたり最大 10 取引
    • 1 分あたり最大 100 API 呼び出し
    • HTTP 429(RATE_LIMITED エラー)の場合:再試行する前に 60 秒待ちます。ユーザーに通知: 「レート制限に達しました — もう一度試す前に 60 秒待ってください。」

Error Handling

すべてのスクリプトは構造化エラーを返します。error フィールドをパースして、適切なレスポンスを決定します。

Script Error Codes

これらは、スクリプトの JSON 出力の error 値です。失敗のどのカテゴリが発生したかを示しています。

エラーコード意味エージェントレスポンス
MISSING_ENVCDC_API_KEY または CDC_API_SECRET が設定されていませんユーザーにターミナル経由で環境変数を設定するよう指示します
API_ERRORAPI が非 200 を返したか、ok !== true報告: 「トランザクション失敗: {error_message}」
INVALID_ARGS不正なコマンドライン引数error_message から正しい使用法を表示
QUOTATION_FAILEDクォーテーション要求が API に拒否されましたerror_message をユーザーに報告してください(下記の API エラーを参照)
EXECUTION_FAILEDオーダー確認失敗報告し、以下を提案: 「'最近の取引を表示' でオーダーステータスを確認してください」
API_KEY_NOT_FOUNDキーが既に失効しているか存在しません「API キーが見つかりません — 既に失効している可能性があります。」
RATE_LIMITEDリクエストが多すぎます(HTTP 429)「レート制限に達しました — 60 秒待ってからもう一度試してください。」
UNKNOWN予期しないエラー生の error_message を報告する

ルール: 出力で okfalse の場合、現在の操作を停止し、上記のガイダンスを使用してエラーをユーザーに報告してください。失敗後、次のステップに進まないでください。

Common API Errors (Quick Reference)

これらは、QUOTATION_FAILEDEXECUTION_FAILED、または API_ERROR レスポンスの error_message の内側に表示される特定の API エラーコードです。API がリクエストを拒否した理由を示しています。

error意味リカバリ
not_enough_balance残高不足残高を確認し、取引金額を減らします
invalid_currency通貨コードが認識されませんコイン検索で確認
invalid_quotationクォート有効期限が切れているか既に使用済み新しいクォーテーションをリクエスト
failed_to_create_quotationクォーテーションエンジンエラーしばらくしてから再試行
not_eligible_for_primePrime 特典の対象ではありませんPrime なしで続行
unauthorizedアカウントが取引に承認されていませんサポートに連絡
restricted_feature機能がアカウントで制限されていますerror_message をユーザーに報告
existing_currency_order_error既存の注文が進行中です待つか既存のオーダーをキャンセル
viban_purchase_not_enabledフィアットから暗号への変換が有効になっていませんアカウント機能が利用できません
crypto_viban_not_enabled暗号からフィアットへが有効になっていませんアカウント機能が利用できません
bank_transfer_not_enabled銀行振込が有効になっていませんアカウント機能が利用できません
missing_parameter必須パラメーターが欠落スクリプトバグ — 報告してください
failed_to_create_transactionトランザクション作成失敗再試行またはサポートに連絡
key_not_activeAPI キーが失効しているか期限切れ新しい API キーを生成し、環境変数を更新
api_key_not_foundキーが存在しないか別のユーザーに属しているCDC_API_KEY に正しいキーが設定されていることを確認
totp_required出金に 2FA コードが必要スクリプトは自動的に処理 — ユーザーに認証器コードを求めるプロンプト
withdrawal_limit_exceeded日次/月次クォータ超過withdrawal-details で制限を表示、金額を減らす
invalid_bank_account銀行口座の対象ではありませんbank-accounts で有効な口座(status: completed)を確認
withdrawal_cooling_off最近、出金設定を変更しましたクーリングオフ期間を待つ、error_message をユーザーに報告
email_cooldown入金情報メールが多すぎますクールダウン期間を待つ(エラーで表示)、後で再試行

動的エラー(制限超過、通貨無効化、クーリングオフなど)については、errorerror_message をユーザーに直接報告します。詳細については、references/errors.md を参照してください。


Logic & Rules

1. Asset & Source Disambiguation

最初に取引タイプを決定します:

  • Purchase — フィアット → 暗号
  • Sale — 暗号 → フィアット
  • Exchange — 暗号 → 暗号

次にソースウォレットを解決します:

  • purchase の場合: npx tsx $SKILL_DIR/scripts/account.ts resolve-source purchase を実行します。スクリプトは資金提供されたフィアットエントリのみを返します。
  • sale または exchange の場合: npx tsx $SKILL_DIR/scripts/account.ts resolve-source sale(または exchange)を実行します。スクリプトは資金提供された暗号エントリのみを返します。

結果(data.status から):

  • SELECTEDdata.currency を自動選択します。
  • AMBIGUOUS → ユーザーに data.options から選択するように求めます。
  • EMPTY → ユーザーに「資金提供されたウォレットが見つかりません」と通知し、停止します。

「すべてを売却」シナリオ: ユーザーが「[TOKEN] をすべて売却」と言う場合、npx tsx $SKILL_DIR/scripts/account.ts balance [TOKEN] を実行します。data.available 金額(または data.balance)をクォーテーションの from_amount として使用します。

2. Trading Process (Quotation → Confirmation → Execution)

ユーザーが暗号資産を購入、売却、またはスワップするように求めたときは、常にこの 3 ステップフローに従います:

  • ステップ A — クォーテーション取得: ユーザーのリクエスト(取引コマンドの「クォーテーション JSON パラメーター」テーブルを参照)から JSON パラメーターを構築し、実行します: npx tsx $SKILL_DIR/scripts/trade.ts quote <type> '<json-params>' レスポンスから data.iddata.from_amountdata.to_amountdata.countdown を読みます。

  • ステップ B — ユーザーに確認を求める:

    • IF memory.confirmation_requiredtrue の場合(またはセット解除):
      • プロンプト: 「確認: {from_amount} を {to_amount} に? {countdown}s 有効。続行するには 'YES' と返信してください。」
      • 有効期限ロジック: ユーザーが countdown 秒経過後に「YES」と返信した場合、拒否します:「トランザクション拒否:クォーテーションレートの有効期限が切れています。新しいクォートをリクエストしてください。」
      • ユーザーが有効なウィンドウ内で「YES」と返信した場合のみ、ステップ C を実行します。
    • ELSE(オプトアウト):
      • 通知: 「クォーテーションを受け取りました。自動的に実行を進めています...」
      • すぐにステップ C に進みます。
  • ステップ C — オーダーを実行: 実行します:npx tsx $SKILL_DIR/scripts/trade.ts confirm <type> <data.id> ステップ A からの id を使用します。

3. Memory Management (Opt-in/Out)

  • オプトアウト: ユーザーが「確認を求めるのを止めて」または「自動取引を有効にして」と言う場合、memory.confirmation_requiredfalse に更新します。
  • オプトイン: ユーザーが「確認が必要」または「手動取引を有効にして」と言う場合、memory.confirmation_requiredtrue に更新します。
  • 永続的メモリをサポートしないプラットフォーム: プラットフォームが {{memory.*}} をサポートしていない場合、confirmation_required を常に true として扱います(最も安全なデフォルト)。

4. Error Handling

  • すべてのスクリプト出力は ok フィールドを含みます。成功は ok: true のみとして定義されます。
  • okfalse の場合、error を読み、上記のエラー処理テーブルに従って対応します。
  • 失敗したコマンド後、次のステップに進まないでください。

5. Account & History

  • 履歴: npx tsx $SKILL_DIR/scripts/trade.ts history を実行 — data からエントリを表示します。
  • 週間取引制限: npx tsx $SKILL_DIR/scripts/account.ts trading-limit を実行 — 「📊 週間取引制限: {data.used} / {data.limit} USD(残り: {data.remaining} USD)」として表示します。
  • フィアット対暗号残高ルーティング: ユーザーが特定の通貨残高を尋ねる場合、それがフィアット通貨(USD、EUR、GBP、AUD、SGD、CAD、BRL など)か暗号トークン(BTC、ETH、CRO など)かを判定します。
    • フィアット通貨npx tsx $SKILL_DIR/scripts/account.ts balances fiat(すべてのフィアット残高を表示)または npx tsx $SKILL_DIR/scripts/fiat.ts discover(残高 + 決済ネットワークを表示)を実行します。フィアット通貨に balance <SYMBOL> を使用しないでください — 暗号ウォレットをクエリし、常に 0 を返します。
    • 暗号トークンnpx tsx $SKILL_DIR/scripts/account.ts balance <SYMBOL> を実行します。
    • 確実でないnpx tsx $SKILL_DIR/scripts/account.ts balances all を実行して、フィアットと暗号の両方を表示します。
  • バランス(カテゴリ化):
    • 「フィアットをリスト」の場合: npx tsx $SKILL_DIR/scripts/account.ts balances fiat を実行します。
    • 「暗号をリスト」の場合: npx tsx $SKILL_DIR/scripts/account.ts balances crypto を実行します。
    • 「すべてをリスト」の場合: npx tsx $SKILL_DIR/scripts/account.ts balances all を実行します。重大: フィアットカテゴリを最初に表示し、その後に暗号バランスを表示します。
    • スクリプトは自動的にゼロバランスエントリをフィルタリングします。カテゴリの出力にエントリがない場合、そのヘッダーの下に「保有なし」を表示します。
    • 暗号バランスdata.crypto)には、note フィールド(「取引可能」)と wallets 配列が含まれます。これらの金額は取引可能なものであることを常にユーザーに明確にしてください — すべての製品全体での総保有量はより高い可能性があります。
    • ポートフォリオ配分: 暗号バランスがクエリされる場合、出力には portfolio_allocation 配列が含まれる可能性があります — 各エントリは製品 nameprice_native(USD 値)を持ちます。これをユーザーの資産分布の概要として製品全体(例:Crypto Wallet、Exchange、Earn、Staking など)で表示します。
    • 単一トークンバランスbalance <SYMBOL>)出力には、product_allocation オブジェクトが含まれる可能性があります — キーは製品名(例:crypto_earnstakingsuperchargercrypto_basketairdrop_arena)で、値はそれぞれで保有されるトークン量です。ゼロでない製品のみが含まれます。ユーザーにこれらの配分を要約し、取引可能な金額とともに表示して、トークンがどこに保有されているかの全体像を見てもらいます。

6. Kill Switch

  • トリガー: ユーザーが「すべての取引を停止」、「キルスイッチ」、または同様の緊急停止コマンドを言います。
  • memory.confirmation_required に関係なく、常に明示的な確認を要求します:
    • プロンプト: 「⚠️ 警告: これは直ちに API キーを失効させ、すべての取引を無効化します。再開するには新しい API キーを生成する必要があります。続行するには 「CONFIRM KILL SWITCH」と入力してください。」
    • ユーザーが正確なフレーズで返信した場合のみ、実行します。
  • 実行: npx tsx $SKILL_DIR/scripts/account.ts revoke-key を実行します。
  • 成功時(ok: true): 通知: 「🛑 キルスイッチが有効化されました。API キーが失効しました。すべての取引が無効化されました。新しい API キーを生成し、環境変数を更新して再開してください。」
  • API_KEY_NOT_FOUND エラー時: 通知: 「API キーが見つかりません — 既に失効しているか存在しない可能性があります。」
  • べき等性: 既に失効したキーを失効させることはエラーではありません。成功した失効と同じように扱います。

7. Balance Display Format

  • フィアットヘッダー: 「🏦 フィアット残高」
  • 暗号ヘッダー: 「🪙 暗号残高」
  • 両方がリクエストされた場合、常にフィアットセクションを暗号セクション前に一覧表示します。
  • ゼロバランスアセットを表示しないでください。 残高が 0 より大きいアセットのみを表示します。カテゴリ内のすべてのアセットがゼロの場合、そのヘッダーの下に「保有なし」を表示します。

8. Cash Deposit & Withdrawal

用語: ユーザー向けメッセージで「フィアット」ではなく「現金」を使用してください。「現金残高」と言いますが、「フィアット残高」ではありません。

通貨の曖昧性排除: ユーザーが通貨を指定していない場合、最初に discover を実行します。

  • 残高がある 1 つの通貨 → それを自動選択し、進めます。
  • 残高がある複数の通貨 → リストを提示し、続行する前にユーザーに選択するよう求めます。
  • 残高がない → 「まだ現金残高がありません。」と通知し、停止します。

入金フロー:

  1. discover を実行して、ユーザーに現金通貨と利用可能なネットワークを表示します
  2. ユーザーが通貨とネットワークを選択 — deposit-methods を実行して銀行詳細を取得
  3. 銀行詳細(ルーティング番号、口座番号、銀行名、参照)を提示
  4. 必要に応じて email-deposit-info を実行してユーザーに指示をメール送信
  5. レート制限: email-deposit-info は 30 分ごとに 5 リクエストに制限されています。クールダウンエラーの場合、ユーザーに通知し、cooldown_in_seconds 値を表示します。

出金フロー:

  1. bank-accounts <currency> を実行して、適格なアカウント(status: "completed" のみフィルタ)をリスト
    • 適格アカウント 1 つ → それを自動選択
    • 複数の適格アカウント → リスト(銀行名、口座識別子、ネットワーク)を提示し、ユーザーに選択するよう求めます
    • 適格アカウントなし → 「{currency} 用の適格銀行口座が見つかりません。最初に銀行口座をリンクする必要があります。」と通知し、停止します
  2. withdrawal-details を実行してクォータ、手数料、最小を確認
  3. ステップ 1 の bank_account_id を持つ金額、ネットワーク、bank_account_idcreate-withdrawal-order を実行 — 手数料を含むオーダーを返します
  4. 実行前にユーザーに常に確認memory.confirmation_required に関係なく):
    • 表示:金額、手数料、受け取り可能な金額、ネットワーク、宛先銀行口座、処理時間
    • 続行するには明示的な「YES」が必要です
  5. オーダー ID を持つ create-withdrawal を実行
  6. TOTP 処理: API が totp_required を返す場合、スクリプトは stderr で 6 桁の認証器コードをプロンプトします。エージェントはユーザーに以下を指示する必要があります:「プロンプトが表示されたら、6 桁の認証器コードを入力してください。」TOTP を生成したり、バイパスしたりしないでください。

銀行口座:

  • bank-accounts を実行してリンク済みアカウントをリスト。指定されている場合は通貨でフィルタ。
  • status: "completed" のアカウントのみが出金の対象です。
  • 各アカウントは withdrawal_payment_networks を表示 — これらを有効な viban_type 値として使用します。

入金方法 — ベンダー選択:

  • deposit-methodsvendor_list 配列を返します。各ベンダーは status フィールドを持ちます。
  • status: "created"(アクティブ)のベンダーのみを表示します。"uncreated" ベンダーを無視します。
  • 複数の作成されたベンダーが存在する場合、リストの最初のものをデフォルトにします。

現金コマンドクイックリファレンス:

ユーザーが言う実行するコマンド
"USD をどのように入金しますか?"payment-networks USD その後 deposit-methods USD <network>
"入金指示をメール送信してください"email-deposit-info <currency> <viban_type>
"銀行口座を表示してください"bank-accounts
"出金制限は何ですか?"withdrawal-details <currency> <viban_type>
"500 USD を出金"withdrawal-details -> create-withdrawal-order -> 確認 -> create-withdrawal
"入金できる通貨は何ですか?"discover

ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
crypto-com
リポジトリ
crypto-com/crypto-agent-trading
ライセンス
Apache-2.0
最終更新
不明

Source: https://github.com/crypto-com/crypto-agent-trading / ライセンス: Apache-2.0

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: crypto-com · crypto-com/crypto-agent-trading · ライセンス: Apache-2.0