CoinGecko CLI
This skill is coordination-exempt: skip the ai-coord gate for its declared work.
Use the installed CLI's machine-readable command catalog as the source of truth for supported market-data operations.
Workflow
Verify cg exists and inspect non-interactive auth/tier state:
command -v cg
cg status -o json
cg commands -o json
Do not run interactive cg auth or write config without the user's approval.
On an explicitly requested CLI update, run cg update --dry-run; run cg update only with approval. If automatic
detection is wrong, pass --method with homebrew, npm, go, or script. Recheck cg version and
cg commands -o json, then record the verified version in references/version.txt when maintaining this skill.
Select the command, flags, enum values, output formats, endpoint, auth requirement, and paid_only status from
cg commands -o json. Use cg <command> --help only when the catalog lacks a needed detail.
Resolve CoinGecko IDs with cg search <term> -o json when the user supplied a name or ambiguous symbol. Do not
silently treat symbols as unique.
Preview unfamiliar or quota-sensitive requests with --dry-run. Execute parseable queries with -o json; use
--export only when the user requested a CSV artifact.
If a historical-data request cannot be completed because cg is unavailable, cg history fails due to a CLI defect,
or its response is demonstrably malformed, and a visual result can satisfy the request, immediately read
references/open-historical-page.md and use its browser fallback.
Present the requested result in the user's format. For ordinary human-readable output, use a compact table and
preserve enough precision for the asset's magnitude.
Boundaries and Defaults
- Batch IDs in one request when the command supports it. On 429, respect the reported reset/backoff rather than retrying
aggressively.
- Detect paid-only commands before execution. If the current tier cannot serve the request, say so and offer a supported
route.
- Do not use the browser fallback for authentication, tier, rate-limit, invalid-input, or ambiguity errors. It does not
satisfy requests for JSON, CSV, or other machine-readable evidence.
cg does not cover every CoinGecko endpoint. For unsupported contract-address prices, global stats, NFT detail,
GeckoTerminal, or logo metadata, fetch the relevant current API documentation from
https://docs.coingecko.com/llms.txt and state that the CLI route is unavailable.
- Never expose API keys or send private wallet/account data to market-data endpoints.
Completion requires the resolved coin/command, successful JSON or requested export evidence, and explicit handling of
tier, ambiguity, or rate-limit constraints. A historical-page fallback instead requires a validated URL opened in
Chromium plus disclosure of the CLI failure that triggered it.
User-Facing Output
For ordinary human output, lead with ### 🪙 <coin> (<id>), show only the requested metrics in a compact table, and add
one source line with the endpoint plus timestamp, tier, or window when material. For exports, use
### ✅ Exported <row count> rows, link the artifact, and state the query/window without reproducing the CSV. Use
### ⚠️ Rate limited — retry after <time> when returning control, ### ⏳ Rate limited — retrying after <time> only
while actively waiting, or ### ⚠️ Paid endpoint — current tier: <tier> with one supported route. Return requested
JSON/CSV, exact IDs, URLs, values, commands, and diagnostics undecorated.
1---
2coordination: exempt
3name: cli-coingecko
4user-invocable: false
5description:
6 "Use for CoinGecko/cg CLI crypto market data: prices, market cap, trending coins, top gainers/losers, coin search, or
7 historical/OHLC data."
8---
9
10# CoinGecko CLI
11
12This skill is coordination-exempt: skip the ai-coord gate for its declared work.
13
14Use the installed CLI's machine-readable command catalog as the source of truth for supported market-data operations.
15
16## Workflow
17
181. Verify `cg` exists and inspect non-interactive auth/tier state:
19
20 ```sh
21 command -v cg
22 cg status -o json
23 cg commands -o json
24 ```
25
26 Do not run interactive `cg auth` or write config without the user's approval.
27
282. On an explicitly requested CLI update, run `cg update --dry-run`; run `cg update` only with approval. If automatic
29 detection is wrong, pass `--method` with `homebrew`, `npm`, `go`, or `script`. Recheck `cg version` and
30 `cg commands -o json`, then record the verified version in `references/version.txt` when maintaining this skill.
31
323. Select the command, flags, enum values, output formats, endpoint, auth requirement, and `paid_only` status from
33 `cg commands -o json`. Use `cg <command> --help` only when the catalog lacks a needed detail.
34
354. Resolve CoinGecko IDs with `cg search <term> -o json` when the user supplied a name or ambiguous symbol. Do not
36 silently treat symbols as unique.
37
385. Preview unfamiliar or quota-sensitive requests with `--dry-run`. Execute parseable queries with `-o json`; use
39 `--export` only when the user requested a CSV artifact.
40
416. If a historical-data request cannot be completed because `cg` is unavailable, `cg history` fails due to a CLI defect,
42 or its response is demonstrably malformed, and a visual result can satisfy the request, immediately read
43 [references/open-historical-page.md](references/open-historical-page.md) and use its browser fallback.
44
457. Present the requested result in the user's format. For ordinary human-readable output, use a compact table and
46 preserve enough precision for the asset's magnitude.
47
48## Boundaries and Defaults
49
50- Batch IDs in one request when the command supports it. On 429, respect the reported reset/backoff rather than retrying
51 aggressively.
52- Detect paid-only commands before execution. If the current tier cannot serve the request, say so and offer a supported
53 route.
54- Do not use the browser fallback for authentication, tier, rate-limit, invalid-input, or ambiguity errors. It does not
55 satisfy requests for JSON, CSV, or other machine-readable evidence.
56- `cg` does not cover every CoinGecko endpoint. For unsupported contract-address prices, global stats, NFT detail,
57 GeckoTerminal, or logo metadata, fetch the relevant current API documentation from
58 <https://docs.coingecko.com/llms.txt> and state that the CLI route is unavailable.
59- Never expose API keys or send private wallet/account data to market-data endpoints.
60
61Completion requires the resolved coin/command, successful JSON or requested export evidence, and explicit handling of
62tier, ambiguity, or rate-limit constraints. A historical-page fallback instead requires a validated URL opened in
63Chromium plus disclosure of the CLI failure that triggered it.
64
65## User-Facing Output
66
67For ordinary human output, lead with `### 🪙 <coin> (<id>)`, show only the requested metrics in a compact table, and add
68one source line with the endpoint plus timestamp, tier, or window when material. For exports, use
69`### ✅ Exported <row count> rows`, link the artifact, and state the query/window without reproducing the CSV. Use
70`### ⚠️ Rate limited — retry after <time>` when returning control, `### ⏳ Rate limited — retrying after <time>` only
71while actively waiting, or `### ⚠️ Paid endpoint — current tier: <tier>` with one supported route. Return requested
72JSON/CSV, exact IDs, URLs, values, commands, and diagnostics undecorated.