mcpField
G
gate-exchange-subaccount

gate-exchange-subaccount

github.com/gateその他48143 回インストール18 週間前に更新
リポジトリ

gate-exchange-subaccount について

gate-cli で Gate Exchange の通常サブアカウントを管理するスキルです。状態照会、一覧、作成、ロック、解除に対応し、変更前にアカウントを検証して確認を求めます。

主な機能

  1. 01個別サブアカウントの詳細照会
  2. 02通常サブアカウントの一覧表示
  3. 03通常サブアカウントの作成
  4. 04サブアカウントのロックと解除
  5. 05変更前の確認要求

活用シーン

  1. 01サブアカウントの状態と詳細の確認
  2. 02メインアカウント配下の一覧確認
  3. 03通常サブアカウントの作成
  4. 04サブアカウントのアクセス停止と再開

MCP 対応

gate-mcp が必要で、gate-cli コマンドを通じてサブアカウントを照会・変更します。

インストール

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

$npx skills add https://github.com/gate/gate-skills --skill gate-exchange-subaccount

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

同梱ファイル

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

CHANGELOG.md
README.md
setup.sh
references/
gate-cli.md
mcp.md
scenarios.md

詳細

gate-cli の解決(バイナリのパス)

次の順に gate-cli を解決します。(1) command -v gate-cli を実行でき、gate-cli --version が成功すること、(2) 実行可能な場合は ${HOME}/.local/bin/gate-cli、(3) 実行可能な場合は ${HOME}/.openclaw/skills/bin/gate-cli。正規のルールについては、exchange-runtime-rules.md §4(または gate-runtime-rules.md §4)を参照してください。

Gate Exchange サブアカウントスキル

一般ルール

⚠️ 停止 — 続行する前に、共有ランタイムルールを必ず読み、厳守してください。 すべてのルールを読み終えるまで、ツールを選択したり呼び出したりしないでください。これらのルールは最優先です。 → gate-runtime-rules.md を読んでください。

  • このスキルに明記されている gate-cli コマンドのみを使用してください。 ここに記載されていないコマンドは、ほかのインターフェースで利用できる場合でも、これらのワークフローでは実行してはいけません。

スキルの依存関係

使用する gate-cli コマンド

照会操作(読み取り専用)

  • gate-cli cex sub-account get
  • gate-cli cex sub-account list
  • gate-cli cex sub-account lock
  • gate-cli cex sub-account unlock

実行操作(書き込み)

  • gate-cli cex sub-account create
認証
  • 対話形式でのファイル設定: ホスト上で GATE_API_KEY と GATE_API_SECRET が両方とも設定されていない場合、gate-cli config init を実行して、API キー、シークレット、プロファイル、デフォルト値のウィザードを完了してください(gate-cli を参照)。
  • 環境変数/フラグ: 認証情報がすでに渡されている場合(ホスト上で GATE_API_KEY と GATE_API_SECRET の両方が設定されている場合、またはサポートされている環境で --api-key/--api-secret を使用する場合など)、gate-cli config init は不要です。ユーザーにチャットでシークレットを貼り付けるよう求めてはいけません。
  • 権限: Sa:Write
  • ポータル: チャット外でキーを作成またはローテーションしてください:https://www.gate.com/myaccount/profile/api-key/manage
インストールの確認
  • 必須: gate-cli(見つからない場合は、このスキルのディレクトリから sh ./setup.sh を実行してください。GATE_CLI_SETUP_MODE=release は任意です)。
  • gate-cli を名前で呼び出す場合は、$HOME/.openclaw/skills/bin(または setup.sh がインストールするディレクトリ)を PATH に追加してください。
  • 認証情報: ホストで GATE_API_KEY と GATE_API_SECRET が両方とも空でない値に設定されている場合、gate-cli config init を必須にしないでください。これは gate-cli の有効な設定と同等です。両方とも未設定または空の場合は、オペレーターに gate-cli config init の実行、またはスキルライブラリ内の対応するスキルで GATE_API_KEY/GATE_API_SECRET を設定するよう促してください(ユーザーにチャットでシークレットを貼り付けるよう求めてはいけません)。
  • 動作確認: CLI が想定どおりに動作するまでは、認証が必要な呼び出しに進まないでください(例:gate-cli --version、またはこのスキルの読み取り専用 gate-cli cex ... コマンド)。変更を伴う操作の前に、認証情報が解決されることを確認してください。

実行モード

references/gate-cli.md を読み、厳守してから、このスキルのサブアカウントワークフローを実行してください。

  • SKILL.md では、意図の振り分けと権限の境界を定めています。
  • references/gate-cli.md は、作成/ロック/ロック解除の確認ゲートとステータス検証に関する、正式な gate-cli 実行契約です。

前提条件

  • MCP の依存関係:gate-mcp のインストールが必要です。
  • 認証: すべてのサブアカウント操作には、メインアカウント権限を持つ API キー認証が必要です。
  • 権限: サブアカウントを管理するには、現在のユーザーがメインアカウントの所有者である必要があります。

