| name | hyperliquid |
| version | 1.1.0 |
| description | Query Hyperliquid DEX for account balances, positions, PnL, and margin data via ClawdBot API |
| author | ClawdBot |
| category | finance |
| tags | ["defi","trading","perpetuals","hyperliquid","crypto","portfolio","positions","margin-trading","dex","derivatives"] |
| env | [{"name":"TRADING_WALLET_ADDRESS","description":"Default wallet address to query (0x format)","required":false}] |
| keywords | ["hyperliquid account","perp positions","unrealized pnl","margin usage","liquidation price","cross margin","leverage trading"] |
| triggers | ["hyperliquid","my perp positions","hyperliquid balance","check my HL account","show positions on hyperliquid"] |
Hyperliquid DEX Integration
Query your Hyperliquid perpetuals account for real-time balances, open positions, unrealized PnL, and margin data.
ClawdBot Integration
This skill is designed for ClawdBot - it calls ClawdBot's internal API server which proxies requests to the official Hyperliquid API at https://api.hyperliquid.xyz.
Architecture:
User → ClawdBot Gateway → ClawdBot API Server → Hyperliquid Public API
(Railway) (api.hyperliquid.xyz)
The ClawdBot API server handles:
- Timeout protection (15s)
- Response parsing and formatting
- Default wallet address from env vars
Capabilities
- Account Overview: Get total account value, free collateral, and margin usage
- Position Tracking: View all open perpetual positions with size, direction, entry price
- PnL Monitoring: Real-time unrealized PnL and return on equity per position
- Risk Management: Liquidation prices and leverage info for each position
- Multi-Wallet: Query any wallet address or use configured trading wallet
Environment Variables
| Variable | Required | Description |
|---|
TRADING_WALLET_ADDRESS | No | Default wallet address (0x format) to query when none provided |
API Endpoint
ClawdBot Internal API:
POST {CLAWDBOT_API_URL}/api/hyperliquid/account
Upstream API (called by ClawdBot):
POST https://api.hyperliquid.xyz/info
Request (Optional Body)
{
"walletAddress": "0x..."
}
If no wallet address provided, uses TRADING_WALLET_ADDRESS env var.
Response
{
"timestamp":