gate-gate-skills

gate-exchange-collateralloan

stars39
forks19
watches39
updated2026-09-03 02:38:25

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 Exchange Multi-Collateral Loan Skill

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-cli commands 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 mcl current-rate
  • gate-cli cex mcl fix-rate
  • gate-cli cex mcl ltv
  • gate-cli cex mcl order
  • gate-cli cex mcl orders
  • gate-cli cex mcl records
  • gate-cli cex mcl repay-records
  • gate-cli cex mcl quota
  • gate-cli cex mcl collateral

Execution Operations (Write)

  • gate-cli cex mcl create
  • gate-cli cex mcl repay

Authentication

  • Interactive file setup: when GATE_API_KEY and GATE_API_SECRET are not both set on the host, run gate-cli config init to complete the wizard for API key, secret, profiles, and defaults (see gate-cli).
  • Env / flags: gate-cli config init is not required when credentials are already supplied — e.g. both GATE_API_KEY and GATE_API_SECRET set on the host, or --api-key / --api-secret where supported — never ask the user to paste secrets into chat.
  • Permissions: Mcl:Write
  • Portal: create or rotate keys outside the chat: https://www.gate.com/myaccount/profile/api-key/manage

Installation Check

  • Required: gate-cli (run sh ./setup.sh from this skill directory if missing; optional GATE_CLI_SETUP_MODE=release).
  • Add $HOME/.openclaw/skills/bin to PATH if you invoke gate-cli by name (or the directory where setup.sh installs it).
  • Credentials: When GATE_API_KEY and GATE_API_SECRET are both set (non-empty) for the host, do not require gate-cli config init — that is equivalent valid config for gate-cli. When both are unset or empty, remind the operator to run gate-cli config init or to configure GATE_API_KEY / GATE_API_SECRET in 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 --version or a read-only gate-cli cex ... command from this skill); confirm credentials resolve before mutating operations.

Execution mode

Read and strictly follow references/gate-cli.md, then execute this skill's collateral-loan workflow.

  • SKILL.md keeps routing and product constraints.
  • references/gate-cli.md is the authoritative gate-cli execution contract for quota/LTV pre-checks, confirmation gates, and post-action verification.

Trigger Conditions

This skill activates when the user asks about multi-collateral loan operations. Classify intent via Routing Rules (Cases 1–7). Trigger phrases include: "collateral loan", "current loan", "fixed loan", "repay", "add collateral", "redeem collateral", or equivalent in other languages.

Workflow

Step 1: Classify intent

Identify the user intent using Routing Rules (Cases 1–7). If required inputs are missing (order_id, currency, amount, fixed term), ask clarifying questions before proceeding.

Step 2: Read-only requests (rates, LTV, quota, orders)

Call the corresponding MCP tool when the user asks for rates, LTV, quota, order list, or order detail.

Call gate-cli cex mcl quota with:

  • type: collateral or borrow
  • currency: comma-separated (borrow: single currency)

Call gate-cli cex mcl ltv with:

  • (no params)

Call gate-cli cex mcl fix-rate with:

  • (no params)

Call gate-cli cex mcl current-rate with:

  • currencies: comma-separated currency list

Call gate-cli cex mcl orders with:

  • page, limit (optional)
  • sort (optional): time_desc, ltv_asc, ltv_desc
  • order_type (optional): current or fixed

Call gate-cli cex mcl order with:

  • order_id

Key data to extract:

  • LTV thresholds, fixed/current rates, quota rows, order_id, order status, collateral and borrow details

Step 3: Create loan (current or fixed)

If current loan:

  1. Build draft (collateral list + borrow currency/amount).
  2. Ask for confirmation.
  3. Call gate-cli cex mcl create with order: JSON string (borrow_currency, borrow_amount, collateral_currencies, order_type: current). If fixed loan:
  4. Call gate-cli cex mcl fix-rate (returns a list); filter by borrow_currency; take rate_7d or rate_30d as fixed_rate (hourly rate; pass through unchanged, do not convert or relabel as annual/daily).
  5. Build draft with fixed_type and fixed_rate (describe to user as hourly rate if showing).
  6. Ask for confirmation.
  7. Call gate-cli cex mcl create with order: JSON including order_type: fixed, fixed_type 7d/30d, fixed_rate.