利用可能な MCP ツール

ツール認証説明
gate-cli cex sub-account getYesユーザー ID を指定して、特定のサブアカウントの詳細を取得します
gate-cli cex sub-account listYesメインアカウントに属するすべてのサブアカウントを一覧表示します
gate-cli cex sub-account createYes新しい通常のサブアカウントを作成します
gate-cli cex sub-account lockYesサブアカウントをロックして、ログインと取引を無効にします
gate-cli cex sub-account unlockYesロック済みのサブアカウントをロック解除します

ワークフロー

ステップ 1:ユーザーの意図を特定する

ユーザーのメッセージを解析し、必要なサブアカウント操作を判断します。

抽出する主なデータ:

  • intent:query_status、list_all、create、lock、unlock のいずれか
  • user_id:サブアカウントの UID(query_status、lock、unlock で必須)
  • login_name:希望するユーザー名(create 用。ユーザーに確認が必要な場合があります)

意図の検出ルール:

シグナルとなるキーワード意図
"status of sub-account", "sub-account UID {id}", "check sub-account"query_status
"all sub-accounts", "list sub-accounts", "my sub-accounts", "which sub-accounts"list_all
"create sub-account", "new sub-account", "add sub-account"create
"lock sub-account", "disable sub-account", "freeze sub-account"lock
"unlock sub-account", "enable sub-account", "unfreeze sub-account"unlock
ステップ 2:意図に応じて実行する
ケース A:サブアカウントのステータスを確認する(query_status)

gate-cli cex sub-account get を次の値を指定して呼び出します:

  • user_id:ユーザーから提供されたサブアカウントの UID

抽出する主なデータ:

  • login_name:サブアカウントのユーザー名
  • remark:サブアカウントの備考
  • state:アカウントの状態(通常/ロック済み)
  • type:アカウントの種類(通常/プール)
  • create_time:アカウントの作成日時

サブアカウントの詳細を、わかりやすく整理して提示します。

ケース B:すべてのサブアカウントを一覧表示する(list_all)

gate-cli cex sub-account list を次の値を指定して呼び出します:

  • type:"0"(通常のサブアカウントのみ)

抽出する主なデータ:

  • 各サブアカウントの user_id、login_name、remark、state、create_time

ユーザー名、UID、備考(ある場合)、現在のステータスを含む表形式で結果を提示します。

ケース C:サブアカウントを作成する(create)

事前確認:gate-cli cex sub-account list を type:"0" で呼び出して、通常のサブアカウントの現在の一覧を取得します。返された件数に基づいて、ユーザーがさらにサブアカウントを作成できるか確認します。

作成可能な場合:

  1. 新しいサブアカウントのログイン名をユーザーに確認します
  2. 必要に応じて、メールアドレスと備考を確認します
  3. 続行する前に、すべての詳細をユーザーに確認します
  4. gate-cli cex sub-account create を次の値を指定して呼び出します
  • login_name:ユーザーが指定したログイン名(必須)
  • email:ユーザーが指定したメールアドレス(任意)
  • remark:ユーザーが指定した備考(任意)
  1. 新しく作成したサブアカウントの詳細を提示します

抽出する主なデータ:

  • user_id:新しく作成したサブアカウントの UID
  • login_name:確認済みのユーザー名
  • state:"normal" であること

重要:このスキルで作成できるのは、通常のサブアカウントのみです。

ケース D:サブアカウントをロックする(lock)
  1. user_id が指定されていることを確認します。指定されていない場合はユーザーに確認します
  2. gate-cli cex sub-account get を user_id とともに呼び出し、サブアカウントが存在し、メインアカウントに属していることを確認します
  3. サブアカウントがすでにロックされている場合は、ユーザーに伝えて終了します
  4. ユーザーに次の内容を確認します:"サブアカウント {user_id} ({login_name}) をロックしてもよろしいですか?このサブアカウントのログインと取引が無効になります。"
  5. 確認を得たら、gate-cli cex sub-account lock を次の値を指定して呼び出します
  • user_id:サブアカウントの UID
  1. 結果を報告します

抽出する主なデータ:

  • ロック操作の成功/失敗ステータス
ケース E:サブアカウントのロック解除(unlock)
  1. user_id が指定されていることを確認します。指定されていない場合は、ユーザーに尋ねます
  2. user_id を指定して gate-cli cex sub-account get を呼び出し、サブアカウントが存在し、現在ロック中であることを確認します
  3. サブアカウントがすでにロック解除済み、または通常状態の場合は、その旨をユーザーに伝えて終了します
  4. ユーザーに確認します:「サブアカウント {user_id}({login_name})のロックを解除してもよろしいですか?」
  5. 確認後、次の引数を指定して gate-cli cex sub-account unlock を呼び出します:
  • user_id:サブアカウントの UID
  1. 結果を報告します

