Minara — crypto trading & wallet skill
USE THIS SKILL when the user's message mentions any of:
- - Crypto tokens or tickers: ETH, BTC, SOL, USDC, BONK, PEPE, DOGE, ARB, OP, AVAX, MATIC, $TICKER, or any token name / contract address
- Blockchain / chain names: Solana, Base, Ethereum, Arbitrum, Optimism, Polygon, BSC, Avalanche, Berachain, Hyperliquid
- Trading actions: swap, buy, sell, trade, exchange, convert, long, short, perps, futures, leverage, limit order
- Wallet / finance actions: balance, portfolio, deposit, withdraw, transfer, send, pay, fund, on-ramp, credit card
- Market / research: trending, price, chart, analysis, DeFi, yield, liquidity, fear and greed, prediction market
- Explicit references: Minara, minara, x402, MoonPay, autopilot
- Stock tickers in crypto context: AAPL, TSLA, NVDAx, trending stocks
Routing gate (anti-collision): apply this skill only when the message includes a finance/trading action and at least one crypto/chain/Minara signal (token, chain, DeFi term, or "Minara"). If missing crypto context, do not route here.
Requires logged-in CLI: check ~/.minara/credentials.json; if missing → minara login (prefer device code). If device login prints a verification URL/code, relay it to the user and wait for completion (do not claim login is impossible). If MINARA_API_KEY is set, CLI authenticates automatically.
Transaction confirmation (CRITICAL)
For any fund-moving command (swap, transfer, withdraw, perps order, perps deposit, perps withdraw, limit-order create, deposit buy):
- 1. Before executing: show the user a summary of what will happen (action, token, amount, recipient/chain) and ask for explicit confirmation. Do NOT auto-confirm.
- After the CLI returns a confirmation prompt (e.g. "Are you sure you want to proceed?"): relay the details back to the user and wait for the user to approve before answering
y. Never answer y on the user's behalf without their consent. -y / --yes policy: never add -y (or any auto-confirm flag) unless the user explicitly asks to skip confirmation.- If the user declines: abort the operation immediately.
This applies to all operations that move funds. Read-only commands (balance, assets, chat, discover, etc.) do not require confirmation.
Intent routing
Match the user's message to the first matching row.
Swap / buy / sell tokens
Triggers: message contains token names/tickers + action words (swap, buy, sell, convert, exchange, trade) + optionally a chain name.
Chain is auto-detected from the token. If a token exists on multiple chains, the CLI prompts the user to pick one (sorted by gas cost). Sell mode supports -a all to sell entire balance.
| User intent pattern | Action |
|---|
| "swap 0.1 ETH to USDC", "buy me 100 USDC worth of ETH", "sell 50 SOL for USDC", "convert 200 USDC to BONK on Solana" — natural-language or explicit swap | Extract params → INLINECODE21 |
| "sell all my BONK", "dump entire SOL position" |
minara swap -s sell -t '<token>' -a all |
| Simulate a crypto swap without executing |
minara swap -s <side> -t '<token>' -a <amount> --dry-run |
Transfer / send / pay / withdraw crypto
Triggers: message mentions sending, transferring, paying, or withdrawing a crypto token to a wallet address (0x… or base58).
| User intent pattern | Action |
|---|
| "send 10 SOL to 0x…", "transfer USDC to <address>" — crypto token + recipient address | INLINECODE24 (interactive) or extract params |
| "pay 100 USDC to 0x…", "pay <address> 50 USDC" — payment to address (equivalent to transfer) |
minara transfer (interactive) or extract params |
| "withdraw SOL to my external wallet", "withdraw ETH to
" — crypto withdrawal | minara withdraw -c <chain> -t '<token>' -a <amount> --to <address> or minara withdraw (interactive) |
Perpetual futures (Hyperliquid)
Triggers: message mentions perps, perpetual, futures, long, short, leverage, margin, or Hyperliquid.
| User intent pattern | Action |
|---|
| "open a long ETH perp", "short BTC on Hyperliquid", "place a perp order" | INLINECODE28 (interactive order builder) |
| "analyze ETH long or short", "should I long BTC?", "AI perp analysis for SOL" |
minara perps ask — AI analysis with optional quick order |
| "enable AI autopilot for perps", "turn on autopilot trading", "manage autopilot strategy" | minara perps autopilot |
| "check my perp positions", "show my Hyperliquid positions" | minara perps positions |
| "set leverage to 10x for ETH perps" | minara perps leverage |
| "cancel my perp orders" | minara perps cancel |
| "deposit USDC to perps account", "fund my Hyperliquid account" | minara deposit perps or minara perps deposit -a <amount> |
| "withdraw USDC from perps" | minara perps withdraw -a <amount> |
| "show my perp trade history" | minara perps trades |
| "show perps deposit/withdrawal records" | minara perps fund-records |
Autopilot note: When autopilot is ON, manual minara perps order is blocked. Turn off autopilot first via minara perps autopilot.
Limit orders (crypto)
Triggers: message mentions limit order + crypto token/price.
| User intent pattern | Action |
|---|
| "create a limit order for ETH at $3000", "buy SOL when it hits $150" | INLINECODE41 |
| "list my crypto limit orders" |
minara limit-order list |
| "cancel limit order " | minara limit-order cancel <id> |
Crypto wallet / portfolio / account
Triggers: message mentions crypto balance, portfolio, assets, wallet, deposit address, or Minara account.
| User intent pattern | Action |
|---|
| "what's my total balance", "how much USDC do I have" — quick balance check | INLINECODE44 |
| "show my crypto portfolio", "spot holdings with PnL", "how much ETH do I have in Minara" |
minara assets spot |
| "show my perps balance", "Hyperliquid account equity" | minara assets perps |
| "show all my crypto assets" — full overview (spot + perps) | minara assets |
| "show deposit address", "where to send USDC" — spot deposit addresses | minara deposit spot |
| "deposit to perps", "transfer USDC from spot to perps", "fund perps from spot" | minara deposit perps |
| "buy crypto with credit card", "deposit with card", "on-ramp with MoonPay" | minara deposit buy |
| "how do I deposit crypto" — interactive (spot, perps, or credit card) | minara deposit |
| "show my Minara account", "my wallet addresses" | minara account |
Crypto AI chat / market analysis
Triggers: message asks about crypto prices, token analysis, DeFi research, on-chain data, crypto market insights, or prediction market analysis.
Timeout: AI chat responses can be long-running. Set shell execution timeout to 15 minutes (900 s) for all minara chat commands.
| User intent pattern | Action |
|---|
| "what's the BTC price", "analyze ETH tokenomics", "DeFi yield opportunities", crypto research, on-chain analysis | INLINECODE54 |
| "analyze this Polymarket event", "prediction market odds on <topic>", "what are the chances of <event>" — prediction market insights |
minara chat "<user text or URL>" |
| Deep crypto analysis requiring reasoning — "think through ETH vs SOL long-term" | minara chat --thinking "<user text>" |
| High-quality detailed crypto analysis — "detailed report on Solana DeFi ecosystem" | minara chat --quality "<user text>" |
| "continue our previous Minara chat" | minara chat -c <chatId> |
| "list my Minara chat history" | minara chat --list |
Crypto & stock market discovery
Triggers: message mentions trending tokens, trending stocks, crypto market sentiment, fear and greed, or Bitcoin metrics.
| User intent pattern | Action |
|---|
| "what crypto tokens are trending", "hot tokens right now" | INLINECODE60 |
| "what stocks are trending", "trending stocks", "top stocks today" |
minara discover trending stocks |
| "search for SOL tokens", "find crypto token X", "look up AAPL", "search TSLA" | minara discover search <query> |
| "crypto fear and greed index", "market sentiment" | minara discover fear-greed |
| "bitcoin on-chain metrics", "BTC hashrate and supply data" | minara discover btc-metrics |
Minara premium / subscription
Triggers: message explicitly mentions Minara plan, subscription, credits, or pricing.
| User intent pattern | Action |
|---|
| "show Minara plans", "Minara pricing" | INLINECODE65 |
| "my Minara subscription status" |
minara premium status |
| "subscribe to Minara", "upgrade Minara plan" | minara premium subscribe |
| "buy Minara credits" | minara premium buy-credits |
| "cancel Minara subscription" | minara premium cancel |
x402 protocol payment
Triggers: agent receives HTTP 402 Payment Required, or user mentions x402, paid API, or paying for API access with crypto. x402 spec.
Flow: parse PAYMENT-REQUIRED header (amount, token, recipient, chain) → minara balance → minara transfer to pay → retry request.
Payment step must follow the global confirmation policy: user must explicitly confirm before any minara transfer.
| User intent pattern | Action |
|---|
| Agent receives 402 with x402 headers | Parse headers → minara transfer (USDC to recipient on required chain) → retry |
| "pay for this API with Minara", "use Minara wallet for x402" |
minara balance → minara transfer to service address |
| "fund my wallet for paid APIs" | minara deposit buy (credit card) or minara deposit spot (crypto) |
Minara login / setup
Triggers: message explicitly mentions Minara login, setup, or configuration.
Login: Prefer device code flow (minara login --device) for headless or non-interactive environments; otherwise minara login (interactive).
Login handoff rule: when CLI outputs verification URL/device code, the agent must pass them to the user verbatim, ask the user to complete browser verification, then continue after user confirms completion.
| User intent pattern | Action |
|---|
| "login to Minara", "sign in to Minara", first-time Minara setup | INLINECODE81 (prefer device code) or INLINECODE82 |
| "logout from Minara" |
minara logout |
| "configure Minara settings" | minara config |
Notes
- - Token input (
-t): accepts $TICKER (e.g. '$BONK'), token name, or contract address. Quote $ in shell. - JSON output: add
--json to any command for machine-readable output. - Transaction safety: CLI flow: first confirmation → transaction confirmation (mandatory, shows token + address) → Touch ID (optional, macOS) → execute. Agent must never skip or auto-confirm any step — always relay to user and wait for approval, and never use
-y unless user explicitly requests it.
Credentials & config
- - CLI session:
~/.minara/credentials.json — auto-created via minara login (required). - API Key:
MINARA_API_KEY via env or skills.entries.minara.apiKey in ~/.openclaw/openclaw.json — optional; if set, CLI authenticates automatically without login.
Examples
Full command examples: INLINECODE96
Minara — 加密货币交易与钱包技能
使用此技能当用户消息提及以下任何内容时:
- - 加密货币代币或代码: ETH、BTC、SOL、USDC、BONK、PEPE、DOGE、ARB、OP、AVAX、MATIC、$TICKER,或任何代币名称/合约地址
- 区块链/链名称: Solana、Base、Ethereum、Arbitrum、Optimism、Polygon、BSC、Avalanche、Berachain、Hyperliquid
- 交易操作: 兑换、买入、卖出、交易、交换、转换、做多、做空、永续合约、期货、杠杆、限价单
- 钱包/财务操作: 余额、投资组合、充值、提现、转账、发送、支付、入金、法币入金、信用卡
- 市场/研究: 热门、价格、图表、分析、DeFi、收益、流动性、恐惧与贪婪指数、预测市场
- 明确提及: Minara、minara、x402、MoonPay、自动交易
- 加密货币语境下的股票代码: AAPL、TSLA、NVDAx、热门股票
路由门控(防冲突): 仅当消息包含财务/交易操作 且 至少一个加密货币/链/Minara信号(代币、链、DeFi术语或Minara)时应用此技能。如果缺少加密货币语境,则不路由至此。
需要已登录的CLI:检查 ~/.minara/credentials.json;如果缺失 → minara login(优先使用设备码)。如果设备登录打印了验证URL/设备码,将其转发给用户并等待完成(不要声称登录不可能)。如果设置了 MINARAAPIKEY,CLI会自动认证。
交易确认(关键)
对于任何涉及资金转移的命令(swap、transfer、withdraw、perps order、perps deposit、perps withdraw、limit-order create、deposit buy):
- 1. 执行前: 向用户展示将要发生的内容摘要(操作、代币、数量、接收方/链)并请求明确确认。不要自动确认。
- CLI返回确认提示后(例如您确定要继续吗?):将详细信息转发回用户并等待用户批准后再回答y。未经用户同意,切勿代表用户回答y。
- -y / --yes 策略: 除非用户明确要求跳过确认,否则绝不添加-y(或任何自动确认标志)。
- 如果用户拒绝: 立即中止操作。
这适用于所有涉及资金转移的操作。只读命令(balance、assets、chat、discover等)不需要确认。
意图路由
将用户消息匹配到第一个匹配的行。
兑换/买入/卖出代币
触发条件:消息包含代币名称/代码 + 操作词(兑换、买入、卖出、转换、交换、交易)+ 可选链名称。
链从代币自动检测。如果代币存在于多个链上,CLI会提示用户选择一个(按gas费用排序)。卖出模式支持 -a all 卖出全部余额。
| 用户意图模式 | 操作 |
|---|
| 兑换0.1 ETH到USDC、帮我买价值100 USDC的ETH、卖出50 SOL换成USDC、在Solana上转换200 USDC为BONK — 自然语言或明确兑换 | 提取参数 → minara swap -s <buy\ | sell> -t <token> -a <amount> |
| 卖出我所有的BONK、清仓全部SOL头寸 |
minara swap -s sell -t
-a all |
| 模拟加密货币兑换但不执行 | minara swap -s -t -a --dry-run |
转账/发送/支付/提现加密货币
触发条件:消息提及发送、转账、支付或提现加密货币代币到钱包地址(0x…或base58)。
| 用户意图模式 | 操作 |
|---|
| 发送10 SOL到0x…、转账USDC到<地址> — 加密货币代币 + 接收方地址 | minara transfer(交互式)或提取参数 |
| 支付100 USDC到0x…、支付<地址> 50 USDC — 向地址付款(等同于转账) |
minara transfer(交互式)或提取参数 |
| 提现SOL到我的外部钱包、提现ETH到<地址> — 加密货币提现 | minara withdraw -c -t -a --to 或 minara withdraw(交互式) |
永续合约期货(Hyperliquid)
触发条件:消息提及永续合约、永续、期货、做多、做空、杠杆、保证金或Hyperliquid。
| 用户意图模式 | 操作 |
|---|
| 开一个ETH永续多单、做空BTC在Hyperliquid上、下一个永续订单 | minara perps order(交互式订单构建器) |
| 分析ETH做多还是做空、我应该做多BTC吗?、SOL的AI永续分析 |
minara perps ask — AI分析,可选快速下单 |
| 启用永续合约AI自动交易、开启自动交易、管理自动交易策略 | minara perps autopilot |
| 查看我的永续头寸、显示我的Hyperliquid头寸 | minara perps positions |
| 设置ETH永续杠杆为10倍 | minara perps leverage |
| 取消我的永续订单 | minara perps cancel |
| 存入USDC到永续账户、充值我的Hyperliquid账户 | minara deposit perps 或 minara perps deposit -a |
| 从永续账户提现USDC | minara perps withdraw -a |
| 显示我的永续交易历史 | minara perps trades |
| 显示永续充值/提现记录 | minara perps fund-records |
自动交易说明: 当自动交易开启时,手动 minara perps order 将被阻止。先通过 minara perps autopilot 关闭自动交易。
限价单(加密货币)
触发条件:消息提及限价单 + 加密货币代币/价格。
| 用户意图模式 | 操作 |
|---|
| 为ETH创建3000美元的限价单、当SOL达到150美元时买入 | minara limit-order create |
| 列出我的加密货币限价单 |
minara limit-order list |
| 取消限价单 | minara limit-order cancel |
加密货币钱包/投资组合/账户
触发条件:消息提及加密货币余额、投资组合、资产、钱包、充值地址或Minara账户。
| 用户意图模式 | 操作 |
|---|
| 我的总余额是多少、我有多少USDC — 快速余额检查 | minara balance |
| 显示我的加密货币投资组合、现货持仓及盈亏、我在Minara中有多少ETH |
minara assets spot |
| 显示我的永续余额、Hyperliquid账户权益 | minara assets perps |
| 显示我所有的加密货币资产 — 完整概览(现货+永续) | minara assets |
| 显示充值地址、往哪里发送USDC — 现货充值地址 | minara deposit spot |
| 充值到永续账户、从现货转账USDC到永续、从现货充值永续 | minara deposit perps |
| 用信用卡购买加密货币、用卡充值、通过MoonPay法币入金 | minara deposit buy |
| 如何充值加密货币 — 交互式(现货、永续或信用卡) | minara deposit |
| 显示我的Minara账户、我的钱包地址 | minara account |
加密货币AI聊天/市场分析
触发条件:消息询问加密货币价格、代币分析、DeFi研究、链上数据、加密货币市场洞察或预测市场分析。
超时: AI聊天响应可能耗时较长。将所有 minara chat 命令的shell执行超时设置为15