Step 4: Repay

Build draft, ask confirmation, then call gate-cli cex mcl repay with:

  • repay_loan: JSON string with order_id and repay_items [{ currency, amount, repaid_all }]

Step 5: Add or redeem collateral

Build draft, ask confirmation, then call gate-cli cex mcl collateral with:

  • collateral_adjust: JSON string with order_id, type (append | redeem), collaterals [{ currency, amount }]

Judgment Logic Summary

  • Determine case by keywords and required inputs (loan create / repay / add / redeem / list).
  • Fixed loan requires fix_rate lookup; if not available, stop and inform user.
  • All write operations must be confirmed before calling MCP.
  • Auth failure (401/403) prompts API key configuration.

Report Template

When asking for confirmation: Draft:

  • Type: {current|fixed|repay|append|redeem}
  • Order ID: {order_id if applicable}
  • Borrow: {borrow_amount} {borrow_currency}
  • Collateral: {collateral_amounts}
  • Fixed term/rate: {fixed_type} / {fixed_rate} (hourly rate)

Please confirm to proceed.

On success:

  • Summary of action and key identifiers (order_id, amounts). On failure:
  • Error message and next-step guidance (e.g., check currency/amount/LTV).

Prerequisites

  • MCP Dependency: Requires gate-mcp to be installed.
  • Authentication: Order list, detail, repay, collateral, quota, and records require API key; LTV, fix rate, and current rate are public without key.
  • Disclaimer: Loan and LTV information is for reference only and does not constitute investment advice. Understand product terms and liquidation risk before borrowing.

Available MCP Tools

ToolAuthDescriptionReference
gate-cli cex mcl fix-rateNo7d/30d fixed rates (list)references/mcl-mcp-tools.md
gate-cli cex mcl ltvNoLTV thresholdsreferences/mcl-mcp-tools.md
gate-cli cex mcl current-rateNoCurrent ratesreferences/mcl-mcp-tools.md
gate-cli cex mcl quotaYesBorrow/collateral quotareferences/mcl-mcp-tools.md
gate-cli cex mcl createYesCreate loan (order JSON)references/mcl-mcp-tools.md
gate-cli cex mcl ordersYesList ordersreferences/mcl-mcp-tools.md
gate-cli cex mcl orderYesOrder detailreferences/mcl-mcp-tools.md
gate-cli cex mcl repayYesRepay (repay_loan JSON)references/mcl-mcp-tools.md
gate-cli cex mcl collateralYesAdd/redeem collateral (collateral_adjust JSON)references/mcl-mcp-tools.md
gate-cli cex mcl repay-recordsYesRepay historyreferences/mcl-mcp-tools.md
gate-cli cex mcl recordsYesCollateral historyreferences/mcl-mcp-tools.md

Routing Rules

CaseUser IntentSignal KeywordsAction
1Create current loan"current loan", "pledge... borrow... (current)"See references/scenarios.md Scenario 1
2Create fixed loan"fixed loan", "borrow... for 7/30 days"See references/scenarios.md Scenario 2
3Repay"repay", "repay order..."See references/scenarios.md Scenario 3
4Add collateral"add collateral", "add margin"See references/scenarios.md Scenario 4
5Redeem collateral"redeem collateral", "reduce margin"See references/scenarios.md Scenario 5
6List orders / order detail"loan orders", "order detail", "my orders"gate-cli cex mcl orders / gate-cli cex mcl ordernever include any time/date fields in the user-facing reply (see Presentation below)
7Auth failure (401/403)MCP returns 401/403Do not expose keys; prompt user to configure Gate CEX API Key (multi-collateral loan).

