External agent skills
External agent skills (src/skills/external/*) Each key is only needed if the corresponding skill is activated. These are consumed by the ve
CMC_PRO_API_KEY
CoinMarketCap Pro API key.
- What it controls: the cmc-api-crypto / cmc-api-dex / cmc-api-exchange / cmc-api-market external skills.
- Consumed by: the four
cmc-*SKILL.md scripts under src/skills/external/. - When to set: you want ticker, market-cap, and listings data from CoinMarketCap instead of (or in addition to) CoinGecko.
- When unset: the cmc-* skills refuse to activate.
- Format: CMC Pro key from https://pro.coinmarketcap.com. Sent as header
X-CMC_PRO_API_KEY. - Setting home: Not a user-facing setting
CMC_API_KEY
CoinMarketCap key for the native priority-chain provider (distinct from CMC_PRO_API_KEY which gates the legacy vendored external skills).
- What it controls: activates the
cmcprovider in the price / trending priority chain (PROVIDER_CATALOG.cmc, priority 30). - Consumed by: src/tools/providers/cmc.ts via src/tools/_shared/market-data-priority-chain.ts.
- When to set: you want CMC as a paid-tier fallback after Minara, binance-public, hyperliquid, okx-public, and the coingecko tiers. Useful for tokens that exist on CMC but not on the free providers.
- When unset: the cmc provider is omitted from the price/trending chain. Free providers cover the vast majority of symbols anyway.
- Format: a CMC Pro key from https://pro.coinmarketcap.com. Sent in the
X-CMC_PRO_API_KEYheader. Same key shape as CMC_PRO_API_KEY (the two vars exist so operators can scope the legacy external path independently from the native priority chain). - Setting home: Settings → API Keys
COINGECKO_API_KEY
CoinGecko Pro API key.
- What it controls: the
coingecko_*typed passthrough tools (one per REST family: simple, coins, platforms, exchanges, derivatives, treasury, nfts, search, global, news, onchain) over CoinGecko Pro (~85 read-only GET endpoints). Also the native price / kline / on-chain provider chain (coingecko-pro) and Data Studio's CoinGecko proxy source. - Consumed by: src/generated/coingecko/client.ts (REST), src/tools/providers/coingecko-public.ts (priority chain), src/data-studio/sources.ts (Data Studio), and the vendored src/skills/external/coingecko/ skill.
- When to set: you want local Pro coverage (higher rate limits, Pro-only endpoints) without going through Minara. A local key calls pro-api.coingecko.com directly; without one the typed tools forward through the Minara backend (platform Pro key) when a Minara login is present.
- When unset: the coingecko_* tools still register. With a Minara login they forward through the backend; without a key and without a login, calls return an error naming this var. The free-tier price/kline/on-chain provider (
coingecko-free) stays in the priority chain. Data Studio still uses the public demo host. - Format: a CoinGecko Pro API key from https://www.coingecko.com/en/api/pricing. Sent as header
x-cg-pro-api-key. Demo keys (x-cg-demo-api-key) are not used by the typed passthrough. - Setting home: Settings → API Keys
COINGLASS_API_KEY
CoinGlass v4 crypto derivatives + market data.
- What it controls: powers the
coinglassskill, a typed passthrough over the CoinGlass v4 REST API (~160 read-only endpoints across futures, spot, options, ETF flows, on-chain indices, exchange balances, and liquidation heatmaps). The skill exposes one category tool per family (coinglass_futures, coinglass_spot, coinglass_etf, coinglass_option, coinglass_index, …); the model picks an endpoint id per call. Also feeds the btc_cyclebtc_rainbow_bandtool (rainbow chart). - Consumed by: src/generated/coinglass/client.ts (REST) and src/tools/btc-cycle-rainbow.ts.
- When to set: you want first-class CoinGlass derivatives / market data, including Pro/Enterprise-only endpoints (liquidation heatmaps, some indices). A local key calls CoinGlass directly; without one the skill forwards through the Minara backend (platform key) for the subset the backend allow-lists.
- When unset: the coinglass tools still register and forward through the Minara backend when a Minara login is present; endpoints the backend does not allow-list return an error naming this var.
- Format: key from https://coinglass.com, sent as header
CG-API-KEY. - Setting home: Settings → API Keys
BINANCE_WEB3_API_KEY / BINANCE_WEB3_SECRET_KEY
Binance Web3 pair — BINANCE_WEB3_API_KEY / BINANCE_WEB3_SECRET_KEY.
- What it controls: the native
binance-web3-dexprovider (PROVIDER_CATALOG.binance-web3-dex, priority 72), the PREFERRED on-chain data source on Ethereum / BSC / Base / Solana for dex_token_meta / _holders / _pools, plus wallet_aggregate_balance / _history when the query stays on those four chains (or when the OKX quad is unset). Outranks the coingecko on-chain tiers and okx-dex on those chains. Distinct from the zero-config binance-web3 audit/meme endpoints, which never need a key. ALSO powers the Data Studiobinance-web3proxy source (read-only on-chain market data for generated dashboards). - Consumed by: src/tools/providers/binance-web3-dex.ts via src/tools/_shared/onchain-token-priority-chain.ts; the
binance-web3external skill; and the Data Studio data proxy (src/gateway/api.ts via src/data-studio/sources.ts + src/data-studio/request-signer.ts). - When to set: you want Binance Web3's DEX-native token data (price / mcap / volume / holders in one call, holder + liquidity rankings) and wallet aggregation on the four launch chains.
- When unset: the binance-web3-dex provider is omitted; on-chain meta / pools fall through to coingecko on-chain, holders to coingecko-pro, wallet aggregation to okx-dex; the
binance-web3external skill stays hidden; the Data Studio source returns a credential prompt. - Format: API Key + Secret Key pair from a project created at https://web3.binance.com/en/dev-portal/project. Both MUST be set together — the registry hides binance-web3-dex if either is missing. Requests are HMAC-SHA256 signed (X-OC-* headers).
- Setting home: Settings → API Keys
OKX_API_KEY / OKX_SECRET_KEY / OKX_PASSPHRASE / OKX_PROJECT_ID
OKX 4-var quad — OKX_API_KEY / OKX_SECRET_KEY / OKX_PASSPHRASE / OKX_PROJECT_ID.
- What it controls: the native
okx-dexprovider (PROVIDER_CATALOG.okx-dex, priority 40), which powers thediscovery.dexskill (dex_token_meta / _holders / _pools fall- back), wallet_aggregate_balance / _history (the only provider covering chains outside the Binance Web3 four), thememe.*tools on chains binance-web3 doesn't cover (everything outside BSC + Solana), and thesecurity.tokenskill on non-Binance-Web3 chains (everything outside Ethereum / BSC / Base / Solana). - Consumed by: src/tools/providers/okx-dex.ts.
- When to set: you want OKX-only capabilities (wallet aggregation on Arbitrum / Polygon / Tron / etc., security audit on Arbitrum / Polygon / etc., meme discovery on non-Binance-Web3 chains), or a fallback behind binance-web3-dex on the four Binance Web3 chains.
- When unset: the okx-dex provider stays inactive; on-chain meta / pools fall through to binance-web3-dex (when configured) and coingecko on-chain; wallet aggregation runs best-effort on the Binance Web3 chains when that pair is set, otherwise it and non-GeckoTerminal chain audits and meme discovery off the binance-web3 supported chains surface as
provider_unavailablewith a missing-env hint. - Format: standard OKX HMAC quad. All four MUST be set together — the registry hides okx-dex if any one is missing. Issue at https://www.okx.com/docs-v5/en/#authentication for the trading API; the Web3 product line shares the same auth and adds a project id you set when creating a Web3 app.
- Setting home: Settings → API Keys
Polymarket credentials — NO env required for the read-only prediction.markets skill. The native skill uses Polymarket's public Gamma API (https://gamma-api.polymarket.com) and CLOB read endpoints (https://clob.polymarket.com), neither of which need authentication for the read-only surface (prediction_search_events, prediction_get_event, prediction_market_orderbook, prediction_market_history, prediction_trending_markets). The retired external-polymarket SKILL.md (deleted in PR-G) used PRIVATE_KEY / RPC_URL / POLY_BUILDER_* to place orders via the authenticated builder endpoints. That write path is NOT yet ported to the native surface. If you need order placement, hold your own keys outside this agent for now.