From 61671c1f8cb9a7e72c950d273be2b480df1e4d0c Mon Sep 17 00:00:00 2001 From: brianna Date: Thu, 6 Aug 2026 17:24:57 +0800 Subject: [PATCH] docs: clarify that trade accepts bare tickers, not just addresses `acp trade` forwards --token-in/--token-out to /trade/plan, whose resolver (internal-trading-bot) resolves a bare ticker for the two directional shapes: a buy (dollar -> --token-out ) picks the highest-24h-volume deployment, and a sell (--token-in -> dollar) matches the wallet's holdings. The old "anything else is treated as a token address" line was stale -- it only holds for a token->token swap with no dollar leg. Update SKILL.md and README so users (and agents driving the CLI) pass the ticker instead of pre-resolving a contract address. Co-Authored-By: Claude Opus 4.8 --- README.md | 2 +- SKILL.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a86b74f..d844174 100644 --- a/README.md +++ b/README.md @@ -746,7 +746,7 @@ acp trade --token-in usdc --chain-in 1 --amount-in 100 --token-out usdc --chain- acp trade --token-in usdc --chain-in 8453 --amount-in 5 --token-out sol ``` -Supported chains: **Base (8453), Ethereum (1), BSC (56), Hyperliquid (1337), Solana** (+ Base Sepolia testnet). Token symbols `eth`, `weth`, `usdc`, `usdt`, `sol`, `virtual` are resolved automatically; anything else is taken as a token address. +Supported chains: **Base (8453), Ethereum (1), BSC (56), Hyperliquid (1337), Solana** (+ Base Sepolia testnet). The canonical symbols `eth`, `weth`, `usdc`, `usdt`, `sol`, `virtual` always resolve. Beyond those, a **buy** (`--token-out `) or **sell** (`--token-in `) accepts a bare ticker — the backend resolves it (a buy by highest 24h volume, filtering same-ticker scams; a sell against your holdings). Only a token→token swap with no dollar leg needs an explicit contract address for a non-canonical symbol. **Hyperliquid — deposit (a cross-chain swap into HL, chain 1337):** diff --git a/SKILL.md b/SKILL.md index 0397482..adc5039 100644 --- a/SKILL.md +++ b/SKILL.md @@ -285,7 +285,7 @@ acp trade hl-status --json acp trade withdraw-from-hl --amount 25 --json ``` -Supported swap chains: Base (8453), Ethereum (1), BSC (56), Hyperliquid (1337), Solana (+ Base Sepolia testnet). Known token symbols: `eth`, `weth`, `usdc`, `usdt`, `sol`, `virtual`; anything else is treated as a token address. +Supported swap chains: Base (8453), Ethereum (1), BSC (56), Hyperliquid (1337), Solana (+ Base Sepolia testnet). The canonical symbols `eth`, `weth`, `usdc`, `usdt`, `sol`, `virtual` always resolve. Beyond those, the backend resolves a **bare ticker** for directional trades — a **buy** (a dollar/canonical/address `--token-in` → `--token-out `) picks the deployment with the highest 24h volume (which filters out same-ticker scams), and a **sell** (`--token-in ` → a dollar `--token-out`) matches your wallet's holdings — so you needn't look up a contract address for those. Only a **token→token swap with no dollar leg** still needs an explicit contract address for a non-canonical symbol (a bare ticker there is ambiguous and is rejected with `AMBIGUOUS_SYMBOL`). **Timing.** Same-chain swaps return in a few seconds. Cross-chain swaps and HL **deposits block until the bridge settles** — the command self-polls every 10s. Typically ~10–30s (the Relay route into HL is near-instant), with a 10-minute cap for slower routes. Agents should treat these as long-running: wait for the command to return rather than killing it early; a couple of poll cycles while LiFi indexes the source tx is normal.