SKILL.md
Resolving gate-cli (binary path)
Resolve gate-cli in order: (1) command -v gate-cli and gate-cli --version succeeds; (2) ${HOME}/.local/bin/gate-cli if executable; (3) ${HOME}/.openclaw/skills/bin/gate-cli if executable. Canonical rules: exchange-runtime-rules.md §4 (or gate-runtime-rules.md §4).
Gate VIP & Fee Query Assistant
General Rules
⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding. Do NOT select or call any tool until all rules are read. These rules have the highest priority. → Read gate-runtime-rules.md
- Only use the
gate-clicommands explicitly listed in this skill. Commands not documented here must NOT be run for these workflows, even if other interfaces expose them.
Skill Dependencies
gate-cli commands used
Query Operations (Read-only)
gate-cli cex account detailgate-cli cex wallet market trade-fee
Authentication
- Interactive file setup: when
GATEAPIKEYandGATEAPISECRETare not both set on the host, rungate-cli config initto complete the wizard for API key, secret, profiles, and defaults (see gate-cli). - Env / flags:
gate-cli config initis not required when credentials are already supplied — e.g. bothGATEAPIKEYandGATEAPISECRETset on the host, or--api-key/--api-secretwhere supported — never ask the user to paste secrets into chat. - Permissions: Account:Read, Wallet:Read
- Portal: create or rotate keys outside the chat: https://www.gate.com/myaccount/profile/api-key/manage
Installation Check
- Required:
gate-cli(runsh ./setup.shfrom this skill directory if missing; optionalGATECLISETUP_MODE=release). - Add
$HOME/.openclaw/skills/bintoPATHif you invokegate-cliby name (or the directory where [setup.sh](./setup.sh) installs it). - Credentials: When
GATEAPIKEYandGATEAPISECRETare both set (non-empty) for the host, do not requiregate-cli config init— that is equivalent valid config forgate-cli. When both are unset or empty, remind the operator to rungate-cli config initor to configureGATEAPIKEY/GATEAPISECRETin the matching skill from the skill library (never ask the user to paste secrets into chat). - Sanity check: Do not proceed with authenticated calls until the CLI behaves as expected (e.g.
gate-cli --versionor a read-onlygate-cli cex ...command from this skill); confirm credentials resolve before mutating operations.
Execution mode
Read and strictly follow [references/gate-cli.md](./references/gate-cli.md), then execute this skill's VIP/fee query workflow.
SKILL.mdkeeps intent routing and rendering rules.references/gate-cli.mdis the authoritativegate-cliexecution contract for account/fee data retrieval and safe output behavior.
Quick Start
Below are the most common prompts to get started quickly:
- Query VIP tier
> What is my VIP level?
- Query trading fees
> Show me the spot and futures trading fees.
- Query VIP tier and fees together
> Check my VIP level and trading fees.
Domain Knowledge
Tool Mapping by Domain
| Group | Tool Calls |
|---|---|
| Account / VIP tier | gate-cli cex account detail |
| Trading fee rates | gate-cli cex wallet market trade-fee |
Key Concepts
- VIP Tier: Gate assigns VIP levels (VIP 0 – VIP 16) based on trading volume and asset holdings. Higher VIP tiers unlock lower fee rates.
- Spot Fee: The maker/taker fee rate applied to spot trading pairs.
- Futures Fee: The maker/taker fee rate applied to futures/contract trading, differentiated by settlement currency (BTC, USDT, USD).
- The
gate-cli cex wallet market trade-feetool returns fee rates for both spot and futures in a single response. Use thesettleparameter to query futures-specific fees.
API Behavior Notes
- Account-level pricing: Gate fee rates are determined by the user's VIP tier. The
currency_pairparameter does not change the returned fee values — all trading pairs share the same account-level rate. settleparameter scope: Thesettleparameter only affects futures fee fields (futuresMakerFee/futuresTakerFee). Spot fees (makerFee/takerFee) remain unchanged regardless ofsettle.- Invalid
currency_pairhandling: The API does not return an error for non-existent trading pairs. It silently returns the default account-level fees. Do not treat a successful response as confirmation that the trading pair exists.
Workflow
When the user asks about VIP tier or trading fees, follow this sequence.
Step 1: Identify Query Type
Classify the request into one of these categories:
- VIP tier query — user wants to know their current VIP level
- Fee rate query — user wants to know spot and/or futures trading fee rates
- Combined query — user wants both VIP tier and fee information
Key data to extract:
query_type: "vip", "fee", or "combined"currency_pair(optional): specific trading pair for fee lookupsettle(optional): futures settlement currency (BTC / USDT / USD)
Step 2: Query VIP Tier (if needed)
If query_type is "vip" or "combined":
Call gate-cli cex account detail with:
- No parameters required
Key data to extract:
vip_level: the user's current VIP tier (e.g., VIP 0, VIP 1, etc.)
Step 3: Query Trading Fee Rates (if needed)
If query_type is "fee" or "combined":
Call gate-cli cex wallet market trade-fee with:
currency_pair(optional): specify trading pair context (note: fee rates are account-level and do not vary by pair)settle(optional): futures settlement currency — affects futures fee fields only
Key data to extract:
makerfeerate: spot maker fee ratetakerfeerate: spot taker fee ratefuturesmakerfee_rate: futures maker fee ratefuturestakerfee_rate: futures taker fee rate
Step 4: Return Result
Format the response according to the Report Template. The API (gate-cli cex wallet market trade-fee) always returns the full fee structure (spot + futures + delivery). Filter the output based on the user's original intent:
- If user asked about spot fees only → show only
makerFee/takerFee - If user asked about futures/contract fees only → show only
futuresMakerFee/futuresTakerFee - If user asked about trading fees (general) → show both spot and futures
- If user asked about VIP only → show only VIP level, no fee data
- If user specified a
currency_pair→ append a note in the response: "Note: The API returns account-level fee rates. The fee shown applies to all trading pairs; if the pair you specified does not exist, the result still reflects your default account fee rate."
Key data to extract:
- VIP level (if queried)
- Spot maker/taker fee rates (if queried)
- Futures maker/taker fee rates (if queried)
Judgment Logic Summary
| Condition | Action |
|---|---|
| User asks about VIP tier/level only | Call gate-cli cex account detail, return VIP level |
| User asks about trading fees only | Call gate-cli cex wallet market trade-fee, return spot and futures fee rates |
| User asks about both VIP and fees | Call both tools, return combined result |
| User specifies a trading pair | Pass currency_pair parameter to gate-cli cex wallet market trade-fee |
| User specifies futures settlement currency | Pass settle parameter to gate-cli cex wallet market trade-fee |
| User asks about spot fees only | Call gate-cli cex wallet market trade-fee, return only spot fee portion |
| User asks about futures/contract fees only | Call gate-cli cex wallet market trade-fee with settle parameter, return only futures fee portion |
User specifies a currency_pair |
Append a disclaimer that the API does not validate trading pairs; the returned fee is the account-level default and the pair may not exist |
| API returns error or empty data | Inform user of the issue and suggest checking account authentication |
Report Template
## Query Result
{vip_section}
{fee_section}
VIP Section (when VIP is queried):
### VIP Tier
| Item | Value |
|------|-------|
| VIP Level | {vip_level} |
Fee Section (when fees are queried):
### Trading Fee Rates
| Category | Maker Fee | Taker Fee |
|----------|-----------|-----------|
| Spot | {spot_maker_fee} | {spot_taker_fee} |
| Futures | {futures_maker_fee} | {futures_taker_fee} |
Combined example output:
## Query Result
### VIP Tier
| Item | Value |
|------|-------|
| VIP Level | VIP 1 |
### Trading Fee Rates
| Category | Maker Fee | Taker Fee |
|----------|-----------|-----------|
| Spot | 0.1% | 0.1% |
| Futures (USDT) | 0.015% | 0.05% |
Error Handling
| Error Type | Typical Cause | Handling Strategy |
|---|---|---|
| Authentication failure | API key invalid or expired | Inform user to check MCP configuration and API key validity |
| Empty response | Account data not available | Inform user the query returned no data and suggest retrying |
| Network error | MCP connection issue | Suggest user check MCP server connectivity |
Safety Rules
- This Skill is read-only and does not perform any trading or account modification operations.
- No user confirmation is required since all operations are queries only.
- Never expose raw API keys or sensitive authentication details in responses.