1m-trade Aggregator - On-chain Operations Hub
SkillCommerce & financeLets your agent check crypto market news, trade on a decentralized exchange, and create and manage wallets.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the 1m-trade Aggregator - On-chain Operations Hub skill
About this capability
Integrated on-chain operations hub: integrates BlockBeats market intelligence, Hyperliquid DEX trading via `hl1m`, wallet creation and management at https://www.1m-trade.com, and supports local initialization using `hl1m init-wallet` (wallet address + proxy private key, never use the main wallet pri
What this skill tells your AI
The instructions your AI receives, as published by leoyeai/openclaw-master-skills in skills/1m-trade/SKILL.md and read by ahel’s review.
Official website (wallet & account): https://www.1m-trade.com
After first install
Scan and verify all required dependencies for sub-skills and install what is needed. From this skill bundle root, run node auto_check.js to verify required binaries and .env entries (it does not print secrets).
1m-trade-news (required)
This aggregator must have the 1m-trade-news sub-skill available: market intelligence, news, and BlockBeats API calls all go through it. Do not skip this step when installing the bundle.
-
Skill files: Ensure the bundle includes
skills/1m-trade-news/(SKILL.md, etc.) and that your OpenClaw / host loads that folder as the1m-trade-newsskill. -
curl: Required onPATHfor the documented API flows (see metadatarequires.bins). -
BlockBeats API key (
BLOCKBEATS_API_KEY): Market and news workflows use the BlockBeats Pro API. Install-time, ensureBLOCKBEATS_API_KEYis set in the local1m-tradestate file (paths under Optional runtime override below).Apply for / obtain a key (free tier):
- Request a free API key:
curl --request GET --url "https://api-pro.theblockbeats.info/v1/api-key/free" - From the JSON body, read
data.api_keyand use it asBLOCKBEATS_API_KEY. - Write it to
~/.openclaw/.1m-trade/.env(or$OPENCLAW_STATE_DIR/.1m-trade/.envif you use that override), on its own line:BLOCKBEATS_API_KEY=<api_key>Do not remove unrelated lines; only add or update this variable.
- Request a free API key:
Reference: skills/1m-trade-news/SKILL.md → Get an API key (includes agent-safe steps to populate .env without printing the key).
Security: Do not paste API keys into chat; the model must not echo stored keys.
1m-trade-dex (required)
This aggregator must have the 1m-trade-dex sub-skill available: trading, wallet queries, and hl1m all go through it. Do not skip this step when installing the bundle.
- Skill files: Ensure the bundle includes
skills/1m-trade-dex/(SKILL.md,reference.md, etc.) and that your OpenClaw / host loads that folder as the1m-trade-dexskill. - CLI (
hl1m): Install the1m-tradepackage sohl1mis onPATH(Python 3.11+ recommended):
Ifpipx install 1m-trade hl1m --helppipxis missing, install it per your OS (seeskills/1m-trade-dex/SKILL.md→ Setup). - Wallet / Hyperliquid state: After install, users still run
hl1m init-wallet(and related steps) so.envcontains the Hyperliquid fieldsauto_check.jsexpects — seeskills/1m-trade-dex/SKILL.md→ Wallet initialization.
Optional runtime override:
OPENCLAW_STATE_DIRcan be set to change where local.1m-tradestate files are read/written.- If not set, tools default to
~/.openclaw/.1m-trade/.
Secret source-of-truth policy:
- API key and wallet credentials are expected in the local state
.envfile under the paths above (typically after the user runshl1m init-walletand related CLIs locally). - Process environment variables may be used only as explicit runtime overrides by underlying tools.
- LLM boundary: The model must not read
.envinto context or quote stored secrets. For wallet bind, if the user voluntarily sends wallet address + proxy private key in one message (e.g. clearly labeled fields such aswallet addressandproxy private key), follow1m-trade-dex→ parse and invokehl1m init-wallet --address … --pri_key …in a trusted shell; do not repeat full keys in assistant replies. Otherwise prefer the user runninginit-walletlocally without pasting keys in chat. - Never print secret values in assistant-visible chat or user-facing logs from the model.
Overview
This skill (1m-trade) is an orchestration hub that integrates multiple sub-skills into a single coherent workflow. You describe your goal (e.g., "check today's sentiment", "analyze BTC fund flows and open a long with half my balance", "help me configure my Hyperliquid wallet with init-wallet", "auto-trade BTC"), and this skill decomposes the request and calls 1m-trade-news and 1m-trade-dex to complete the operation.
Core workflows
Based on intent keywords, this skill routes into one of the workflows below (or composes them).
Workflow 1: Market intelligence (Data & News)
Triggers: market, price, news, macro, fund flows, perps, search [keyword]
Skill: 1m-trade-news
Logic:
- Parse the user query and map it to a scenario / intent mapping.
- Call the relevant BlockBeats API endpoints in parallel.
- Format and aggregate results into a market report with brief interpretation.
Example output:
📰 Market Report · 202X-XX-XX
===
1. 📊 Snapshot
Sentiment: 35 → Neutral
BTC ETF: +$120M net inflow today
On-chain tx volume: +15% vs yesterday
2. 💰 Hot flows (Solana)
1. JTO net inflow $4.2M
2. ...
3. 🌐 Macro
Global M2: +4.5% YoY → Liquidity easing
DXY: 104.2 → Relatively strong
Overall: Macro backdrop is neutral-to-bullish for crypto.
Workflow 2: Wallet setup (initialization)
Triggers: init wallet, configure wallet, configure trading account, bind wallet, connect Hyperliquid, set up trading, wallet settings, proxy key, API key (wallet); same message with both wallet address and proxy private key (or non-English equivalents per 1m-trade-dex Natural-language binding).
Skill: 1m-trade-dex (see skills/1m-trade-dex/SKILL.md → Natural-language binding and skills/1m-trade-dex/reference.md)
Wallet operations (synced with sub-skill docs):
| Step | Where | What |
|---|---|---|
| Create / manage wallet | Browser | https://www.1m-trade.com — official UI for account and wallet; do not recreate this flow in chat. |
| Bind CLI to the account | Local shell | hl1m init-wallet only — wallet public address + proxy (API) private key. Never use the main / master wallet private key. |
| Verify | After init | hl1m query-user-state (and other hl1m query commands as needed). |
Logic:
- Send users to https://www.1m-trade.com for wallet creation and ongoing management in the browser. Do not simulate full wallet creation inside the assistant.
- For CLI binding:
- If the user provides both address and proxy key in one message (with labels such as
wallet addressandproxy private key, or other languages as mapped in1m-trade-dex), follow1m-trade-dexNatural-language binding: parse0x+ 40 hex (address) and0x+ 64 hex (proxy key), then runhl1m init-wallet --address <parsed> --pri_key <parsed>in a trusted shell; do not echo full keys in chat. - Otherwise, show the placeholder command only and ask the user to run locally:
hl1m init-wallet --address 0xYourWalletAddress --pri_key 0xYourProxyPrivateKey - If the user provides both address and proxy key in one message (with labels such as
- After a successful init, use
hl1m query-user-stateto confirm the account is visible.
Workflow 3: Trading execution & management (Trading & Management)
Triggers: trade, order, open, close, positions, price, kline, HIP3, AAPL, GOLD
Skill: 1m-trade-dex
Logic:
- Market data: query kline/mids/meta as requested and format results.
- Pre-trade checks: ensure
1m-trade-dexis installed and runnode auto_check.jsto verify prerequisites. If it fails, do not execute any trades. - Execution: follow the
1m-trade-dexdocumentation for the specific command.
Workflow 4: Hybrid orchestration (Hybrid Workflow)
Trigger examples: "check the market then decide whether to buy BTC", "after I init my wallet, show ETH kline"
Logic:
- Call Workflow 1 to fetch the market report.
- Present the report and ask whether to continue (e.g., "proceed to wallet setup or trading?").
- After confirmation, call Workflow 2 (wallet init guidance) or Workflow 3.
Examples
User: "How is the crypto market today? I also need to connect my Hyperliquid wallet."
1m-trade:
- Generate a market snapshot report (Workflow 1).
- Point to 1M-Trade for wallet creation/management as needed, then Workflow 2: if the user already sent labeled
wallet address+proxy private key(or equivalent), parse and runhl1m init-wallet; otherwise give the placeholder command for local use (proxy key only; never the main wallet private key). Do not guidesend-private-key.
User: "Search for the latest news about 'Bitcoin halving', then show BTC kline."
1m-trade:
- Call search (Workflow 1, Scenario 5) and return relevant items.
- Call kline query (Workflow 3) and return recent candles.
Workflow 5: Fully autonomous mode (AI Auto-Trader)
Triggers: enable auto trading, autonomous trading, managed, AI trade for me, run every N minutes, auto trade BTC
Logic:
-
Run the checker once before enabling cron:
- Repo root:
node auto_check.js - If installed under the OpenClaw workspace: run
node <skill_bundle_root>/auto_check.jsIf it fails, do not enable auto trading.
- Repo root:
-
Check whether the
1m-trade-auto-tradercron job exists:- Run
openclaw cron listto verify whether it still exists. - If it exists, ask the user to stop/remove it before creating a new one.
- If the user confirms it should be removed and it is still present, attempt to remove it with
openclaw cron rm <task id>, then re-runopenclaw cron listto confirm it is gone.
- Run
-
Create a periodic workflow using the command below.
--session isolatedis fixed and must not be changed. The default interval is every 20 minutes (*/20); replace with*/Nif needed. Send the trading report to the user. Security constraints for the cron message:- Include ONLY the "#### Workflow content" block as the job prompt template.
- Never include any secrets (API keys, private keys, passwords,
.envcontents, tokens). - Never include unrelated user/system text, terminal logs, or file contents.
- Keep shell commands/placeholders unchanged, but you may translate natural-language instructions for locale.
-
Run:
openclaw cron add \ --name "1m-trade-auto-trader" \ --cron "*/20 * * * *" \ --session isolated \ --message "<Paste the FULL prompt from #### Workflow content through the end of the report template below; translate EVERY narrative line into the user's language (e.g. full Simplified Chinese if the user uses Chinese—no leftover English instructions). Keep skill names, hl1m subcommands, symbols, and <<...>> structure unchanged. No secrets. Each run outputs ONLY the final trading report; that report must be monolingual (all Chinese OR all English per user—no mixed prose). Replace this placeholder with that translated block.>" \ --timeoutSeconds 600 \ --announce \ --channel <channel e.g. telegram> \ --to "<user id>" \
Workflow content
Pre-start: dependency memory check All skills are installed locally.
-
Try reading:
$OPENCLAW_STATE_DIR/.1m-trade/dependencies-status.md- If missing → first run, treat as "not confirmed installed"
- If present, look for any marker:
- Installed: true
- DependencyStatus: Installed
- SkillsReady: true
- Record status as "installed" or "not installed/unknown"
-
Decide based on the status:
- If clearly "installed" → skip checks/install and go to step 4
- Otherwise → run step 3
-
Only when initialization is needed: Ensure these skills are available in order:
- 1m-trade-news
- 1m-trade-dex If a skill is unavailable, attempt to install/enable it via the system's mechanism. Then record success in the memory file.
-
Must execute: update/create the dependency memory file by overwriting:
# Dependency install marker - do not edit manually
Installed: true
Skills: 1m-trade-news (or others)
Skills Path: <skill paths>
LastChecked: 2026-03-15 14:30:00 UTC
Start execution
Start execution.
Workflow: Fully autonomous trading mode (AI Auto-Trader)
Execution Guidelines
- Evaluate the full market universe (scan multiple assets). Trades are determined by risk controls; 0 to multiple trades are allowed.
- Output must be a trading report only (no executable code). Markdown tables/quotes are allowed.
- Do not create or modify any files.
- Only call existing skills.
- Use real trading (not simulation).
Response format
- Your final assistant response must contain only the final trading report section in the required Markdown structure.
- Language: The report must be fully in one language matching the user (see Locale / Monolingual output in #### 4. Trading brief) — no mixed Chinese/English prose.
Market universe (fixed; do not modify)
BTCETHSOLxyz:GOLD(alias: Gold)xyz:CL(alias: Crude Oil)xyz:SILVER(alias: Silver)xyz:NVDA(alias: NVIDIA)xyz:GOOGLE(alias: Google)xyz:NATGAS(alias: Natural Gas)xyz:BRENTOIL(alias: Brent Oil)xyz:HOOD(alias: Robinhood) Quote currency: USDC
Execution loop: When triggered, execute the following steps in order. Avoid requesting intermediate confirmations; proceed with execution.
1. Intelligence & data collection (sense)
- News: use
1m-trade-newsto fetch the latest 20 newsflashes/news and determine whether they mention assets in the market universe to infer sentiment. - Kline: call
1m-trade-dex→query-kline(default 1h). - Wallet: call
1m-trade-dex→query-user-state. - Prices: call
1m-trade-dex→query-mids.
2. Decision
Decide based on news sentiment and kline trend:
- Long
- Short
- Close
- Hold
Mandatory risk controls & calculations:
- Each new position's notional value (after leverage) must be > 15 USDC (not balance).
- Calculate quantity rigorously using latest prices:
qty (--qty) = target notional (USDC) / latest price, using appropriate precision.
3. Execution (act)
Based on the decision, use 1m-trade-dex commands to trade.
- Example (market long/short): call
market-order - Example (close): compute exact position size and place the appropriate market order
- Example (limit): call
place-order - If decision is Hold, do not execute any trade commands.
4. Trading brief (report)
Generate a brief report (not too long) describing the decision rationale and execution results. Follow this Markdown format strictly.
Locale: Infer the user’s primary language from the session (e.g. Chinese vs English). The report must be monolingual — no zh/en mix in narrative text.
Language rule (strict):
- Monolingual output (mandatory):
- If the user’s language is Chinese (or they explicitly use Chinese): write the entire report in Chinese only — headings, bullets, table cells, and trading-status wording (e.g. use fully localized terms for hold / long / short / close, not English “Hold/Long/Short/Close” mixed into Chinese sentences).
- If the user’s language is English: write the entire report in English only — no Chinese or other-language fragments in prose.
- Allowed exceptions (do not “translate” these): canonical symbols and tickers (
BTC,ETH,xyz:GOLD, …), the literal1m-trade, pair suffixes like-USDC, numbers, and%where standard.
<<...>>are schema hints in this template only — strip them in the final answer. Do not print literal<<or>>in the user-visible report. For each slot, output normal Markdown: localized headings and body text (e.g.- **Fundamentals**: weak market sentiment…), not- **<<Fundamentals>>**: …or• <<Fundamentals>>: …. The reader must see finished prose, not bracket markers.- Translate/replace the meaning of each former
<<...>>slot into the user’s language (including example values that stood in for real content). - Do NOT translate placeholders inside <...>.
- Do NOT translate crypto symbols, tickers, or trading pairs (e.g. BTC, ETH, SOL, xyz:GOLD). Keep them exactly as-is.
- Do NOT translate the literal string
1m-tradeanywhere. - Asset display name rule:
- If the asset has an alias in the Market universe list, use the alias as the display name (alias text should follow the translation rule). Do NOT display the canonical symbol.
- If the asset has no alias, use the canonical symbol as-is.
🤖 1m-trade <<AUTONOMOUS_TRADING_REPORT>>: <<ACCOUNT_BALANCE>>: <> <>: Table coverage (same idea as per-asset section): If the market universe is large, do not fill one row per symbol by default. Prefer: (a) a narrow table — only rows for assets with material activity this run (traded, opened/closed, non-Hold, or materially different), plus one summary line for “everything else” (e.g. all others: Hold / no action); or (b) a short bullet summary instead of a wide table. When the set is small, you may use the full table pattern below.
| <> | <<LATEST_PRICE>> | <<TREND_TIMEFRAME>> | <> | <> |
|---|---|---|---|---|
| BTC | xxx | <> | <> | <> |
| ETH | xxx | <> | <> | <<Opened long 0.012 ETH>> |
| <> | xxx | <> | <> | <> |
| ... | ... | ... | ... | ... |
🧠 <<PER_ASSET_DECISIONS>>
Coverage rule: If the market universe is large or a full per-asset write-up would make the report too long, prefer a summary instead of repeating the block below for every symbol. In summary mode: give one cross-asset fundamentals/sentiment paragraph, portfolio-level account state, then short bullets only for assets that mattered (e.g. traded this run, non-Hold decision, material risk, or materially different from the rest). End with a brief execution recap. Strip <<...>> in final output; stay monolingual.
When the set is small (or the user asked for full detail), repeat per asset:
[ASSET]-USDC
- <>: <<top relevant news / sentiment summary>>
- <<ACCOUNT_STATE>>: <<none / long X / short X>>
- <<DECISION_RATIONALE>>: <<fundamentals + technicals>> → <<Long/Short/Hold/Close>>
- <>: <<✅ executed (or ⏸️ hold, no action)>>
Signals
- GitHub stars
- 2k
- Forks
- 324
- Last commit
- Jul 2026
Advanced
- Catalog kind
- skill
- Gateway key
x-1m-trade- Source
- github.com/leoyeai/openclaw-master-skills