$npx -y skills add gate/gate-skills --skill gate-exchange-kycGate KYC portal routing skill. Use when the user asks to verify identity, complete KYC, or fix withdrawal blocks. Triggers on 'complete KYC', 'verify identity', 'why can't I withdraw'.
| 1 | ### Resolving `gate-cli` (binary path) |
| 2 | |
| 3 | 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`](https://github.com/gate/gate-skills/blob/master/skills/exchange-runtime-rules.md) §4 (or [`gate-runtime-rules.md`](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md) §4). |
| 4 | |
| 5 | |
| 6 | # KYC Portal Skill |
| 7 | |
| 8 | ## General Rules |
| 9 | |
| 10 | ⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding. |
| 11 | Do NOT select or call any tool until all rules are read. These rules have the highest priority. |
| 12 | → Read [gate-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md) |
| 13 | - **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. |
| 14 | |
| 15 | ## Skill Dependencies |
| 16 | |
| 17 | |
| 18 | ### Authentication |
| 19 | - **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](https://github.com/gate/gate-cli)). |
| 20 | - **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. |
| 21 | - API Key Required: Conditional. Providing the KYC portal link does not require API key; if runtime supports user-state queries, login/auth may be required for those queries. |
| 22 | |
| 23 | ### Installation Check |
| 24 | - **Required:** `gate-cli` (run `sh ./setup.sh` from this skill directory if missing; optional `GATE_CLI_SETUP_MODE=release`). |
| 25 | - Add `$HOME/.openclaw/skills/bin` to **`PATH`** if you invoke `gate-cli` by name (or the directory where [`setup.sh`](./setup.sh) installs it). |
| 26 | - **Credentials:** When **`GATE_API_KEY`** and **`GATE_API_SECRET`** are both set (non-empty) for the host, **do not** require **`gate-cli config init`** for `gate-cli`-backed auth. When **both** are unset or empty and authenticated state queries are needed, **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). |
| 27 | - **Sanity check:** Confirm the CLI works (e.g. **`gate-cli --version`**) before relying on authenticated KYC state queries. |
| 28 | |
| 29 | ## Execution mode |
| 30 | |
| 31 | **Read and strictly follow** [`references/gate-cli.md`](./references/gate-cli.md), then execute this skill's KYC portal guidance workflow. |
| 32 | |
| 33 | - `SKILL.md` keeps routing, trigger phrases, and product semantics. |
| 34 | - `references/gate-cli.md` is the authoritative `gate-cli` execution contract, including detection, fallback, and safety boundaries. |
| 35 | |
| 36 | ## Workflow |
| 37 | |
| 38 | When the user asks about KYC or identity verification: |
| 39 | |
| 40 | 1. Provide the KYC portal URL: https://www.gate.com/myaccount/profile/kyc_home |
| 41 | 2. Tell them to log in (if needed), open the link, and follow the on-screen steps on the portal. |
| 42 | |
| 43 | If they ask about KYC status or want to submit documents in-chat, say verification is done only on the p |