Overview
A trench terminal that leaves fewer tracks.
Wraith is a Solana trading terminal that runs entirely in your browser. It does what fast terminals do: a live board of new pump.fun launches, one-click buys, token pages with live trades and holders, wallet tracking, limit orders and PnL. On top of that it gives you two things the others don't: Wraith mode, which buys from fresh wallets funded privately through Monero, and Exposure, which shows what wallet trackers can already link to you.
Non-custodial
You sign every trade, in your wallet or in wallets derived from your own signature. Wraith never holds funds.
Best-price routing
Every swap is routed by Jupiter across Solana's DEXs and pump.fun curves.
Private funding
Wraith wallets are paid by an exchange on the far side of Monero, not by you, so nothing on-chain points back.
Static and open
The app is plain files: HTML and JavaScript you can read, host or run locally.
Wallets
One signature, every wallet.
You connect a normal Solana wallet (Phantom, Solflare, Backpack and others). That is your main wallet. When you first use the instant wallet or Wraith mode, the terminal asks it to sign one fixed message. The signature never leaves your browser and is never stored. From it, the terminal derives:
SHA-256(signature ‖ path): wraith/instant/0 for the instant wallet, wraith/wallet/0, /1, /2… for wraiths.| Wallet | Signs with | Use it for |
|---|---|---|
| Main | Your wallet app, with a popup per trade | Holding funds, funding the others, careful trades |
| Instant | A key in this tab's memory, no popups | ⚡ buys and presets when you trade from it, plus autopilot and snipes. Fund it directly or privately. |
| Wraith | A fresh key per Wraith buy | Buys with no on-chain link to your main wallet |
Recovery
Solana signatures are deterministic: the same wallet signing the same message always produces the same signature. Sign again on any device and you get the same instant and wraith wallets back. Nothing secret needs to be backed up beyond your main wallet.
The terminal stores a short fingerprint of the signature (8 bytes of its hash, which reveals nothing). If your wallet ever signs differently, for example a different wallet app that signs messages another way, the terminal stops instead of opening a different set of wallets.
Every derived wallet has an Export key button, so you can import it into any Solana wallet.
Only sign the Wraith message on Wraith. Anyone holding that signature can rebuild your instant and wraith wallets; the message itself warns that it opens your private trading wallets. Some hardware-wallet setups can't sign messages; with those, instant and Wraith mode are unavailable and you trade from the main wallet.
Trading
From click to confirmed.
- The terminal asks Jupiter for a quote: your amount, slippage from the active preset, routes limited so the transaction has room for the fee.
- It fetches Jupiter's swap instructions, not a finished transaction, and assembles the transaction itself: compute budget, the fee transfer, the swap, cleanup.
- You sign. Main-wallet trades open a popup; instant and wraith trades sign in the tab.
- It sends the transaction, rebroadcasts it every 2 seconds until it lands or its blockhash expires, and reports the result.
Presets
Three presets set slippage, priority and Jito. Switch with 1 2 3 on a token page; edit them in Settings.
| Preset | Slippage | Priority fee | Jito tip | MEV-protect |
|---|---|---|---|---|
| P1 | 3% | High, up to 0.001 SOL | none | off |
| P2 | 10% | Very high, up to 0.003 SOL | 0.0005 SOL | off |
| P3 | 20% | Very high, up to 0.01 SOL | 0.001 SOL | on |
Jito and MEV-protect
With a tip set, the transaction pays it to one of Jito's tip accounts and is also sent to Jito's block engine, which helps it land in busy blocks. With MEV-protect on, the terminal simulates the transaction first and sends it only to Jito, never to a public RPC node, which keeps it away from sandwich bots watching the network.
Fees
0.5%, in SOL, in the open.
Every terminal trade pays a 0.5% fee in SOL, inside the same transaction as the swap. You see it in the trade panel and in your wallet's preview before you sign.
- Buys: 0.5% of the SOL you spend, transferred before the swap.
- Sells: 0.5% of the minimum SOL the route guarantees, transferred after the swap, so a fill better than the minimum is all yours.
- Wraith buys: the fee is paid by your main wallet when it funds the route. Wraith wallets never pay Wraith, so no fee transfer marks them.
- Not charged: wraith exits, deposits to and withdrawals from your instant wallet, and limit orders (Jupiter fills those).
Network costs are separate and go to Solana validators: the base fee, the priority fee from your preset, and a Jito tip if set. Jupiter's routing is free.
Wraith mode · Monero
An exchange pays your wraith. You never do.
Trackers link wallets by following SOL: whoever funds a wallet is assumed to own it. Wraith mode breaks that link by never sending SOL from your wallet to the wraith. Instead the SOL takes a detour through Monero, using Houdini Swap's Private Send, a non-custodial partner API, with Monero forced as the bridge asset. You pay one exchange on Solana; a different exchange pays the wraith from its own hot wallet.
The route
- Your wallet pays SOL into a one-time deposit address at exchange A.
- Exchange A swaps the SOL to XMR.
- The XMR moves on Monero, where ring signatures, stealth addresses and RingCT hide the sender, the receiver and the amount.
- Exchange B, a different, unrelated exchange, swaps the XMR back to SOL.
- Exchange B pays the fresh wraith wallet from its own hot wallet. On Solana, the wraith's SOL just comes from an exchange.
You never hold XMR and need no Monero wallet. Houdini's API runs both legs.
A Wraith buy, step by step
- The terminal derives the next wraith wallet from your signature and checks the chain that it has never been used, so a cleared browser or a new device never reuses one.
- It asks Houdini for a private SOL → XMR → SOL quote to the wraith and shows you the SOL that will arrive and the ETA.
- It checks the order before sending anything: it must pay the wraith, swap SOL for SOL, be a private route, match your amount, and use a deposit address that isn't one of your wallets. Refunds go to your wallet. Otherwise it refuses.
- You sign one transaction: SOL to the deposit address, plus the 0.5% fee.
- The route runs in the background, typically 10 to 40 minutes. The terminal stays usable and follows the route: confirming the deposit, swapping SOL to XMR, moving through Monero, swapping XMR back to SOL, sending SOL to the wallet.
- When the SOL lands, the wraith buys on Jupiter, keeping 0.01 SOL for network fees and token-account rent. A funded wraith can also buy later from the Wraith tab.
Fund privately, then trade instantly
Routes take about 5 to 50 minutes, because each exchange waits for confirmations and Monero has its own confirmation and lock time. So the fast way to use Wraith mode is to move SOL privately first and trade later: make a private deposit into your ⚡ Instant wallet, or pre-fund a wraith. Every trade after that is instant.
Exiting
Instant wallet withdrawals can go straight to your main wallet, or privately through Monero.
What it costs
The Wraith fee, charged once from your main wallet when you fund, plus Solana network fees and Houdini's quote. Houdini's quote is all-in: network fees, both exchange hops and Houdini's commission, roughly double a standard single swap. The terminal shows the SOL that will arrive and the ETA before you sign.
Each route has a minimum, set by Houdini's quote. Wraith buys are capped at 5 SOL while Wraith mode is in beta.
Who sees what
- On Solana: your wallet pays an exchange's deposit address; the wraith is paid by a different exchange. No transaction links the two.
- Exchange A and exchange B each see their own leg.
- Houdini sees both ends of the route. Its privacy notice says it keeps transaction data for 72 hours.
- Amounts and timing can still be matched by a determined analyst. Vary amounts, don't exit the moment a wraith is funded, and don't send funds between wraiths and wallets you've used publicly.
If something goes wrong
A route that fails or expires is refunded to the wallet that sent it, on the exchange's terms; the terminal shows the route's order id, which Houdini support can trace. Wraith wallets can always be rebuilt by signing again, and Portfolio scans your wraiths on-chain and lists every one with funds, with buttons to exit or export its key, so nothing is stranded. If you've made many wraiths, Scan further looks deeper.
Needs the relay
Houdini's API key and secret live only on Wraith's relay, so Wraith mode runs through it. Without the relay, the Wraith mode switch explains that and stays off.
Pulse data
Where the board comes from.
Pulse is three live columns: New pairs, Final stretch (tokens past 60% of their bonding curve, adjustable) and Migrated. Each token is merged from several sources by its mint address.
- Live trades on a token page come from the chain: pump.fun trades are decoded straight from program logs, other DEX trades from the transaction's balance changes.
- Holders come from the token's largest accounts, with the bonding curve and the dev wallet labelled, plus mint and freeze authority.
- Charts are DexScreener's. Images and socials come from the token's own metadata. If a token arrives without it (a migration, a pasted address), the terminal reads its metadata account on-chain. Images are tried through several IPFS gateways, and a pixel avatar drawn from the address shows until one loads. Every card links straight to the token's X, Telegram, website, pump.fun and DexScreener pages.
- Hover a column to pause it while you read. Filters by market cap, name and socials apply live.
Orders
Orders that run without you, and orders that run with you.
Migration sniper
Tap 🎯 on a Pulse card to arm a snipe. When PumpPortal reports that token's migration, or the on-chain curve shows it complete, the instant wallet buys right away, and can set take-profit and stop-loss rules for the new position (Settings → After a snipe). Like autopilot, it needs the tab open.
The 🤖 chip in the top bar counts armed rules and snipes. Portfolio → Orders lists all of them.
Tracker & PnL
Follow wallets. Keep score.
Tracker checks any wallets you add every 20 seconds and lists their new swaps, read from the chain. ⚡ on a row buys the same token with your quick-buy amount, from whichever wallet you trade from (main or instant).
Portfolio shows each wallet's positions with average cost and realized and unrealized PnL, priced in SOL. It counts trades made in the terminal; Import on-chain history reads the wallet's last 100 transactions so trades made elsewhere count too. Wraith buys are logged under the main wallet that paid for them. Everything is stored in this browser only.
Exposure
What trackers already know.
Exposure reads any wallet's public history and scores how linkable it is, 0 to 100, the way commercial trackers score it. It's read-only: nothing to connect or sign. Your browser sends its queries through Wraith's relay to the RPC node, or straight to your own node if you set one under RPC node.
It reads up to 100 recent transactions, the earliest ones it can reach, and one hop out to the funder and the most-linked wallets. It also flags address-poisoning attempts. Scores: Low under 25, Moderate 25–49, High 50–74, Exposed 75 and up.
Infrastructure
Keys stay off the page.
Anything in a static site is public, so API keys can't live in it. Instead every browser sends its requests to Wraith's relay, a small server that holds the keys and forwards them, so all visitors share paid capacity instead of free, rate-limited endpoints:
Houdini's key and secret are set on the relay as HOUDINI_API_KEY and HOUDINI_API_SECRET and never reach the page. Houdini needs the requester's IP address, user agent and time zone on every call for its compliance checks, so the relay forwards yours with each Monero-route request.
Rather not go through the relay for reads? Paste your own RPC URL (Helius, Triton, QuickNode) in the terminal's Settings, or under RPC node on Exposure, and your browser reads the chain from that node directly.
Token
Utility tied to fees. Not live yet.
The token isn't launched and nothing on this page is an offer. The planned uses all run on the fee the terminal already earns in SOL:
Fee tiers
Hold more, pay less than the 0.5% base fee.
Buybacks
A share of SOL fees buys the token back.
Wraith limits
Holders get higher Wraith mode limits per buy.
Referrals
A cut of referred traders' fees, paid in the token.
Security
What lives where.
| Thing | Where it is |
|---|---|
| Main wallet keys | Your wallet app. Never seen by the terminal. |
| Wraith signature, instant and wraith keys | This tab's memory only. Gone when you close the tab or disconnect; rebuilt by signing again. |
| Settings, watchlist, tracked wallets, trade log, rules | This browser's local storage. Never uploaded. |
| Wraith wallet list (addresses, route status) | This browser's local storage, under your main wallet's address. It links the two, so clear site data on a shared computer. The terminal can rebuild it from the chain. |
| Limit orders | On-chain, in Jupiter's Trigger program, under your wallet. |
| Wraith routes in transit | The exchanges on the Monero route, through Houdini Swap. Refunds go to the sending wallet. |
- Check the transaction preview in your wallet. A terminal buy shows the swap, one fee transfer to the Wraith treasury, and a Jito tip if your preset sets one. Nothing else.
- Keep the instant wallet to trading money. Its key sits in an open browser tab.
- Bookmark the site. Never sign the Wraith message anywhere else.
Shortcuts
Keyboard.
| Key | Does |
|---|---|
| / | Search tokens by name, ticker or mint |
| P | Back to Pulse |
| B / S | Buy / sell on a token page, focus the amount |
| 1 2 3 | Switch preset on a token page |
| ↑ ↓ Enter Esc | Move through search results, open, close |
FAQ
Questions.
Can Wraith take my funds?
No. It has no server holding funds or wallet keys, and its relay only forwards requests: it never signs anything. Every transaction is built in your browser and signed by you or by a key derived from your own signature. Wraith funds in transit sit with the exchanges on the Monero route, and a failed route refunds the wallet that sent them.
Why did my trade fail?
Usually the price moved past your slippage, or the transaction didn't land before it expired. Nothing but the network fee is spent when a swap fails. Try a faster preset or more slippage.
What does Wraith mode hide?
The on-chain link between your wallet and the wallet that buys. Your SOL goes to one exchange and the wraith is paid by another, with Monero in between. Houdini sees both ends, and timing and amounts can still be matched by someone watching closely, so vary them.
Why does a Wraith buy take so long?
Two exchange swaps and a Monero transfer, each waiting for confirmations: typically 10 to 40 minutes. The route runs in the background while you keep trading. For instant trades, fund your ⚡ Instant wallet privately first, then trade from it.
Do I need a Monero wallet?
No. You never hold XMR. Houdini's API swaps SOL to XMR and back on two exchanges for you.
Where are my instant and wraith wallets if I clear my browser?
Their keys were never stored, so nothing is lost. Connect the same main wallet, sign the same message, and they come back with their balances. Clearing the browser also deletes the local list linking your wraiths to your main wallet; the terminal finds them again on-chain.
Do limit orders pay the 0.5% fee?
Not today. Jupiter fills limit orders itself; terminal market trades and wraith buys pay the fee.
Why is a sniper or stop loss tied to the open tab?
Because it signs from the instant wallet, whose key only exists in your tab. Nothing on a server can sign for you. For orders that must fill while you're away, use a limit order.