抽出する主なデータ:

  • ロック解除操作の成功/失敗ステータス
ステップ 3:形式を整えて回答する

以下のレポートテンプレートを使用して結果を提示します。関連するコンテキストと次のステップの提案を必ず含めてください。

判定ロジックの概要

条件アクション
ユーザーが UID を指定して特定のサブアカウントのステータスを尋ねているケース A:query_status に振り分ける
ユーザーがすべてのサブアカウントの表示を求めているケース B:list_all に振り分ける
ユーザーが新しいサブアカウントの作成を希望しているケース C:create に振り分ける
ユーザーが UID を指定してサブアカウントのロックを希望しているケース D:lock に振り分ける
ユーザーが UID を指定してサブアカウントのロック解除を希望しているケース E:unlock に振り分ける
UID が必要な操作で UID が指定されていないユーザーにサブアカウントの UID を尋ねる
作成時にログイン名が指定されていないユーザーにログイン名を尋ねる
サブアカウントがすでに対象の状態(ロック/ロック解除)になっているユーザーに伝え、操作は行わない
API が認証エラーを返すユーザーにログインを促す
API が権限エラーを返すメインアカウントの権限が必要であることをユーザーに伝える
サブアカウントが存在しない、またはユーザーに属していないUID が無効であることをユーザーに伝える

レポートテンプレート

ステータス照会の応答
Sub-Account Details
---
Username: {login_name}
UID: {user_id}
Status: {state}
Type: {type}
Remark: {remark or "N/A"}
Created: {create_time}
すべてのサブアカウント一覧の応答
Your Sub-Accounts
---
| # | Username | UID | Status | Remark |
|---|----------|-----|--------|--------|
| 1 | {login_name} | {user_id} | {state} | {remark or "-"} |
| 2 |... |... |... |... |

Total: {count} sub-account(s)
サブアカウント作成の応答
Sub-Account Created Successfully
---
Username: {login_name}
UID: {user_id}
Status: Normal
Remark: {remark or "N/A"}

Note: Only normal sub-accounts can be created through this interface.
ロック/ロック解除の応答
Sub-Account {Action} Successfully
---
Username: {login_name}
UID: {user_id}
Previous Status: {previous_state}
Current Status: {new_state}

ドメイン知識

  • Gate のメインアカウントでは、資産の分離、戦略の分離、またはチーム管理のために複数のサブアカウントを作成できます。
  • サブアカウントはメインアカウントの KYC 認証を共有しますが、取引機能とウォレット機能は独立しています。
  • サブアカウントをロックすると、ログインと取引の両方が無効になります。資産は安全に保たれますが、ロック解除されるまでアクセスできません。
  • サブアカウントには、通常(type=0)とプール(type=1)の 2 種類があります。このスキルでは通常のサブアカウントの作成のみをサポートします。
  • サブアカウントの作成には、一意のログイン名が必要です。メールアドレスと備考は任意です。

安全ルール

  • 書き込み操作(gate-cli cex sub-account create、gate-cli cex sub-account lock、gate-cli cex sub-account unlock):実行前に必ずユーザーの明示的な確認を求めます。自動実行は決して行いません。
  • UID の検証:ロック/ロック解除の前に、サブアカウントが存在し、現在のメインアカウントに属していることを必ず確認します。
  • 状態の確認:ロック/ロック解除の前に現在の状態を確認し、不要な操作を避けます。
  • 機密データの非公開:API キー、内部エンドポイント URL、生のエラートレースを決して公開しません。
  • 通常のサブアカウントのみ:作成できるのは通常のサブアカウント(type=0)のみです。プールサブアカウントの作成は試みません。

エラー処理

条件応答
認証エンドポイントが「not login」を返す「まずGateアカウントにログインしてください。」
ユーザーがメインアカウントではない「サブアカウントの管理にはメインアカウントの権限が必要です。メインアカウントに切り替えてください。」
サブアカウントのUIDが見つからない「UID {user_id} のサブアカウントが見つかりませんでした。UIDを確認して、もう一度お試しください。」
サブアカウントがユーザーに属していない「このサブアカウントはメインアカウントに属していません。」
サブアカウントがすでにロックされている「サブアカウント {user_id} はすでにロックされています。対応は不要です。」
サブアカウントがすでにロック解除されている「サブアカウント {user_id} はすでに通常(ロック解除)状態です。対応は不要です。」
サブアカウントの作成に失敗(上限到達)「サブアカウントの作成数が上限に達しました。追加が必要な場合は、サポートにお問い合わせください。」
サブアカウントの作成に失敗(名前の重複)「ログイン名「{login_name}」はすでに使用されています。別の名前を選択してください。」
不明なエラー「リクエストの処理中にエラーが発生しました。しばらくしてからもう一度お試しください。」

プロンプトの例とシナリオ

プロンプトの例と期待される動作の全容については、scenarios.md を参照してください。

コメント