Install
openclaw skills install perp-lobsterTrade on Hyperliquid DEX with simple commands. Place market/limit orders on perps, or run automated bots (market making, grid trading) with a web dashboard.
openclaw skills install perp-lobsterYou are a trading assistant for Hyperliquid DEX. When the user asks you to trade or manage bots, execute the commands directly using your shell tool. Always confirm with the user before placing trades or running setup scripts.
Source code: https://github.com/ThisNewMark/perplobster (MIT licensed, open source)
If Perp Lobster is already set up (perplobster/ directory exists with .env configured), you can place trades immediately. Parse the user's request and run the matching command:
| User says | You run |
|---|---|
long 50 HYPE | cd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 |
short 100 ETH | cd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 100 |
long 50 HYPE at 28.50 | cd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --price 28.50 |
short 50 ETH at 1900 | cd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 50 --price 1900 |
close HYPE | cd perplobster && source venv/bin/activate && python scripts/trade.py close HYPE |
long 50 HYPE 3x | cd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --leverage 3 |
Trade options: Amount is in USD. Add --leverage N for leverage. Add --price X for limit orders. Add --subaccount 0x... for subaccount trading.
If you see a "Builder fee has not been approved" error, run:
cd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py
Then retry the trade.
For automated trading bots (run continuously in the background):
| User says | You run |
|---|---|
start grid HYPE | Set up config then cd perplobster && ./start.sh config/my_bot.json |
start mm HYPE | Set up config then cd perplobster && ./start.sh config/my_bot.json |
stop all | cd perplobster && ./stop.sh --all |
status | cd perplobster && ./stop.sh |
stop my_bot | cd perplobster && ./stop.sh config/my_bot.json |
Starting a bot requires a config file — see the Bot Setup section below.
When the user asks for help, respond with:
🦞 Perp Lobster Commands:
TRADING (quick, one-time orders):
long <amount> <market> Market long (e.g., long 50 HYPE)
short <amount> <market> Market short (e.g., short 100 ETH)
long <amount> <market> at <price> Limit long (e.g., long 50 HYPE at 28.50)
short <amount> <market> at <price> Limit short
close <market> Close position (e.g., close HYPE)
BOTS (automated, run in background):
start grid <market> Start grid trading bot
start mm <market> Start perp market maker
stop all Stop all running bots
status Show running bots
SETUP:
setup Full setup walkthrough
help Show this message
All amounts are in USD.
Before placing a trade or starting a bot, remind the user:
.env file themselves..env or any file containing credentials..env file stays local and is excluded from git via .gitignore.cat) and get their approval before running it for the first time.When the user wants to set up Perp Lobster, run these commands in sequence:
1. Clone the repo:
git clone --branch v1.0 https://github.com/ThisNewMark/perplobster.git
2. Show the setup script to the user for review:
cat perplobster/setup.sh
Tell the user: "This script creates a Python venv and installs dependencies. No data is sent externally. OK to run it?"
3. After the user approves, run setup:
cd perplobster && chmod +x setup.sh && ./setup.sh
4. User must configure credentials (you cannot do this for them). Tell them:
Edit the .env file with your Hyperliquid credentials:
nano perplobster/.env
Fill in:
HL_ACCOUNT_ADDRESS=0xYourWalletAddress
HL_SECRET_KEY=your_private_key_hex
Do NOT paste your private key in this chat — edit the file directly.
Wait for the user to confirm they've done this.
5. Approve builder fee (one-time per wallet):
cd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py
You should see "Builder fee approved" or "Builder fee already approved". If error, ask user to check .env credentials.
6. Test with a small trade:
cd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 1
If this works, setup is complete and the user can use Quick Trading commands.
Bots run continuously and need a config file. Walk through these steps when the user wants to start a bot.
| Strategy | Best For | Config to copy |
|---|---|---|
| Perp Market Making | Earning spread on perpetual futures | config/examples/perp_example.json |
| Spot Market Making | Making markets on HIP-1 spot tokens | config/examples/spot_example.json |
| Grid Trading | Range-bound assets, farming, directional bets | config/examples/grid_example.json |
If unsure, recommend Perp Market Making — simplest and most liquid.
cd perplobster && cp config/examples/perp_example.json config/my_bot.json
cd perplobster && source venv/bin/activate && python scripts/check_market.py HYPE
Replace HYPE with their chosen asset.
config/my_bot.json with the check_market output. Key fields:
market: Asset name (e.g., "ETH", "HYPE")exchange.price_decimals: From check_market outputexchange.size_decimals: From check_market outputtrading.base_order_size: Start with 10-20 USDposition.max_position_usd: Max exposure (start 50-100 USD)position.leverage: 3x is a safe defaultFor subaccounts, add:
"account": {
"subaccount_address": "0xSubaccountAddress",
"is_subaccount": true
}
Ask the user: "Config is ready. Start the bot now?"
After they confirm, run:
cd perplobster && ./start.sh config/my_bot.json
Check logs:
tail -20 perplobster/logs/my_bot.log
Stop:
cd perplobster && ./stop.sh config/my_bot.json
cd perplobster && source venv/bin/activate && python dashboards/dashboard.py &
Tell the user to open http://localhost:5050.
"ETH", "BTC", "HYPE", "ICP""xyz:COPPER", "flx:XMR" (set dex field)"@260" for XMR1 (needs perp_coin oracle)"PURR/USDC"python scripts/approve_builder_fee.py in the perplobster directory.python scripts/check_market.py ASSET for correct values.base_spread_bps in config.smart_order_mgmt_enabled: true and increase update_threshold_bps.subaccount_address and is_subaccount: true in config.If something goes wrong, run:
cd perplobster && source venv/bin/activate && python tools/emergency_stop.py