[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M76KECBWAW4WW52GS8AXE5GY":3,"skill-same:01M76KECBWAW4WW52GS8AXE5GY":221},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":21,"frontMatter":22,"refName":39,"commitSha":40,"skillDirectory":41,"forksCount":13,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":44,"install":45,"resources":58},"01M76KECBWAW4WW52GS8AXE5GY","openbroker",null,"Hyperliquid trading plugin with background position monitoring. Execute market orders, limit orders, manage positions, view funding rates, and run trading strategies with automatic alerts for PnL changes and liquidation risk.","meghal86\u002Fstacksignal","meghal86","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F37388715?v=4","01M6CS2EW8SK89GH52R2ZEN8QQ","01M728J5CGY456EETEFG6HJBTM",0,"MIT","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: openbroker\ndescription: Hyperliquid trading plugin with background position monitoring. Execute market orders, limit orders, manage positions, view funding rates, and run trading strategies with automatic alerts for PnL changes and liquidation risk.\nlicense: MIT\ncompatibility: Requires Node.js 22+, network access to api.hyperliquid.xyz\nhomepage: https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fopenbroker\nmetadata: {\"author\": \"monemetrics\", \"version\": \"1.0.44\", \"openclaw\": {\"requires\": {\"bins\": [\"openbroker\"], \"env\": [\"HYPERLIQUID_PRIVATE_KEY\"]}, \"primaryEnv\": \"HYPERLIQUID_PRIVATE_KEY\", \"install\": [{\"id\": \"node\", \"kind\": \"node\", \"package\": \"openbroker\", \"bins\": [\"openbroker\"], \"label\": \"Install openbroker (npm)\"}]}}\nallowed-tools: ob_account ob_positions ob_funding ob_markets ob_search ob_spot ob_fills ob_orders ob_order_status ob_fees ob_candles ob_funding_history ob_trades ob_rate_limit ob_buy ob_sell ob_limit ob_trigger ob_tpsl ob_cancel ob_twap ob_bracket ob_chase ob_watcher_status Bash(openbroker:*)\n---\n\n# Open Broker - Hyperliquid Trading CLI\n\nExecute trading operations on Hyperliquid DEX with builder fee support.\n\n## Installation\n\n```bash\nnpm install -g openbroker\n```\n\n## Quick Start\n\n```bash\n# 1. Setup (generates wallet, creates config, approves builder fee)\nopenbroker setup\n\n# 2. Fund your wallet with USDC on Arbitrum, then deposit at https:\u002F\u002Fapp.hyperliquid.xyz\u002F\n\n# 3. Start trading\nopenbroker account\nopenbroker buy --coin ETH --size 0.1\n```\n\n## Command Reference\n\n### Setup\n```bash\nopenbroker setup              # One-command setup (wallet + config + builder approval)\nopenbroker approve-builder --check  # Check builder fee status (for troubleshooting)\n```\n\nThe `setup` command offers three modes:\n1. **Import existing key** — use a private key you already have (master wallet)\n2. **Generate new wallet** — create a fresh master wallet\n3. **Generate API wallet** (recommended for agents) — creates a restricted wallet that can trade but cannot withdraw\n\nFor options 1 and 2, setup saves config and approves the builder fee automatically.\nFor option 3 (API wallet), see the API Wallet Setup section below.\n\n### API Wallet Setup (Recommended for Agents)\n\nAPI wallets can place trades on behalf of a master account but **cannot withdraw funds**. This is the safest option for automated agents.\n\n**Flow:**\n1. Run `openbroker setup` and choose option 3 (\"Generate API wallet\")\n2. The CLI generates a keypair and prints an approval URL (e.g. `https:\u002F\u002Fopenbroker.dev\u002Fapprove?agent=0xABC...`)\n3. The agent owner opens the URL in a browser and connects their master wallet (MetaMask etc.)\n4. The master wallet signs two transactions: `ApproveAgent` (authorizes the API wallet) and `ApproveBuilderFee` (approves the 1 bps fee)\n5. The CLI detects the approval automatically and saves the config\n\n**After setup, the config will contain:**\n```\nHYPERLIQUID_PRIVATE_KEY=0x...        # API wallet private key\nHYPERLIQUID_ACCOUNT_ADDRESS=0x...    # Master account address\nHYPERLIQUID_NETWORK=mainnet\n```\n\n**Important for agents:** When using an API wallet, pass the approval URL to the agent owner (the human who controls the master wallet). The owner must approve in a browser before the agent can trade. The CLI waits up to 10 minutes for the approval. If it times out, re-run `openbroker setup`.\n\n### Account Info\n```bash\nopenbroker account            # Balance, equity, margin\nopenbroker account --orders   # Include open orders\nopenbroker positions          # Open positions with PnL\nopenbroker positions --coin ETH  # Specific coin\n```\n\n### Funding Rates\n```bash\nopenbroker funding --top 20   # Top 20 by funding rate\nopenbroker funding --coin ETH # Specific coin\n```\n\n### Markets\n```bash\nopenbroker markets --top 30   # Top 30 main perps\nopenbroker markets --coin BTC # Specific coin\n```\n\n### All Markets (Perps + Spot + HIP-3)\n```bash\nopenbroker all-markets                 # Show all markets\nopenbroker all-markets --type perp     # Main perps only\nopenbroker all-markets --type hip3     # HIP-3 perps only\nopenbroker all-markets --type spot     # Spot markets only\nopenbroker all-markets --top 20        # Top 20 by volume\n```\n\n### Search Markets (Find assets across providers)\n```bash\nopenbroker search --query GOLD    # Find all GOLD markets\nopenbroker search --query BTC     # Find BTC across all providers\nopenbroker search --query ETH --type perp  # ETH perps only\n```\n\n### Spot Markets\n```bash\nopenbroker spot                   # Show all spot markets\nopenbroker spot --coin PURR       # Show PURR market info\nopenbroker spot --balances        # Show your spot balances\nopenbroker spot --top 20          # Top 20 by volume\n```\n\n### Trade Fills\n```bash\nopenbroker fills                          # Recent fills\nopenbroker fills --coin ETH               # ETH fills only\nopenbroker fills --coin BTC --side buy --top 50\n```\n\n### Order History\n```bash\nopenbroker orders                         # Recent orders (all statuses)\nopenbroker orders --coin ETH --status filled\nopenbroker orders --top 50\n```\n\n### Order Status\n```bash\nopenbroker order-status --oid 123456789   # Check specific order\nopenbroker order-status --oid 0x1234...   # By client order ID\n```\n\n### Fee Schedule\n```bash\nopenbroker fees                           # Fee tier, rates, and volume\n```\n\n### Candle Data (OHLCV)\n```bash\nopenbroker candles --coin ETH                           # 24 hourly candles\nopenbroker candles --coin BTC --interval 4h --bars 48   # 48 four-hour bars\nopenbroker candles --coin SOL --interval 1d --bars 30   # 30 daily bars\n```\n\n### Funding History\n```bash\nopenbroker funding-history --coin ETH              # Last 24h\nopenbroker funding-history --coin BTC --hours 168  # Last 7 days\n```\n\n### Recent Trades (Tape)\n```bash\nopenbroker trades --coin ETH              # Last 30 trades\nopenbroker trades --coin BTC --top 50     # Last 50 trades\n```\n\n### Rate Limit\n```bash\nopenbroker rate-limit                     # API usage and capacity\n```\n\n## Trading Commands\n\n### Market Orders (Quick)\n```bash\nopenbroker buy --coin ETH --size 0.1\nopenbroker sell --coin BTC --size 0.01\nopenbroker buy --coin SOL --size 5 --slippage 100  # Custom slippage (bps)\n```\n\n### Market Orders (Full)\n```bash\nopenbroker market --coin ETH --side buy --size 0.1\nopenbroker market --coin BTC --side sell --size 0.01 --slippage 100\n```\n\n### Limit Orders\n```bash\nopenbroker limit --coin ETH --side buy --size 1 --price 3000\nopenbroker limit --coin SOL --side sell --size 10 --price 200 --tif ALO\n```\n\n### Set TP\u002FSL on Existing Position\n```bash\n# Set take profit at $40, stop loss at $30\nopenbroker tpsl --coin HYPE --tp 40 --sl 30\n\n# Set TP at +10% from entry, SL at entry (breakeven)\nopenbroker tpsl --coin HYPE --tp +10% --sl entry\n\n# Set only stop loss at -5% from entry\nopenbroker tpsl --coin ETH --sl -5%\n\n# Partial position TP\u002FSL\nopenbroker tpsl --coin ETH --tp 4000 --sl 3500 --size 0.5\n```\n\n### Trigger Orders (Standalone TP\u002FSL)\n```bash\n# Take profit: sell when price rises to $40\nopenbroker trigger --coin HYPE --side sell --size 0.5 --trigger 40 --type tp\n\n# Stop loss: sell when price drops to $30\nopenbroker trigger --coin HYPE --side sell --size 0.5 --trigger 30 --type sl\n```\n\n### Cancel Orders\n```bash\nopenbroker cancel --all           # Cancel all orders\nopenbroker cancel --coin ETH      # Cancel ETH orders only\nopenbroker cancel --oid 123456    # Cancel specific order\n```\n\n## Advanced Execution\n\n### TWAP (Time-Weighted Average Price)\n```bash\n# Execute 1 ETH buy over 1 hour (auto-calculates slices)\nopenbroker twap --coin ETH --side buy --size 1 --duration 3600\n\n# Custom intervals with randomization\nopenbroker twap --coin BTC --side sell --size 0.5 --duration 1800 --intervals 6 --randomize 20\n```\n\n### Scale In\u002FOut (Grid Orders)\n```bash\n# Place 5 buy orders ranging 2% below current price\nopenbroker scale --coin ETH --side buy --size 1 --levels 5 --range 2\n\n# Scale out with exponential distribution\nopenbroker scale --coin BTC --side sell --size 0.5 --levels 4 --range 3 --distribution exponential --reduce\n```\n\n### Bracket Order (Entry + TP + SL)\n```bash\n# Long ETH with 3% take profit and 1.5% stop loss\nopenbroker bracket --coin ETH --side buy --size 0.5 --tp 3 --sl 1.5\n\n# Short with limit entry\nopenbroker bracket --coin BTC --side sell --size 0.1 --entry limit --price 100000 --tp 5 --sl 2\n```\n\n### Chase Order (Follow Price)\n```bash\n# Chase buy with ALO orders until filled\nopenbroker chase --coin ETH --side buy --size 0.5 --timeout 300\n\n# Aggressive chase with tight offset\nopenbroker chase --coin SOL --side buy --size 10 --offset 2 --timeout 60\n```\n\n## Trading Strategies\n\n### Funding Arbitrage\n```bash\n# Collect funding on ETH if rate > 25% annualized\nopenbroker funding-arb --coin ETH --size 5000 --min-funding 25\n\n# Run for 24 hours, check every 30 minutes\nopenbroker funding-arb --coin BTC --size 10000 --duration 24 --check 30 --dry\n```\n\n### Grid Trading\n```bash\n# ETH grid from $3000-$4000 with 10 levels, 0.1 ETH per level\nopenbroker grid --coin ETH --lower 3000 --upper 4000 --grids 10 --size 0.1\n\n# Accumulation grid (buys only)\nopenbroker grid --coin BTC --lower 90000 --upper 100000 --grids 5 --size 0.01 --mode long\n```\n\n### DCA (Dollar Cost Averaging)\n```bash\n# Buy $100 of ETH every hour for 24 hours\nopenbroker dca --coin ETH --amount 100 --interval 1h --count 24\n\n# Invest $5000 in BTC over 30 days with daily purchases\nopenbroker dca --coin BTC --total 5000 --interval 1d --count 30\n```\n\n### Market Making Spread\n```bash\n# Market make ETH with 0.1 size, 10bps spread\nopenbroker mm-spread --coin ETH --size 0.1 --spread 10\n\n# Tighter spread with position limit\nopenbroker mm-spread --coin BTC --size 0.01 --spread 5 --max-position 0.1\n```\n\n### Maker-Only MM (ALO orders)\n```bash\n# Market make using ALO (post-only) orders - guarantees maker rebates\nopenbroker mm-maker --coin HYPE --size 1 --offset 1\n\n# Wider offset for volatile assets\nopenbroker mm-maker --coin ETH --size 0.1 --offset 2 --max-position 0.5\n```\n\n## Order Types\n\n### Limit Orders vs Trigger Orders\n\n**Limit Orders** (`openbroker limit`):\n- Execute immediately if price is met\n- Rest on the order book until filled or cancelled\n- A limit sell BELOW current price fills immediately (taker)\n- NOT suitable for stop losses\n\n**Trigger Orders** (`openbroker trigger`, `openbroker tpsl`):\n- Stay dormant until trigger price is reached\n- Only activate when price hits the trigger level\n- Proper way to set stop losses and take profits\n- Won't fill prematurely\n\n### When to Use Each\n\n| Scenario | Command |\n|----------|---------|\n| Buy at specific price below market | `openbroker limit` |\n| Sell at specific price above market | `openbroker limit` |\n| Stop loss (exit if price drops) | `openbroker trigger --type sl` |\n| Take profit (exit at target) | `openbroker trigger --type tp` |\n| Add TP\u002FSL to existing position | `openbroker tpsl` |\n\n## Common Arguments\n\nAll commands support `--dry` for dry run (preview without executing).\n\n| Argument | Description |\n|----------|-------------|\n| `--coin` | Asset symbol (ETH, BTC, SOL, HYPE, etc.) |\n| `--side` | Order direction: `buy` or `sell` |\n| `--size` | Order size in base asset |\n| `--price` | Limit price |\n| `--dry` | Preview without executing |\n| `--help` | Show command help |\n\n### Order Arguments\n| Argument | Description |\n|----------|-------------|\n| `--trigger` | Trigger price (for trigger orders) |\n| `--type` | Trigger type: `tp` or `sl` |\n| `--slippage` | Slippage tolerance in bps (for market orders) |\n| `--tif` | Time in force: GTC, IOC, ALO |\n| `--reduce` | Reduce-only order |\n\n### TP\u002FSL Price Formats\n| Format | Example | Description |\n|--------|---------|-------------|\n| Absolute | `--tp 40` | Price of $40 |\n| Percentage up | `--tp +10%` | 10% above entry |\n| Percentage down | `--sl -5%` | 5% below entry |\n| Entry price | `--sl entry` | Breakeven stop |\n\n## Configuration\n\nConfig is loaded from (in priority order):\n1. Environment variables\n2. `.env` in current directory\n3. `~\u002F.openbroker\u002F.env` (global config)\n\nRun `openbroker setup` to create the global config interactively.\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `HYPERLIQUID_PRIVATE_KEY` | Yes | Wallet private key (0x...) |\n| `HYPERLIQUID_NETWORK` | No | `mainnet` (default) or `testnet` |\n| `HYPERLIQUID_ACCOUNT_ADDRESS` | No | Master account address (required for API wallets) |\n\nThe builder fee (1 bps \u002F 0.01%) is hardcoded and not configurable.\n\n## OpenClaw Plugin (Optional)\n\nThis skill works standalone via Bash — every command above runs through the `openbroker` CLI. For enhanced features, the same `openbroker` npm package also ships as an **OpenClaw plugin** that you can enable alongside this skill.\n\n### What the plugin adds\n\n- **Structured agent tools** (`ob_account`, `ob_buy`, `ob_limit`, etc.) — typed tool calls with proper input schemas instead of Bash strings. The agent gets structured JSON responses.\n- **Background position watcher** — polls your Hyperliquid account every 30s and sends webhook alerts when positions open\u002Fclose, PnL moves significantly, or margin usage gets dangerous.\n- **CLI commands** — `openclaw ob status` and `openclaw ob watch` for inspecting the watcher.\n\n### Enable the plugin\n\nThe plugin is bundled in the same `openbroker` npm package. To enable it in your OpenClaw config:\n\n```yaml\nplugins:\n  entries:\n    openbroker:\n      enabled: true\n      config:\n        hooksToken: \"your-hooks-secret\"   # Required for watcher alerts\n        watcher:\n          enabled: true\n          pollIntervalMs: 30000\n          pnlChangeThresholdPct: 5\n          marginUsageWarningPct: 80\n```\n\nThe plugin reads wallet credentials from `~\u002F.openbroker\u002F.env` (set up by `openbroker setup`), so you don't need to duplicate `privateKey` in the plugin config unless you want to override.\n\n### Webhook setup for watcher alerts\n\nFor position alerts to reach the agent, enable hooks in your gateway config:\n\n```yaml\nhooks:\n  enabled: true\n  token: \"your-hooks-secret\"   # Must match hooksToken above\n```\n\nWithout hooks, the watcher still runs and tracks state (accessible via `ob_watcher_status`), but it can't wake the agent.\n\n### Using with or without the plugin\n\n- **Skill only (no plugin):** Use Bash commands (`openbroker buy --coin ETH --size 0.1`). No background monitoring.\n- **Skill + plugin:** The agent prefers the `ob_*` tools when available (structured data), falls back to Bash for commands not covered by tools (strategies, scale). Background watcher sends alerts automatically.\n\n## Risk Warning\n\n- Always use `--dry` first to preview orders\n- Start with small sizes on testnet (`HYPERLIQUID_NETWORK=testnet`)\n- Monitor positions and liquidation prices\n- Use `--reduce` for closing positions only\n","# Open Broker - Hyperliquid Trading CLI\n\nExecute trading operations on Hyperliquid DEX with builder fee support.\n\n## Installation\n\n```bash\nnpm install -g openbroker\n```\n\n## Quick Start\n\n```bash\n# 1. Setup (generates wallet, creates config, approves builder fee)\nopenbroker setup\n\n# 2. Fund your wallet with USDC on Arbitrum, then deposit at https:\u002F\u002Fapp.hyperliquid.xyz\u002F\n\n# 3. Start trading\nopenbroker account\nopenbroker buy --coin ETH --size 0.1\n```\n\n## Command Reference\n\n### Setup\n```bash\nopenbroker setup              # One-command setup (wallet + config + builder approval)\nopenbroker approve-builder --check  # Check builder fee status (for troubleshooting)\n```\n\nThe `setup` command offers three modes:\n1. **Import existing key** — use a private key you already have (master wallet)\n2. **Generate new wallet** — create a fresh master wallet\n3. **Generate API wallet** (recommended for agents) — creates a restricted wallet that can trade but cannot withdraw\n\nFor options 1 and 2, setup saves config and approves the builder fee automatically.\nFor option 3 (API wallet), see the API Wallet Setup section below.\n\n### API Wallet Setup (Recommended for Agents)\n\nAPI wallets can place trades on behalf of a master account but **cannot withdraw funds**. This is the safest option for automated agents.\n\n**Flow:**\n1. Run `openbroker setup` and choose option 3 (\"Generate API wallet\")\n2. The CLI generates a keypair and prints an approval URL (e.g. `https:\u002F\u002Fopenbroker.dev\u002Fapprove?agent=0xABC...`)\n3. The agent owner opens the URL in a browser and connects their master wallet (MetaMask etc.)\n4. The master wallet signs two transactions: `ApproveAgent` (authorizes the API wallet) and `ApproveBuilderFee` (approves the 1 bps fee)\n5. The CLI detects the approval automatically and saves the config\n\n**After setup, the config will contain:**\n```\nHYPERLIQUID_PRIVATE_KEY=0x...        # API wallet private key\nHYPERLIQUID_ACCOUNT_ADDRESS=0x...    # Master account address\nHYPERLIQUID_NETWORK=mainnet\n```\n\n**Important for agents:** When using an API wallet, pass the approval URL to the agent owner (the human who controls the master wallet). The owner must approve in a browser before the agent can trade. The CLI waits up to 10 minutes for the approval. If it times out, re-run `openbroker setup`.\n\n### Account Info\n```bash\nopenbroker account            # Balance, equity, margin\nopenbroker account --orders   # Include open orders\nopenbroker positions          # Open positions with PnL\nopenbroker positions --coin ETH  # Specific coin\n```\n\n### Funding Rates\n```bash\nopenbroker funding --top 20   # Top 20 by funding rate\nopenbroker funding --coin ETH # Specific coin\n```\n\n### Markets\n```bash\nopenbroker markets --top 30   # Top 30 main perps\nopenbroker markets --coin BTC # Specific coin\n```\n\n### All Markets (Perps + Spot + HIP-3)\n```bash\nopenbroker all-markets                 # Show all markets\nopenbroker all-markets --type perp     # Main perps only\nopenbroker all-markets --type hip3     # HIP-3 perps only\nopenbroker all-markets --type spot     # Spot markets only\nopenbroker all-markets --top 20        # Top 20 by volume\n```\n\n### Search Markets (Find assets across providers)\n```bash\nopenbroker search --query GOLD    # Find all GOLD markets\nopenbroker search --query BTC     # Find BTC across all providers\nopenbroker search --query ETH --type perp  # ETH perps only\n```\n\n### Spot Markets\n```bash\nopenbroker spot                   # Show all spot markets\nopenbroker spot --coin PURR       # Show PURR market info\nopenbroker spot --balances        # Show your spot balances\nopenbroker spot --top 20          # Top 20 by volume\n```\n\n### Trade Fills\n```bash\nopenbroker fills                          # Recent fills\nopenbroker fills --coin ETH               # ETH fills only\nopenbroker fills --coin BTC --side buy --top 50\n```\n\n### Order History\n```bash\nopenbroker orders                         # Recent orders (all statuses)\nopenbroker orders --coin ETH --status filled\nopenbroker orders --top 50\n```\n\n### Order Status\n```bash\nopenbroker order-status --oid 123456789   # Check specific order\nopenbroker order-status --oid 0x1234...   # By client order ID\n```\n\n### Fee Schedule\n```bash\nopenbroker fees                           # Fee tier, rates, and volume\n```\n\n### Candle Data (OHLCV)\n```bash\nopenbroker candles --coin ETH                           # 24 hourly candles\nopenbroker candles --coin BTC --interval 4h --bars 48   # 48 four-hour bars\nopenbroker candles --coin SOL --interval 1d --bars 30   # 30 daily bars\n```\n\n### Funding History\n```bash\nopenbroker funding-history --coin ETH              # Last 24h\nopenbroker funding-history --coin BTC --hours 168  # Last 7 days\n```\n\n### Recent Trades (Tape)\n```bash\nopenbroker trades --coin ETH              # Last 30 trades\nopenbroker trades --coin BTC --top 50     # Last 50 trades\n```\n\n### Rate Limit\n```bash\nopenbroker rate-limit                     # API usage and capacity\n```\n\n## Trading Commands\n\n### Market Orders (Quick)\n```bash\nopenbroker buy --coin ETH --size 0.1\nopenbroker sell --coin BTC --size 0.01\nopenbroker buy --coin SOL --size 5 --slippage 100  # Custom slippage (bps)\n```\n\n### Market Orders (Full)\n```bash\nopenbroker market --coin ETH --side buy --size 0.1\nopenbroker market --coin BTC --side sell --size 0.01 --slippage 100\n```\n\n### Limit Orders\n```bash\nopenbroker limit --coin ETH --side buy --size 1 --price 3000\nopenbroker limit --coin SOL --side sell --size 10 --price 200 --tif ALO\n```\n\n### Set TP\u002FSL on Existing Position\n```bash\n# Set take profit at $40, stop loss at $30\nopenbroker tpsl --coin HYPE --tp 40 --sl 30\n\n# Set TP at +10% from entry, SL at entry (breakeven)\nopenbroker tpsl --coin HYPE --tp +10% --sl entry\n\n# Set only stop loss at -5% from entry\nopenbroker tpsl --coin ETH --sl -5%\n\n# Partial position TP\u002FSL\nopenbroker tpsl --coin ETH --tp 4000 --sl 3500 --size 0.5\n```\n\n### Trigger Orders (Standalone TP\u002FSL)\n```bash\n# Take profit: sell when price rises to $40\nopenbroker trigger --coin HYPE --side sell --size 0.5 --trigger 40 --type tp\n\n# Stop loss: sell when price drops to $30\nopenbroker trigger --coin HYPE --side sell --size 0.5 --trigger 30 --type sl\n```\n\n### Cancel Orders\n```bash\nopenbroker cancel --all           # Cancel all orders\nopenbroker cancel --coin ETH      # Cancel ETH orders only\nopenbroker cancel --oid 123456    # Cancel specific order\n```\n\n## Advanced Execution\n\n### TWAP (Time-Weighted Average Price)\n```bash\n# Execute 1 ETH buy over 1 hour (auto-calculates slices)\nopenbroker twap --coin ETH --side buy --size 1 --duration 3600\n\n# Custom intervals with randomization\nopenbroker twap --coin BTC --side sell --size 0.5 --duration 1800 --intervals 6 --randomize 20\n```\n\n### Scale In\u002FOut (Grid Orders)\n```bash\n# Place 5 buy orders ranging 2% below current price\nopenbroker scale --coin ETH --side buy --size 1 --levels 5 --range 2\n\n# Scale out with exponential distribution\nopenbroker scale --coin BTC --side sell --size 0.5 --levels 4 --range 3 --distribution exponential --reduce\n```\n\n### Bracket Order (Entry + TP + SL)\n```bash\n# Long ETH with 3% take profit and 1.5% stop loss\nopenbroker bracket --coin ETH --side buy --size 0.5 --tp 3 --sl 1.5\n\n# Short with limit entry\nopenbroker bracket --coin BTC --side sell --size 0.1 --entry limit --price 100000 --tp 5 --sl 2\n```\n\n### Chase Order (Follow Price)\n```bash\n# Chase buy with ALO orders until filled\nopenbroker chase --coin ETH --side buy --size 0.5 --timeout 300\n\n# Aggressive chase with tight offset\nopenbroker chase --coin SOL --side buy --size 10 --offset 2 --timeout 60\n```\n\n## Trading Strategies\n\n### Funding Arbitrage\n```bash\n# Collect funding on ETH if rate > 25% annualized\nopenbroker funding-arb --coin ETH --size 5000 --min-funding 25\n\n# Run for 24 hours, check every 30 minutes\nopenbroker funding-arb --coin BTC --size 10000 --duration 24 --check 30 --dry\n```\n\n### Grid Trading\n```bash\n# ETH grid from $3000-$4000 with 10 levels, 0.1 ETH per level\nopenbroker grid --coin ETH --lower 3000 --upper 4000 --grids 10 --size 0.1\n\n# Accumulation grid (buys only)\nopenbroker grid --coin BTC --lower 90000 --upper 100000 --grids 5 --size 0.01 --mode long\n```\n\n### DCA (Dollar Cost Averaging)\n```bash\n# Buy $100 of ETH every hour for 24 hours\nopenbroker dca --coin ETH --amount 100 --interval 1h --count 24\n\n# Invest $5000 in BTC over 30 days with daily purchases\nopenbroker dca --coin BTC --total 5000 --interval 1d --count 30\n```\n\n### Market Making Spread\n```bash\n# Market make ETH with 0.1 size, 10bps spread\nopenbroker mm-spread --coin ETH --size 0.1 --spread 10\n\n# Tighter spread with position limit\nopenbroker mm-spread --coin BTC --size 0.01 --spread 5 --max-position 0.1\n```\n\n### Maker-Only MM (ALO orders)\n```bash\n# Market make using ALO (post-only) orders - guarantees maker rebates\nopenbroker mm-maker --coin HYPE --size 1 --offset 1\n\n# Wider offset for volatile assets\nopenbroker mm-maker --coin ETH --size 0.1 --offset 2 --max-position 0.5\n```\n\n## Order Types\n\n### Limit Orders vs Trigger Orders\n\n**Limit Orders** (`openbroker limit`):\n- Execute immediately if price is met\n- Rest on the order book until filled or cancelled\n- A limit sell BELOW current price fills immediately (taker)\n- NOT suitable for stop losses\n\n**Trigger Orders** (`openbroker trigger`, `openbroker tpsl`):\n- Stay dormant until trigger price is reached\n- Only activate when price hits the trigger level\n- Proper way to set stop losses and take profits\n- Won't fill prematurely\n\n### When to Use Each\n\n| Scenario | Command |\n|----------|---------|\n| Buy at specific price below market | `openbroker limit` |\n| Sell at specific price above market | `openbroker limit` |\n| Stop loss (exit if price drops) | `openbroker trigger --type sl` |\n| Take profit (exit at target) | `openbroker trigger --type tp` |\n| Add TP\u002FSL to existing position | `openbroker tpsl` |\n\n## Common Arguments\n\nAll commands support `--dry` for dry run (preview without executing).\n\n| Argument | Description |\n|----------|-------------|\n| `--coin` | Asset symbol (ETH, BTC, SOL, HYPE, etc.) |\n| `--side` | Order direction: `buy` or `sell` |\n| `--size` | Order size in base asset |\n| `--price` | Limit price |\n| `--dry` | Preview without executing |\n| `--help` | Show command help |\n\n### Order Arguments\n| Argument | Description |\n|----------|-------------|\n| `--trigger` | Trigger price (for trigger orders) |\n| `--type` | Trigger type: `tp` or `sl` |\n| `--slippage` | Slippage tolerance in bps (for market orders) |\n| `--tif` | Time in force: GTC, IOC, ALO |\n| `--reduce` | Reduce-only order |\n\n### TP\u002FSL Price Formats\n| Format | Example | Description |\n|--------|---------|-------------|\n| Absolute | `--tp 40` | Price of $40 |\n| Percentage up | `--tp +10%` | 10% above entry |\n| Percentage down | `--sl -5%` | 5% below entry |\n| Entry price | `--sl entry` | Breakeven stop |\n\n## Configuration\n\nConfig is loaded from (in priority order):\n1. Environment variables\n2. `.env` in current directory\n3. `~\u002F.openbroker\u002F.env` (global config)\n\nRun `openbroker setup` to create the global config interactively.\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `HYPERLIQUID_PRIVATE_KEY` | Yes | Wallet private key (0x...) |\n| `HYPERLIQUID_NETWORK` | No | `mainnet` (default) or `testnet` |\n| `HYPERLIQUID_ACCOUNT_ADDRESS` | No | Master account address (required for API wallets) |\n\nThe builder fee (1 bps \u002F 0.01%) is hardcoded and not configurable.\n\n## OpenClaw Plugin (Optional)\n\nThis skill works standalone via Bash — every command above runs through the `openbroker` CLI. For enhanced features, the same `openbroker` npm package also ships as an **OpenClaw plugin** that you can enable alongside this skill.\n\n### What the plugin adds\n\n- **Structured agent tools** (`ob_account`, `ob_buy`, `ob_limit`, etc.) — typed tool calls with proper input schemas instead of Bash strings. The agent gets structured JSON responses.\n- **Background position watcher** — polls your Hyperliquid account every 30s and sends webhook alerts when positions open\u002Fclose, PnL moves significantly, or margin usage gets dangerous.\n- **CLI commands** — `openclaw ob status` and `openclaw ob watch` for inspecting the watcher.\n\n### Enable the plugin\n\nThe plugin is bundled in the same `openbroker` npm package. To enable it in your OpenClaw config:\n\n```yaml\nplugins:\n  entries:\n    openbroker:\n      enabled: true\n      config:\n        hooksToken: \"your-hooks-secret\"   # Required for watcher alerts\n        watcher:\n          enabled: true\n          pollIntervalMs: 30000\n          pnlChangeThresholdPct: 5\n          marginUsageWarningPct: 80\n```\n\nThe plugin reads wallet credentials from `~\u002F.openbroker\u002F.env` (set up by `openbroker setup`), so you don't need to duplicate `privateKey` in the plugin config unless you want to override.\n\n### Webhook setup for watcher alerts\n\nFor position alerts to reach the agent, enable hooks in your gateway config:\n\n```yaml\nhooks:\n  enabled: true\n  token: \"your-hooks-secret\"   # Must match hooksToken above\n```\n\nWithout hooks, the watcher still runs and tracks state (accessible via `ob_watcher_status`), but it can't wake the agent.\n\n### Using with or without the plugin\n\n- **Skill only (no plugin):** Use Bash commands (`openbroker buy --coin ETH --size 0.1`). No background monitoring.\n- **Skill + plugin:** The agent prefers the `ob_*` tools when available (structured data), falls back to Bash for commands not covered by tools (strategies, scale). Background watcher sends alerts automatically.\n\n## Risk Warning\n\n- Always use `--dry` first to preview orders\n- Start with small sizes on testnet (`HYPERLIQUID_NETWORK=testnet`)\n- Monitor positions and liquidation prices\n- Use `--reduce` for closing positions only\n",{"name":5,"license":14,"homepage":23,"metadata":24,"description":7,"allowed-tools":37,"compatibility":38},"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fopenbroker",{"author":25,"version":26,"openclaw":27},"monemetrics","1.0.44",{"install":28,"requires":33,"primaryEnv":35},[29],{"id":30,"bins":31,"kind":30,"label":32,"package":5},"node",[5],"Install openbroker (npm)",{"env":34,"bins":36},[35],"HYPERLIQUID_PRIVATE_KEY",[5],"ob_account ob_positions ob_funding ob_markets ob_search ob_spot ob_fills ob_orders ob_order_status ob_fees ob_candles ob_funding_history ob_trades ob_rate_limit ob_buy ob_sell ob_limit ob_trigger ob_tpsl ob_cancel ob_twap ob_bracket ob_chase ob_watcher_status Bash(openbroker:*)","Requires Node.js 22+, network access to api.hyperliquid.xyz","main","54afe4b75ed2eb8f0feabb2f5b57dfa4bcbb3c44",".agents\u002Fskills\u002Fopenbroker","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal","https:\u002F\u002Fgithub.com\u002Fmeghal86","2026-05-17 14:11:28",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":57},[47,50,53],{"tool":48,"command":49},"npx","npx skills add meghal86\u002Fstacksignal --skill openbroker",{"tool":51,"command":52},"bunx","bunx skills add meghal86\u002Fstacksignal --skill openbroker",{"tool":54,"command":55},"pnpm","pnpm dlx skills add meghal86\u002Fstacksignal --skill openbroker","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002FSKILL.md",true,[59,65,71,75,79,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217],{"path":60,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":63,"sourceHtmlUrl":64},"_meta.json","REFERENCE","参考文档",981,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002F_meta.json",{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"bin\u002Fcli.ts","SCRIPT","脚本",6562,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fbin\u002Fcli.ts",{"path":72,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":73,"sourceHtmlUrl":74},"bin\u002Fopenbroker.js",1595,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fbin\u002Fopenbroker.js",{"path":76,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":77,"sourceHtmlUrl":78},"CHANGELOG.md",4679,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002FCHANGELOG.md",{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"config\u002Fexample.env","OTHER","其他",1847,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fconfig\u002Fexample.env",{"path":86,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":87,"sourceHtmlUrl":88},"package-lock.json",29143,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fpackage-lock.json",{"path":90,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":91,"sourceHtmlUrl":92},"package.json",2424,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fpackage.json",{"path":94,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":95,"sourceHtmlUrl":96},"PLAN.md",8304,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002FPLAN.md",{"path":98,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":99,"sourceHtmlUrl":100},"README.md",21634,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002FREADME.md",{"path":102,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002FOPERATIONS.md",7442,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Freferences\u002FOPERATIONS.md",{"path":106,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":107,"sourceHtmlUrl":108},"references\u002FSTRATEGIES.md",11369,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Freferences\u002FSTRATEGIES.md",{"path":110,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":111,"sourceHtmlUrl":112},"scripts\u002Fcore\u002Fclient.ts",25208,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fcore\u002Fclient.ts",{"path":114,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":115,"sourceHtmlUrl":116},"scripts\u002Fcore\u002Fconfig.ts",5186,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fcore\u002Fconfig.ts",{"path":118,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":119,"sourceHtmlUrl":120},"scripts\u002Fcore\u002Ftypes.ts",4140,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fcore\u002Ftypes.ts",{"path":122,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":123,"sourceHtmlUrl":124},"scripts\u002Fcore\u002Futils.ts",4022,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fcore\u002Futils.ts",{"path":126,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":127,"sourceHtmlUrl":128},"scripts\u002Finfo\u002Faccount.ts",4264,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Faccount.ts",{"path":130,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":131,"sourceHtmlUrl":132},"scripts\u002Finfo\u002Fall-markets.ts",7099,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Fall-markets.ts",{"path":134,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":135,"sourceHtmlUrl":136},"scripts\u002Finfo\u002Ffunding.ts",4395,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Ffunding.ts",{"path":138,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":139,"sourceHtmlUrl":140},"scripts\u002Finfo\u002Fmarkets.ts",4889,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Fmarkets.ts",{"path":142,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":143,"sourceHtmlUrl":144},"scripts\u002Finfo\u002Fpositions.ts",3050,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Fpositions.ts",{"path":146,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":147,"sourceHtmlUrl":148},"scripts\u002Finfo\u002Fsearch-markets.ts",7712,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Fsearch-markets.ts",{"path":150,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":151,"sourceHtmlUrl":152},"scripts\u002Finfo\u002Fspot.ts",5728,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Finfo\u002Fspot.ts",{"path":154,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":155,"sourceHtmlUrl":156},"scripts\u002Foperations\u002Fbracket.ts",10233,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fbracket.ts",{"path":158,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":159,"sourceHtmlUrl":160},"scripts\u002Foperations\u002Fcancel.ts",3541,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fcancel.ts",{"path":162,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":163,"sourceHtmlUrl":164},"scripts\u002Foperations\u002Fchase.ts",8222,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fchase.ts",{"path":166,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":167,"sourceHtmlUrl":168},"scripts\u002Foperations\u002Flimit-order.ts",5196,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Flimit-order.ts",{"path":170,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":171,"sourceHtmlUrl":172},"scripts\u002Foperations\u002Fmarket-order.ts",5607,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fmarket-order.ts",{"path":174,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":175,"sourceHtmlUrl":176},"scripts\u002Foperations\u002Fscale.ts",8638,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fscale.ts",{"path":178,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":179,"sourceHtmlUrl":180},"scripts\u002Foperations\u002Fset-tpsl.ts",10784,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Fset-tpsl.ts",{"path":182,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":183,"sourceHtmlUrl":184},"scripts\u002Foperations\u002Ftrigger-order.ts",6967,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Ftrigger-order.ts",{"path":186,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":187,"sourceHtmlUrl":188},"scripts\u002Foperations\u002Ftwap.ts",8237,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Foperations\u002Ftwap.ts",{"path":190,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":191,"sourceHtmlUrl":192},"scripts\u002Fsetup\u002Fapprove-builder.ts",5629,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fsetup\u002Fapprove-builder.ts",{"path":194,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":195,"sourceHtmlUrl":196},"scripts\u002Fsetup\u002Fonboard.ts",7896,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fsetup\u002Fonboard.ts",{"path":198,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":199,"sourceHtmlUrl":200},"scripts\u002Fstrategies\u002Fdca.ts",10341,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fstrategies\u002Fdca.ts",{"path":202,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":203,"sourceHtmlUrl":204},"scripts\u002Fstrategies\u002Ffunding-arb.ts",13003,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fstrategies\u002Ffunding-arb.ts",{"path":206,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":207,"sourceHtmlUrl":208},"scripts\u002Fstrategies\u002Fgrid.ts",14691,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fstrategies\u002Fgrid.ts",{"path":210,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":211,"sourceHtmlUrl":212},"scripts\u002Fstrategies\u002Fmm-maker.ts",15238,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fstrategies\u002Fmm-maker.ts",{"path":214,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":215,"sourceHtmlUrl":216},"scripts\u002Fstrategies\u002Fmm-spread.ts",14920,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Fscripts\u002Fstrategies\u002Fmm-spread.ts",{"path":218,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":219,"sourceHtmlUrl":220},"tsconfig.json",486,"https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fopenbroker\u002Ftsconfig.json",[222,231,239,247,255,262],{"skillNo":223,"name":224,"nameZh":6,"description":225,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":226,"sourceHtmlUrl":227,"categories":228,"keywords":229,"publishedAt":230},"01M78XH0FRP65NYEDHF2BT7NB1","zvukogram","Text-to-Speech via Zvukogram API with SSML support. Use when you need to generate speech from text, create podcasts, voice notifications, or work with audio. Supports speed control, stress marks, English word transcription, and audio fragment merging.","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzvukogram\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzvukogram\u002FSKILL.md",[],[],"2026-11-15 14:19:17",{"skillNo":232,"name":233,"nameZh":6,"description":234,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":235,"sourceHtmlUrl":236,"categories":237,"keywords":238,"publishedAt":230},"01M78XEND5ASXYB6MN8AQQGJAF","zohomail","Zoho Mail API integration with managed OAuth. Send, receive, and manage emails, folders, and labels.\nUse this skill when users want to send emails, read messages, manage folders, or work with email labels in Zoho Mail.\nFor other third party apps, use the api-gateway skill (https:\u002F\u002Fclawhub.ai\u002Fbyungkyu\u002Fapi-gateway).\nRequires network access and valid Maton API key.","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzohomail\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzohomail\u002FSKILL.md",[],[],{"skillNo":240,"name":241,"nameZh":6,"description":242,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":243,"sourceHtmlUrl":244,"categories":245,"keywords":246,"publishedAt":230},"01M78XEBBV3C6DRZFAJXP6RDKS","zoho-recruit","Zoho Recruit API integration with managed OAuth. Manage candidates, job openings, interviews, and recruitment workflows.\nUse this skill when users want to read, create, update, or search recruitment data like candidates, job openings, interviews, and applications in Zoho Recruit.\nFor other third party apps, use the api-gateway skill (https:\u002F\u002Fclawhub.ai\u002Fbyungkyu\u002Fapi-gateway).\nRequires network access and valid Maton API key.","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-recruit\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-recruit\u002FSKILL.md",[],[],{"skillNo":248,"name":249,"nameZh":6,"description":250,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":251,"sourceHtmlUrl":252,"categories":253,"keywords":254,"publishedAt":230},"01M78XE5CQG75DZWYSKGXFR99T","zoho-people","Zoho People API integration with managed OAuth. Manage employees, departments, designations, attendance, and leave.\nUse this skill when users want to read, create, update, or query HR data like employees, departments, designations, and forms in Zoho People.\nFor other third party apps, use the api-gateway skill (https:\u002F\u002Fclawhub.ai\u002Fbyungkyu\u002Fapi-gateway).\nRequires network access and valid Maton API key.","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-people\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-people\u002FSKILL.md",[],[],{"skillNo":256,"name":257,"nameZh":6,"description":234,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":258,"sourceHtmlUrl":259,"categories":260,"keywords":261,"publishedAt":230},"01M78XDZKMZAJYFJJFT7MR5ZN2","zoho-mail","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-mail\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-mail\u002FSKILL.md",[],[],{"skillNo":263,"name":264,"nameZh":6,"description":265,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":266,"sourceHtmlUrl":267,"categories":268,"keywords":269,"publishedAt":230},"01M78XDST8JK0WVDA1F3VPNWXD","zoho-inventory","Zoho Inventory API integration with managed OAuth. Manage items, sales orders, invoices, purchase orders, bills, contacts, and shipments.\nUse this skill when users want to read, create, update, or delete inventory items, sales orders, invoices, purchase orders, bills, or other inventory records in Zoho Inventory.\nFor other third party apps, use the api-gateway skill (https:\u002F\u002Fclawhub.ai\u002Fbyungkyu\u002Fapi-gateway).\nRequires network access and valid Maton API key.","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-inventory\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmeghal86\u002Fstacksignal\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fzoho-inventory\u002FSKILL.md",[],[]]