Hyperliquid Reader (Read-Only)
Reads Hyperliquid — the on-chain perps/spot DEX — for market data via opencli and the hyperliquid plugin in this repo's opencli-plugins/hyperliquid tree (a separate plugin from opencli's built-in adapters, installed via opencli's monorepo subpath syntax).
This skill is read-only and market-data only. It reads Hyperliquid's fully public info API for analysis: market tables, funding, order book, and candles. It does NOT read individual accounts, place/modify/cancel orders, or move funds. There is no trading path in the plugin — order placement requires wallet-signed actions on a separate endpoint this adapter never calls.
How it works: every command issues a single POST https://api.hyperliquid.xyz/info with a { "type": "..." } body and normalizes the response. No API key, no wallet, no login, no running app — the info API is public.
Step 1: Ensure opencli + Plugin Are Installed and Ready
Current environment status:
If the status above shows READY, skip to Step 2. Otherwise:
NOT_INSTALLED — Install opencli
Requires Node.js >= 24 — the hyperliquid plugin declares engines.node >= 24.
SETUP_NEEDED — Install the Hyperliquid plugin
The Hyperliquid adapter is not built into opencli — it's a separate plugin:
That's the entire setup — no auth, no launch step. Verify with opencli hyperliquid markets --coin BTC.
Common setup issues
Step 2: Identify What the User Needs
Step 3: Execute the Command
General pattern
Key rules
- Coin symbols are bare perp names —
BTC,ETH,SOL,HYPE(no exchange prefix). Spot pairs areBASE/USDC(e.g.PURR/USDC); forbook/candlesyou can pass either a perp coin or a spot pair. marketsis the default lens for "how is X / the market doing" — it carries mark/oracle/mid price, 24h change, hourly funding + APR, open interest (coins and notional), and 24h volume in one row per perp. Filter with--coinfor a single asset.- Funding is reported two ways —
fundingHrPctis the raw hourly rate as a percent;fundingAprPctannualizes it (hourly × 24 × 365). Lead with APR when comparing carry across assets; use the hourly figure for "what will I pay next hour". funding-compareis the funding-arb screen — it annualizes each venue with its own interval (HL hourly, Binance/Bybit usually 4h) and reportshlVsBinancePct/hlVsBybitPctspreads. Default sort ranks by absolute HL-vs-Binance spread (widest dislocations first). A positivehlVsBinancePctmeans HL longs pay more than Binance longs.bookdefaults to 10 levels per side — raise--depth(max 20) for more, or--n-sig-figs 2..5to aggregate price levels. Compute the spread/mid from the top bid and ask.candlespulls the most recent--limitcandles of--interval(default1h, 100 candles). Valid intervals:1m 3m 5m 15m 30m 1h 2h 4h 8h 12h 1d 3d 1w 1M. Max 5000.-f jsonfor programmatic processing / feeding other skills;-f mdor-f tablefor human-readable output.- Read-only market data. No account reads, no order placement, modification, or cancellation, and no transfers — the plugin intentionally exposes no write endpoints, so don't look for workarounds.
Output format flag (-f)
Output columns
markets—coin,markPx,midPx,oraclePx,change24hPct,fundingHrPct,fundingAprPct,openInterest,oiNotional,dayNtlVlm,premiumPct,maxLeveragespot-markets—pair,base,markPx,midPx,change24hPct,dayNtlVlm,circulatingSupply,marketCap,canonicalmids—coin,midbook—side,level,px,sz,orderscandles—time,open,high,low,close,volume,tradesfunding-history—coin,fundingRatePct,fundingAprPct,premiumPct,timefunding-compare—coin,hlAprPct,binanceAprPct,bybitAprPct,hlVsBinancePct,hlVsBybitPct,nextHlFunding
Step 4: Present the Results
- Lead with the headline number, then the table. For
markets --coin BTC: state mark price, 24h change, funding APR, and open interest in prose first. For a fullmarketsdump: lead with the count and the top movers / highest-funding names. - Frame funding in carry terms — e.g. "BTC perp funding is +10.9% APR (longs pay shorts)". Positive funding ⇒ longs pay shorts; negative ⇒ shorts pay longs.
- For
funding-compare, surface the widest dislocations first — name the coin, both venues' APRs, and the spread, and remember the spread is annualized; a real arb also pays exchange/withdrawal frictions, so present it as a screen, not a guaranteed edge. - For
book, report the spread — best bid, best ask, mid, and spread in bps before (or instead of) dumping every level. Don't paste 20 levels unless asked. - For
candles, describe the move — first/last close, high/low, and direction; only show the full OHLCV table when the user wants the series. - Filter aggressively before showing —
marketshas ~180 perps andmids~700 markets; cap to top 15-20 by the relevant sort unless the user asks for the full list. - Cross-reference for trade decisions — Hyperliquid is the on-chain venue; for equities/options context pair it with the
tradingview-readerskill. For funding/basis trades,funding-compareplusmarkets(premium, OI) is the core view.
Step 5: Diagnostics
A successful BTC row confirms opencli, the plugin, and the public API are all reachable. If it errors with Unknown command: hyperliquid, reinstall the plugin (Step 1). A hyperliquid info 4xx/5xx is an upstream API issue — retry after a short wait.
Error Reference
Reference Files
references/commands.md— Every command with all flags, output schemas, and analyst workflows (funding carry, basis/arb, spot snapshot)