Execution

  1. Identify user intent from the Routing Rules table above.
  2. For Cases 1–5: Read the corresponding scenario in references/scenarios.md and follow the Workflow (show order draft, then call MCP only after user confirmation).
  3. For Case 6: Call list or detail tool as needed; no confirmation required for read-only. Never show borrow_time, maturity, due date, operate_time, create_time, repay_time, Unix timestamps, or any other time-related fields in the reply—even if the user asks for dates/times; suggest checking the Gate app or web for timing details.
  4. For Case 7: Do not expose API keys or raw errors; prompt the user to set up Gate CEX API Key with multi-collateral loan permission in MCP.
  5. If the user's intent is ambiguous (e.g. missing order_id, currency, or amount), ask a clarifying question before routing.

Domain Knowledge

Core Concepts

  • Current loan: Flexible loan. Create via gate-cli cex mcl create with order JSON: order_type: current.
  • Fixed loan: 7-day/30-day. order JSON must include order_type: fixed, fixed_type: 7d or 30d (lowercase), fixed_rate: hourly interest rate from gate-cli cex mcl fix-rate (use rate_7d or rate_30d for that borrow_currency; pass as-is, do not describe as annual or daily rate). Missing fixed fields may yield INVALID_PARAM_VALUE.
  • Repay: gate-cli cex mcl repay with repay_loan JSON.
  • Add collateral: gate-cli cex mcl collateral, collateral_adjust with type: append.
  • Redeem collateral: same tool, type: redeem.
  • LTV: gate-cli cex mcl ltv — init_ltv, alert_ltv, liquidate_ltv.

Create Loan Flow (Case 1 & 2)

  1. Parse collateral, borrow currency/amount; fixed: 7 days → 7d, 30 days → 30d.
  2. Current: Optionally gate-cli cex mcl quota or current rate tools. On confirm: gate-cli cex mcl create with order JSON.
  3. Fixed: gate-cli cex mcl fix-rate; filter list by borrow_currency; on empty or no row, stop with user message; else set fixed_rate = rate_7d or rate_30d (hourly rate; pass as-is into order JSON; do not describe as annual or daily). On confirm: order JSON with fixed fields.

Repay Flow (Case 3)

  1. Parse order_id and repay amount (or full).
  2. Show draft; on confirm: gate-cli cex mcl repay with repay_loan JSON.

Add / Redeem Collateral Flow (Case 4 & 5)

  1. Parse order_id and collateral amount/currency.
  2. Show draft; on confirm: gate-cli cex mcl collateral with collateral_adjust JSON.

Presentation — order list / order detail (Case 6)

When the user asks to view my collateral loan orders or order detail:

  • No time fields: Do not output any time or date information—omit every timestamp-style field from MCP (e.g. borrow_time, maturity, due time, operate_time, create_time, repay_time, calendar dates, Unix seconds as dates). Do not paraphrase relative timing (e.g. "expires in 3 days") computed from those fields.
  • Allowed in reply: order_id, status, borrow side (currency, principal/interest left), collateral side (currency, amount), current LTV if present, fixed_type 7d/30d as term label only (no calendar dates).
  • If the user asks specifically for dates/maturity: Reply that timing is not shown here and they should open Gate (app/web) for full order schedule—still do not paste API time fields into chat.

Safety Rules

  • Writes (gate-cli cex mcl create, gate-cli cex mcl repay, gate-cli cex mcl collateral): Always require explicit confirmation and an order draft before execution.
  • No investment advice: Present LTV/rates; user decides.
  • Sensitive data: Never expose API keys or raw internal errors.
  • Amounts: Reject non-positive amounts; validate order_id for repay/collateral ops.
  • Order views: Never surface time columns, dates, or timestamp fields in order list/detail answers to the user.

Error Handling

ConditionResponse
401/403"Please configure your Gate CEX API Key in MCP with multi-collateral loan permission."
gate-cli cex mcl create failsCheck order JSON: borrow fields; for fixed include fixed_type 7d/30d and fixed_rate from fix_rate tool.
Wrong fixed_typeMust be 7d or 30d, lowercase.
Fix rate empty (fixed)"Fixed rate temporarily unavailable; try later or use current loan."
Repay / operate failsCheck order_id, currency, amount in JSON payloads.
Order not found"Order not found." / "No loan orders."

Prompt Examples & Scenarios

See references/scenarios.md for prompt examples and expected behaviors (create current/fixed, repay, add collateral, redeem collateral).