Somnia Tokyo / Hideki · 50383
Get ready for a testnet trade.
Start with simulation. Real testnet orders need a dedicated account, STT for gas and paper USDso in its Perps account.
Option A · browser wallet
- Create a dedicated test wallet in your browser wallet extension. Keep the seed phrase and private key in the wallet.
- In PairPilot, select Testnet → Connect wallet. The app requests Somnia Tokyo, chain
50383. - Obtain STT on this exact network through the official dreamDEX testnet app’s wallet gas/top-up flow, or bridge STT from Shannon (50312) over the Hyperlane lane documented in the SDK. Shannon STT does not pay Tokyo gas until bridged. Keep at least 1 STT.
- Fund this address’s Perps margin with paper USDso. The local CLI can claim the documented one-time voucher for an eligible own-wallet account; do not claim repeatedly through multiple accounts.
- Verify the account is flat with no open orders, pending TP/SL or other bots. Preview 50 USDso total, then sign the two orders. A failed second leg leaves the first exposed until closed.
- Use Reconcile, Close pair, then Export JSON to keep transaction hashes and remaining quantities.
Option B · local CLI wallet
- Run
npm run wallet:init. It creates one dedicated key in ignored.env.localand prints only the public address. Never paste that key into chat. - Send STT on Tokyo to the printed address. Run
npm run wallet:statusto check its balance and margin. - Run
npm run wallet:claimto claim the one-time paper USDso voucher after eligibility is verified. - Run
npm run trade -- preview, thennpm run trade -- opento execute the saved preview, limited to 200 USDso total. These commands sign real testnet transactions. - Run
npm run trade -- reconcileafter uncertainty. Runnpm run trade -- closeto close filled exposure. CLI and browser journals are separate; use one execution path per wallet.
Using a wallet inside dreamDEX
The app wallet and your browser wallet may be different addresses. Link a Bot grants a separate key permission to trade the app wallet; it does not turn the bot address into the owner. Both paths can trade a linked app wallet. In the browser, choose Linked wallet in Trade and enter the app wallet's full address; the connected browser wallet must itself be linked through Link a Bot. In the CLI, pass the full address with --owner= to every npm run trade command, starting with the read-only check. Margin and positions stay on the app wallet; the signing key pays gas.
Extra bounty USDso must stay separate from Perps Arena accounts under the bounty rules.
Limits of this version
Orders execute sequentially. Recovery requires this client to run and may partially fill or fail. Position checks cannot prevent a race with another client; ordinary SDK orders do not expose a contract-enforced reduce-only flag. Do not trade elsewhere on the account while a pair is active. Browser history lives in this browser’s local storage.
Equal dollar allocation is not a guarantee of market neutrality, profitability or a maximum loss. This version does not arm TP/SL or change your leverage setting.