Whitepaper
Private trading with your friends. Verified wins. Calls that pay. The product, privacy and launch economics behind Cabal.
Trading is better with friends
Trading is more fun with friends. Finding a good trade feels even better when you helped your friends find it too. Cabal brings that feeling into a social trading app for memecoins on Robinhood Chain.
Your cabal sees every buy, sell and position. Your trading history and portfolio stay hidden from public view. You can help each other win without broadcasting your strategy to the whole market.
Verified public posts let you share a win without showing its exact size. Calls pay people whose ideas lead to trades. Weekly profit-and-loss (PnL) tournaments give your crew other cabals to beat.
Your cabal
A cabal is a private trading group. One account per person. Every buy, sell and position is shared automatically with every cabal you belong to. Posts, replies and calls are written by you.
Joining takes an invite or a paid request, the owner’s approval and a free seat, but no NFT. A seat is one member’s place in a cabal. Seats come from zk9 NFTs, the Cabal NFTs. Paid entry is charged when your membership starts. Expired, revoked or already used admissions cannot charge again.
If a cabal runs out of seats, sharing pauses: no new members and no new trade updates until the owner adds seats. Member funds are never affected.
How a trade works
You approve the trade presented by the app.
- Your device
- Your device signs the operation and makes a zero-knowledge proof authorizing the spend. Spending keys stay on your device.
- Transaction submitter
- A submitter sends the signed operation to the pool. It cannot change what you signed.
- Privacy pool
- The pool checks the proof, prevents reuse of spent funds and executes the trade through its shared account.
- Cabal service
- Your device proves the balance change. Cabal checks the proof and settlement, then updates your cabals’ feeds.
Deposits and withdrawals are ordinary wallet transactions, and you choose the withdrawal recipient. Foglight supplies the privacy technology; Cabal operates its own pool and reporting service.
Your call, your cut
A call is a post about a coin you think will rise. Share it in a cabal or on the public feed. When someone buys from your call, you get 20% of the trading fee they pay. A sharp idea pays even without a big bag.
Each account gets three calls per UTC day across both feeds. Published calls cannot be edited or deleted. Reading a call does not credit its author; buying through it does. Self-trades do not earn author rewards. An eligible buy must settle within 30 minutes of the buyer choosing to buy through the call, and within 24 hours of the call.
A call’s chart tracks the coin’s price from the moment it was posted.
Flex with proof
Post “I just bought five figures of $VRAX” with a zero-knowledge (ZK) proof that anyone can check. The proof reveals a purchase range and keeps the exact amount hidden. Trades and PnL claims both work this way. You choose what goes public; your cabals see everything.
Cabal verifies each report against the settled transaction and the account’s previous accepted balance change, then marks it Cabal verified. The badge covers the trade, not the thesis. Repeated delivery never creates a duplicate trade or reward, and an interrupted report resumes from the app.
Privacy
Every private swap comes from one shared pool account, so strangers see a trade, not you. Your cabals see your trades in full. Spending keys stay on your device. Privacy lists exactly what is public.
Who holds power
| Role | Power | Limit |
|---|---|---|
| Cabal owner | Approves members, sets admission terms and assigns zk9 NFTs to the group. | Cannot spend member funds. |
| Cabal platform | Verifies trade reports, runs the feeds, calculates owner and author payouts. The Cabal team holds the pool’s viewing key for legal compliance; it links every pool trade to its wallet. | Never holds spending keys. Cannot spend member funds. |
| Token and treasury administrators | Choose recipients for reserve distributions and fee rewards. | No one can mint $CABAL beyond the fixed supply. Treasury withdrawals are restricted to defined payouts. Changes to swap routes have a delay. |
| NFT and sale administrators | Select the whitelist and change minting authority and future auction floors. | Genesis sale rules, artwork and ongoing auction terms are fixed. Minting authority can change without a delay. |
| $CABAL market administrator | Starts the launch swap-fee decay once and sets the buy and sell fee floors. | Cannot restart or reshape the decay, or set a floor above 5%. |
| Privacy pool administrator | Pauses and resumes the pool, chooses who may deposit, sets its viewing key and collects its fee balance. | Cannot spend, move or seize member funds, or block one member’s account. The pool’s code is formally verified and cannot be changed. |
| Launch pool liquidity administrator | Sets the treasury address that receives the launch pool’s ETH-side liquidity fees, and who may collect them. | Cannot withdraw the locked liquidity. $CABAL-side fees can only go out of circulation. |
Risks
- Contract bugs
- Code can have bugs. The Foglight privacy pool’s contract and zero-knowledge circuits are formally verified in the Lean theorem prover. The $CABAL token, launch-pool and zk9 sale contracts are formally verified with Certora and stress-tested with stateful invariant tests. None of the contracts is audited yet.
- Pool administration
- Cabal holds the privacy pool’s admin key. It can pause the pool, choose who may deposit, set its viewing key and collect the pool’s fee balance. It cannot spend, move or seize your funds, block one member’s account or change the pool’s code, which has no upgrade path. A pause stops every pool transaction, withdrawals included, until Cabal resumes it.
- Chain
- Cabal runs on Robinhood Chain, and a recent block can be reorganized before it is final. Cabal marks such trades “Not final yet” and hides any shared trade a reorganization invalidates.
- Market
- Memecoins move fast in both directions. The launch swap fee on $CABAL starts at 90% and reaches its floor within an hour of the decay starting.
- Privacy
- Deposits and withdrawals are public wallet transactions. For legal compliance, the Cabal team holds a viewing key that links every pool trade to its wallet. Privacy lists exactly what strangers can see.
- Your device and login
- Your device and your login account control your wallet. If you sign in with X, your X account unlocks your embedded wallet, so protect it with two-factor authentication.
The $CABAL token
| Use | Amount |
|---|---|
| Genesis liquidity | 100M $CABAL |
| Reserve for distributions | 900M $CABAL |
| Total supply | 1B $CABAL, fixed |
There is no token sale or team allocation. The whole supply is minted once at launch and the token has no mint function. Weekly tournament pots are the main way the reserve is distributed.
Genesis liquidity
The 100M allocation pairs with all genesis-mint $ETH in the public $CABAL/$ETH launch pool, a market separate from Cabal’s privacy pool. Its liquidity is locked for good: nobody can withdraw it.
Launch swap fee
The launch pool’s fee hook, CabalFeeHook, sets the swap fee. Buys and sells both start at 90% and stay there until the team starts the fee decay, which it can do once. From that moment, the fee halves about every four minutes: roughly 45% after 4 minutes, 22.5% after 8 and 2.8% after 20. It never drops below its floor, 2% on buys and 3% on sells, and after one hour only the floor applies.
The team can set each floor anywhere from 0% to 5% at any time. It cannot restart or reshape the decay. Uniswap protocol fees, if enabled, apply on top.
zk9
zk9 is Cabal’s NFT collection: dapper dogs that let you start and grow cabals. Assign one to your group for 25 seats, up to 250 per cabal. The owner uses one seat. Buying a dog does not assign its seats automatically. Its artwork lives onchain, so it does not depend on someone paying an art server’s bills.
Genesis mint
The genesis supply is 1,000. The team selects the whitelist. Whitelisted wallets mint first at 0.1 $ETH each. Unminted dogs then enter a public Dutch auction that starts at 1.25 $ETH and falls to a 0.1 $ETH floor. Each wallet can mint at most three across both phases. All collected $ETH seeds $CABAL liquidity.
One new dog a day
After genesis, one new zk9 enters a daily Dutch auction paid in $CABAL. Place a bid at the price you want; if the falling auction price reaches it, your bid can win while you are offline. Bids are public and cannot be cancelled. Replaced and unfilled bids are refunded. The winning $CABAL goes to the dead address, out of circulation for good. If nobody buys that day’s zk9, it’s gone for good: the auction never mints or offers it again and moves on to the next dog. Read the auction rules.
Where the revenue goes
Cabal charges a 0.3% trading fee on each trade. The rate is subject to change. Cabal also keeps any positive slippage, the gain when a trade fills better than its quote.
Launch split of Cabal trading fees
| Buy | Team | Cabal owner | Call author |
|---|---|---|---|
| Through an eligible call | 50% | 30% | 20% |
| Without eligible attribution | 70% | 30% | None |
Owner and author shares convert to $CABAL and pay out weekly. Tournament prizes come from a separate reserve.
Paid cabal entry sends 70% to the owner; the other 30% goes out of circulation for good. Daily auction payments go to the dead address, also out of circulation for good. “Out of circulation” means sent to an address nobody controls, so no one can ever move those tokens again. The total supply still reads 1B.
You can belong to at most 10 cabals. If you are in several, their owners divide the 30% owner share evenly; belonging to more cabals never raises the total owner share.
Launch pool LP fees
Liquidity provider (LP) fees from the launch pool follow their own route: $CABAL-side fees go out of circulation for good, and ETH-side fees go to the team treasury.
Crew versus crew
Every week, cabals compete on PnL: 70% realized, 30% unrealized. ZK proofs verify the leaderboard, so your crew can take the top spot without publishing anyone’s portfolio.
The top cabals split a $CABAL pot, the main way the token’s reserve is distributed. Each winning cabal’s award divides equally among its members. Each week’s pot is capped, and prizes come from the existing reserve; no new $CABAL is minted for them.