{
  "schemaVersion": "1.0",
  "item": {
    "slug": "perp-lobster",
    "name": "Perp Lobster",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/ThisNewMark/perp-lobster",
    "canonicalUrl": "https://clawhub.ai/ThisNewMark/perp-lobster",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/perp-lobster",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=perp-lobster",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/TROUBLESHOOTING.md",
      "references/CONFIG_REFERENCE.md",
      "references/STRATEGIES.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/perp-lobster"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/perp-lobster",
    "agentPageUrl": "https://openagent3.xyz/skills/perp-lobster/agent",
    "manifestUrl": "https://openagent3.xyz/skills/perp-lobster/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/perp-lobster/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Perp Lobster - Hyperliquid Trading",
        "body": "You 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.\n\nSource code: https://github.com/ThisNewMark/perplobster (MIT licensed, open source)"
      },
      {
        "title": "Quick Trading",
        "body": "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:\n\nUser saysYou runlong 50 HYPEcd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50short 100 ETHcd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 100long 50 HYPE at 28.50cd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --price 28.50short 50 ETH at 1900cd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 50 --price 1900close HYPEcd perplobster && source venv/bin/activate && python scripts/trade.py close HYPElong 50 HYPE 3xcd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --leverage 3\n\nTrade options: Amount is in USD. Add --leverage N for leverage. Add --price X for limit orders. Add --subaccount 0x... for subaccount trading.\n\nIf you see a \"Builder fee has not been approved\" error, run:\n\ncd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py\n\nThen retry the trade."
      },
      {
        "title": "Bot Commands",
        "body": "For automated trading bots (run continuously in the background):\n\nUser saysYou runstart grid HYPESet up config then cd perplobster && ./start.sh config/my_bot.jsonstart mm HYPESet up config then cd perplobster && ./start.sh config/my_bot.jsonstop allcd perplobster && ./stop.sh --allstatuscd perplobster && ./stop.shstop my_botcd perplobster && ./stop.sh config/my_bot.json\n\nStarting a bot requires a config file — see the Bot Setup section below."
      },
      {
        "title": "Help Command",
        "body": "When the user asks for help, respond with:\n\n🦞 Perp Lobster Commands:\n\nTRADING (quick, one-time orders):\n  long <amount> <market>              Market long (e.g., long 50 HYPE)\n  short <amount> <market>             Market short (e.g., short 100 ETH)\n  long <amount> <market> at <price>   Limit long (e.g., long 50 HYPE at 28.50)\n  short <amount> <market> at <price>  Limit short\n  close <market>                      Close position (e.g., close HYPE)\n\nBOTS (automated, run in background):\n  start grid <market>               Start grid trading bot\n  start mm <market>                 Start perp market maker\n  stop all                          Stop all running bots\n  status                            Show running bots\n\nSETUP:\n  setup                             Full setup walkthrough\n  help                              Show this message\n\nAll amounts are in USD."
      },
      {
        "title": "Safety Warnings",
        "body": "Before placing a trade or starting a bot, remind the user:\n\nTrading is risky. They can lose all their funds. This is not financial advice.\nUse a subaccount with limited funds. Never put all funds in a bot.\nStart small. Use minimum order sizes until comfortable."
      },
      {
        "title": "Security Rules",
        "body": "NEVER ask the user to paste their private key in chat. The user must edit the .env file themselves.\nNEVER read, cat, echo, or display the contents of .env or any file containing credentials.\nThe .env file stays local and is excluded from git via .gitignore.\nAlways show the user what a script does (via cat) and get their approval before running it for the first time."
      },
      {
        "title": "Initial Setup (run these commands in order)",
        "body": "When the user wants to set up Perp Lobster, run these commands in sequence:\n\n1. Clone the repo:\n\ngit clone --branch v1.0 https://github.com/ThisNewMark/perplobster.git\n\n2. Show the setup script to the user for review:\n\ncat perplobster/setup.sh\n\nTell the user: \"This script creates a Python venv and installs dependencies. No data is sent externally. OK to run it?\"\n\n3. After the user approves, run setup:\n\ncd perplobster && chmod +x setup.sh && ./setup.sh\n\n4. User must configure credentials (you cannot do this for them). Tell them:\n\nEdit the .env file with your Hyperliquid credentials:\n  nano perplobster/.env\n\nFill in:\n  HL_ACCOUNT_ADDRESS=0xYourWalletAddress\n  HL_SECRET_KEY=your_private_key_hex\n\nDo NOT paste your private key in this chat — edit the file directly.\n\nWait for the user to confirm they've done this.\n\n5. Approve builder fee (one-time per wallet):\n\ncd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py\n\nYou should see \"Builder fee approved\" or \"Builder fee already approved\". If error, ask user to check .env credentials.\n\n6. Test with a small trade:\n\ncd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 1\n\nIf this works, setup is complete and the user can use Quick Trading commands."
      },
      {
        "title": "Bot Setup (for automated trading)",
        "body": "Bots run continuously and need a config file. Walk through these steps when the user wants to start a bot."
      },
      {
        "title": "Choose a Strategy",
        "body": "StrategyBest ForConfig to copyPerp Market MakingEarning spread on perpetual futuresconfig/examples/perp_example.jsonSpot Market MakingMaking markets on HIP-1 spot tokensconfig/examples/spot_example.jsonGrid TradingRange-bound assets, farming, directional betsconfig/examples/grid_example.json\n\nIf unsure, recommend Perp Market Making — simplest and most liquid."
      },
      {
        "title": "Configure",
        "body": "Copy the example config:\n\ncd perplobster && cp config/examples/perp_example.json config/my_bot.json\n\nGet correct decimals for the market:\n\ncd perplobster && source venv/bin/activate && python scripts/check_market.py HYPE\n\nReplace HYPE with their chosen asset.\n\nEdit config/my_bot.json with the check_market output. Key fields:\n\nmarket: Asset name (e.g., \"ETH\", \"HYPE\")\nexchange.price_decimals: From check_market output\nexchange.size_decimals: From check_market output\ntrading.base_order_size: Start with 10-20 USD\nposition.max_position_usd: Max exposure (start 50-100 USD)\nposition.leverage: 3x is a safe default\n\nFor subaccounts, add:\n\n\"account\": {\n    \"subaccount_address\": \"0xSubaccountAddress\",\n    \"is_subaccount\": true\n}"
      },
      {
        "title": "Start the Bot",
        "body": "Ask the user: \"Config is ready. Start the bot now?\"\n\nAfter they confirm, run:\n\ncd perplobster && ./start.sh config/my_bot.json\n\nCheck logs:\n\ntail -20 perplobster/logs/my_bot.log\n\nStop:\n\ncd perplobster && ./stop.sh config/my_bot.json"
      },
      {
        "title": "Dashboard (Optional)",
        "body": "cd perplobster && source venv/bin/activate && python dashboards/dashboard.py &\n\nTell the user to open http://localhost:5050."
      },
      {
        "title": "Hyperliquid Market Types",
        "body": "Standard Perps: Just the ticker — \"ETH\", \"BTC\", \"HYPE\", \"ICP\"\nHIP-3 Builder Perps: Dex prefix — \"xyz:COPPER\", \"flx:XMR\" (set dex field)\nHIP-1 Builder Spot: Index format — \"@260\" for XMR1 (needs perp_coin oracle)\nCanonical Spot: Pair format — \"PURR/USDC\""
      },
      {
        "title": "Troubleshooting",
        "body": "\"Builder fee has not been approved\": Run python scripts/approve_builder_fee.py in the perplobster directory.\n\"Price must be divisible by tick size\": Wrong decimals. Run python scripts/check_market.py ASSET for correct values.\n\"Post-only order would cross\": Spread too tight. Increase base_spread_bps in config.\n\"Rate limited\": Enable smart_order_mgmt_enabled: true and increase update_threshold_bps.\n422 errors with fromhex(): Wallet addresses must be full 42-character hex (0x + 40 chars).\nOrders not showing: Check subaccount_address and is_subaccount: true in config."
      },
      {
        "title": "Emergency Stop",
        "body": "If something goes wrong, run:\n\ncd perplobster && source venv/bin/activate && python tools/emergency_stop.py"
      }
    ],
    "body": "Perp Lobster - Hyperliquid Trading\n\nYou 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.\n\nSource code: https://github.com/ThisNewMark/perplobster (MIT licensed, open source)\n\nQuick Trading\n\nIf 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:\n\nUser says\tYou run\nlong 50 HYPE\tcd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50\nshort 100 ETH\tcd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 100\nlong 50 HYPE at 28.50\tcd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --price 28.50\nshort 50 ETH at 1900\tcd perplobster && source venv/bin/activate && python scripts/trade.py short ETH 50 --price 1900\nclose HYPE\tcd perplobster && source venv/bin/activate && python scripts/trade.py close HYPE\nlong 50 HYPE 3x\tcd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 50 --leverage 3\n\nTrade options: Amount is in USD. Add --leverage N for leverage. Add --price X for limit orders. Add --subaccount 0x... for subaccount trading.\n\nIf you see a \"Builder fee has not been approved\" error, run:\n\ncd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py\n\n\nThen retry the trade.\n\nBot Commands\n\nFor automated trading bots (run continuously in the background):\n\nUser says\tYou run\nstart grid HYPE\tSet up config then cd perplobster && ./start.sh config/my_bot.json\nstart mm HYPE\tSet up config then cd perplobster && ./start.sh config/my_bot.json\nstop all\tcd perplobster && ./stop.sh --all\nstatus\tcd perplobster && ./stop.sh\nstop my_bot\tcd perplobster && ./stop.sh config/my_bot.json\n\nStarting a bot requires a config file — see the Bot Setup section below.\n\nHelp Command\n\nWhen the user asks for help, respond with:\n\n🦞 Perp Lobster Commands:\n\nTRADING (quick, one-time orders):\n  long <amount> <market>              Market long (e.g., long 50 HYPE)\n  short <amount> <market>             Market short (e.g., short 100 ETH)\n  long <amount> <market> at <price>   Limit long (e.g., long 50 HYPE at 28.50)\n  short <amount> <market> at <price>  Limit short\n  close <market>                      Close position (e.g., close HYPE)\n\nBOTS (automated, run in background):\n  start grid <market>               Start grid trading bot\n  start mm <market>                 Start perp market maker\n  stop all                          Stop all running bots\n  status                            Show running bots\n\nSETUP:\n  setup                             Full setup walkthrough\n  help                              Show this message\n\nAll amounts are in USD.\n\nSafety Warnings\n\nBefore placing a trade or starting a bot, remind the user:\n\nTrading is risky. They can lose all their funds. This is not financial advice.\nUse a subaccount with limited funds. Never put all funds in a bot.\nStart small. Use minimum order sizes until comfortable.\nSecurity Rules\nNEVER ask the user to paste their private key in chat. The user must edit the .env file themselves.\nNEVER read, cat, echo, or display the contents of .env or any file containing credentials.\nThe .env file stays local and is excluded from git via .gitignore.\nAlways show the user what a script does (via cat) and get their approval before running it for the first time.\nInitial Setup (run these commands in order)\n\nWhen the user wants to set up Perp Lobster, run these commands in sequence:\n\n1. Clone the repo:\n\ngit clone --branch v1.0 https://github.com/ThisNewMark/perplobster.git\n\n\n2. Show the setup script to the user for review:\n\ncat perplobster/setup.sh\n\n\nTell the user: \"This script creates a Python venv and installs dependencies. No data is sent externally. OK to run it?\"\n\n3. After the user approves, run setup:\n\ncd perplobster && chmod +x setup.sh && ./setup.sh\n\n\n4. User must configure credentials (you cannot do this for them). Tell them:\n\nEdit the .env file with your Hyperliquid credentials:\n  nano perplobster/.env\n\nFill in:\n  HL_ACCOUNT_ADDRESS=0xYourWalletAddress\n  HL_SECRET_KEY=your_private_key_hex\n\nDo NOT paste your private key in this chat — edit the file directly.\n\n\nWait for the user to confirm they've done this.\n\n5. Approve builder fee (one-time per wallet):\n\ncd perplobster && source venv/bin/activate && python scripts/approve_builder_fee.py\n\n\nYou should see \"Builder fee approved\" or \"Builder fee already approved\". If error, ask user to check .env credentials.\n\n6. Test with a small trade:\n\ncd perplobster && source venv/bin/activate && python scripts/trade.py long HYPE 1\n\n\nIf this works, setup is complete and the user can use Quick Trading commands.\n\nBot Setup (for automated trading)\n\nBots run continuously and need a config file. Walk through these steps when the user wants to start a bot.\n\nChoose a Strategy\nStrategy\tBest For\tConfig to copy\nPerp Market Making\tEarning spread on perpetual futures\tconfig/examples/perp_example.json\nSpot Market Making\tMaking markets on HIP-1 spot tokens\tconfig/examples/spot_example.json\nGrid Trading\tRange-bound assets, farming, directional bets\tconfig/examples/grid_example.json\n\nIf unsure, recommend Perp Market Making — simplest and most liquid.\n\nConfigure\nCopy the example config:\ncd perplobster && cp config/examples/perp_example.json config/my_bot.json\n\nGet correct decimals for the market:\ncd perplobster && source venv/bin/activate && python scripts/check_market.py HYPE\n\n\nReplace HYPE with their chosen asset.\n\nEdit config/my_bot.json with the check_market output. Key fields:\nmarket: Asset name (e.g., \"ETH\", \"HYPE\")\nexchange.price_decimals: From check_market output\nexchange.size_decimals: From check_market output\ntrading.base_order_size: Start with 10-20 USD\nposition.max_position_usd: Max exposure (start 50-100 USD)\nposition.leverage: 3x is a safe default\n\nFor subaccounts, add:\n\n\"account\": {\n    \"subaccount_address\": \"0xSubaccountAddress\",\n    \"is_subaccount\": true\n}\n\nStart the Bot\n\nAsk the user: \"Config is ready. Start the bot now?\"\n\nAfter they confirm, run:\n\ncd perplobster && ./start.sh config/my_bot.json\n\n\nCheck logs:\n\ntail -20 perplobster/logs/my_bot.log\n\n\nStop:\n\ncd perplobster && ./stop.sh config/my_bot.json\n\nDashboard (Optional)\ncd perplobster && source venv/bin/activate && python dashboards/dashboard.py &\n\n\nTell the user to open http://localhost:5050.\n\nHyperliquid Market Types\nStandard Perps: Just the ticker — \"ETH\", \"BTC\", \"HYPE\", \"ICP\"\nHIP-3 Builder Perps: Dex prefix — \"xyz:COPPER\", \"flx:XMR\" (set dex field)\nHIP-1 Builder Spot: Index format — \"@260\" for XMR1 (needs perp_coin oracle)\nCanonical Spot: Pair format — \"PURR/USDC\"\nTroubleshooting\n\"Builder fee has not been approved\": Run python scripts/approve_builder_fee.py in the perplobster directory.\n\"Price must be divisible by tick size\": Wrong decimals. Run python scripts/check_market.py ASSET for correct values.\n\"Post-only order would cross\": Spread too tight. Increase base_spread_bps in config.\n\"Rate limited\": Enable smart_order_mgmt_enabled: true and increase update_threshold_bps.\n422 errors with fromhex(): Wallet addresses must be full 42-character hex (0x + 40 chars).\nOrders not showing: Check subaccount_address and is_subaccount: true in config.\nEmergency Stop\n\nIf something goes wrong, run:\n\ncd perplobster && source venv/bin/activate && python tools/emergency_stop.py"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/ThisNewMark/perp-lobster",
    "publisherUrl": "https://clawhub.ai/ThisNewMark/perp-lobster",
    "owner": "ThisNewMark",
    "version": "1.0.7",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/perp-lobster",
    "downloadUrl": "https://openagent3.xyz/downloads/perp-lobster",
    "agentUrl": "https://openagent3.xyz/skills/perp-lobster/agent",
    "manifestUrl": "https://openagent3.xyz/skills/perp-lobster/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/perp-lobster/agent.md"
  }
}