One treasury.
Every governance shape it needs to take: Quadratic.

Right in your favourite Telegram group.

Protean brings programmable, on-chain governance into Telegram, Discord, Slack, and WhatsApp, the places your community already coordinates. Eleven mechanisms, one treasury, swap models without ever moving funds.

How it actually works

A DAO is created and run entirely from inside the chat, with no separate dashboard to log into.

Create in chat

One command deploys a treasury, a governance token, and your chosen model, directly in the group.

Pick a model

Ten governance mechanisms plus a confidential market, from simple multisig to quadratic and conviction voting.

Propose, vote, execute

Every step happens as a normal message in the chat everyone's already in.

Swap models, keep funds

Outgrow a model later? Change it. The treasury never moves.

Ten governance models, one confidential market

The ten share the same propose → vote → queue → execute shape. Opportunity Market is a distinct primitive, with no proposals or votes: a fully confidential prediction market instead.

Token-weighted
The baseline: one token, one vote, weighted by balance at a fixed snapshot.
standard
Quadratic
Voting power grows with the square root of tokens held, softening whale influence.
weighted
Liquid
Token-weighted voting with delegation: hand your vote to someone you trust, per topic or always.
delegated
Optimistic
Proposals pass by default unless challenged within a window, giving speed for routine decisions and a real vote only when contested.
fast-path
Conviction
No discrete vote: support accumulates the longer your stake stays committed to a proposal.
continuous
Board
A signer multisig, with no token at all, just confirmations from a fixed set of trusted signers.
multisig
Sortition
A council chosen at random from eligible members, serving fixed terms, like jury duty for governance.
randomized
Delegate
An elected council serving fixed terms, chosen by ordinary token-holder vote.
elected
Sowellian
Proposals open for a market-style approval phase, then adjudicate disputed outcomes, with optional live price-feed resolution.
two-phase
Decision Markets
Futarchy: two prediction markets, pass vs. fail, resolved by comparing price over time. No voting at all.
market-based
Opportunity Market
Confidential prediction surveys: place fully encrypted bets; only the winning outcome and its total backing are ever revealed.
confidential

Built for how real groups actually organize

Five shapes Protean already fits, each with its own tools on top of the same governance layer.

DAO Associations

Online communities that need a shared treasury and real coordination. Messenger-native interaction, governance tools, association registration (Wyoming DUNA or Marshall Islands nonprofit DAO LLC), accounting, and banking tools.

Private Escrow Groups

NFT/token OTC trading and gig-economy deals. Secure fund escrow, permissioned groups that cut impersonation risk, and withdrawals straight to a bank account.

Private Opportunity Surveys

Businesses and investment groups consulting scouts who can't risk a leak. Confidential survey tools, process and results analytics, and researcher reward tools, powered by Protean's confidential Opportunity Market.

Optimistic Treasury Management

Foundations and nonprofits making regular operational payments. Built-in oversight and accounting, plus association registration and banking tools.

Private Decision Markets

DAO corporations and funds that want market-driven decisions. Sowellian and futarchy tooling, outcome verification, accounting, and for-profit Marshall Islands DAO LLC registration.

Get started

Add Protean to the platform your community already lives in.

Telegram

Add Protean to a group and govern right in the chat.

Add to Telegram

Discord

Bring proposals and votes into your community server.

Add to Discord

Slack

Run governance from your team's workspace.

Add to Slack

WhatsAppexperimental

Try Protean on WhatsApp. This bot is early, so expect rough edges.

Message on WhatsApp

Where it runs

Governance runs on ultra-cheap EVMs, with Solana programs live on devnet and NEAR contracts live on testnet. The confidential Opportunity Market runs wherever Zama's coprocessor network actually exists today.

live · testnet

Monad

Governance: all ten models
10 verified factory contracts. see addresses
live · testnet

Base

Governance: all ten models
10 verified factory contracts. see addresses
live · testnet

HyperEVM

Governance: all ten models
10 verified factory contracts. see addresses
live · testnet

Ethereum (Sepolia)

Opportunity Market
live · devnet

Solana

Governance: hub + 10 models
11 programs on devnet. see addresses
live · testnet

NEAR

Governance: 9 models on Sputnik DAO
11 global contracts, published by code hash. see hashes

Overview

Protean is the governance layer for social messengers: programmable, on-chain governance mechanisms brought directly into Telegram, Discord, Slack, and WhatsApp (experimental).

Instead of forcing every community into the same governance model, Protean provides modular governance primitives that deploy directly inside the chat a community already uses. A DAO's treasury and its voting logic are deliberately separate, so a group can change how it decides things without ever migrating funds.

The problem it solves

Communities are usually stuck choosing between two broken options. Web2 tools make collective ownership difficult, with no safe way to pool or spend group money inside a chat app. Web3 frameworks force people out of the chat onto a separate site, with a treasury permanently welded to one voting contract, so changing your mind about governance means a risky, expensive fund migration.

How Protean approaches it

Governance runs directly inside the chat a community already uses, with no separate site and no new habit to build. Because the treasury and the voting logic are kept apart, a community can change how it governs as it evolves, for example moving from a simple multisig to quadratic voting later, without ever touching the funds.

A passed proposal can already execute real onchain actions atomically through Protean's verified action library, reaching Treasury, tokens, and connected wrappers in one approved step. The planned offchain counterpart is a compliant banking tool that executes a payment the moment a DAO approves it, with no separate manual step required. Optional legal wrappers, such as a Wyoming DUNA or a Marshall Islands DAO LLC, are also available for communities that need real-world legal standing for their onchain treasury.

Architecture

Four parts: the governance contracts (EVM, Solana and NEAR), the bot interfaces, and this site.

contractsSolidity: one factory per governance model, deployed with Foundry. Source in the Spaces repo
solanaAnchor programs: a hub plus a program per governance model. Source in the Vortexes repo
nearRust: nine governance modules (Orbits) for Sputnik DAO, plus staking and token contracts, with their own bot. Source in the protean-near repo
botNode.js (protean-bot): handles all interaction and transaction execution on Telegram, Discord, and Slack, plus an experimental WhatsApp bot
connectThis site: onboarding for people integrating the bot

Every DAO gets its own, fully separate contract deployment: a real Governance contract, a real Treasury, a real governance token. Nothing is a shared proxy; each community's DAO is independent from every other.

Two optional wrapper contracts sit alongside a DAO: an NFT marketplace wrapper for on-chain trading, and a Guard Wrapper, a security-council layer that can inspect and confirm sensitive treasury or token actions before they execute.

Governance models

All ten share the same propose → vote → queue → execute shape.

Token-weighted

The baseline model. Voting power is read from a snapshot at proposal creation, weighted by balance.

Quadratic

Same shape as token-weighted, but voting power scales with the square root of tokens held, reducing the influence of the largest holders relative to the wider group.

Liquid

Token-weighted voting with delegation. A holder can hand their voting power to someone else, and reclaim it at any time.

Optimistic

A proposal passes automatically once its challenge window closes, unless someone challenges it, in which case it goes to a real vote. Built for routine actions that shouldn't need a full vote cycle every time.

Conviction

No discrete "for/against" vote. A holder commits their current stake to a proposal, and their conviction accumulates the longer it stays committed, rewarding sustained, patient support over a single burst of votes.

Board

A signer multisig. No governance token at all: a fixed set of signers confirms transactions directly, with a configurable approval threshold.

Sortition

A council selected at random from eligible members via an external randomness source, serving fixed terms, governance by lottery rather than election or stake.

Delegate

A council elected by ordinary token-holder vote, serving fixed terms before a new election reopens.

Sowellian

A two-phase model: proposals first go through an approval phase, and disputed outcomes move to an adjudication phase, with optional resolution against a live Chainlink or Switchboard price feed.

Decision Markets

Futarchy. Two prediction markets are opened for a proposal, one betting it will pass and one betting it will fail, and the outcome is decided by comparing their time-weighted average price. No voting step exists in this model at all.

Opportunity Market

A confidential prediction market, a distinct primitive, not a twin of the ten governance models above.

Opportunity Market has no proposals and no votes. Its lifecycle is: list an opportunity, place fully encrypted bets on which one will succeed, resolve the outcome, then reveal only the winning opportunity and its aggregate backing total. Individual bets and positions are never revealed, even after resolution. Built on Zama's confidential compute stack, currently deployed on Ethereum Sepolia, since that's where Zama's coprocessor network exists today. It moves to other chains as Zama's network expands to them.

Module lifecycles

The actual states and commands each of the eleven modules moves through, from proposal to finished outcome.

Token-weighted, Quadratic, Liquid

Pending→ Active→ Succeeded / Defeated→ Queued→ Executed
Commands
/propose→ /vote→ /queue→ /execute

All three share this same eight-state shape (also including Cancelled and Expired). The only real difference between them is how voting power is counted: Token-weighted uses a raw balance snapshot, Quadratic uses the square root of that balance, and Liquid adds delegate() / undelegate(), letting a holder hand their vote to someone else and have it resolve down a full delegation chain.

Optimistic

ChallengeWindow→ if challenged→ Active→ Succeeded / Defeated→ Queued→ Executed
Commands
/propose→ /challenge (optional)→ /vote→ /queue→ /execute

The one model that starts in a different state than every other: ChallengeWindow, not Pending. A proposal passes automatically once that window closes unless someone calls challenge(), which is the only point a real token-weighted vote (Active) ever happens here.

Conviction

Pending→ support() accumulates→ Succeeded→ Queued→ Executed
Commands
/propose→ /support→ /withdrawsupport (optional)→ /queue→ /execute

No discrete vote at all, vote() isn't used here. A holder commits their current stake with support(), and conviction accumulates the longer that stake stays committed. withdrawSupport() pulls it back at any time.

Board

Proposed→ confirm() by signers→ auto-queued at threshold→ Executed
Commands
/propose→ /confirm→ /revoke (optional)→ /execute

The only model with no token and no separate queue step at all, confirming a proposal automatically queues it the moment the required threshold is reached. It's also the only model that can move backward: revoking a confirmation below threshold un-queues a proposal that had already qualified.

Sortition

registerEligible()→ startSortition()→ finalizeSortition()→ Council seated→ propose → vote → queue → execute
Commands
/registereligible→ /startsortition→ /finalizesortition→ /propose→ /vote→ /queue→ /execute

Council selection has no election at all. Eligible token holders opt into a pool, and the council is drawn from that pool by a verifiable random shuffle against an external randomness source. Once seated, anyone meeting the eligibility threshold (not just council members) can propose; only the council actually votes, by headcount, not token weight.

Delegate

startElection()→ declareCandidacy()→ voteInElection()→ Council seated→ council proposes & votes
Commands
/startelection→ /declarecandidacy→ /voteinelection→ /finalizeelection→ /propose→ /vote→ /queue→ /execute

Three separate mechanisms on one contract: an election open to every token holder (token-weighted), council proposals restricted to sitting council members only (headcount-weighted), and a separate recall vote, also open to every holder, that can remove a council member early before their term ends.

Sowellian

ApprovalVoting→ PositionsOpen→ Executed→ ResolutionPending→ if challenged→ Adjudicating→ Finalized
Commands
/proposecriteria→ /castapprovalvote→ /finalizeapproval→ /takeposition→ /execute→ /resolveviaoracle or /proposeresolution→ /challengeresolution → /castadjudicationvote → /finalizeadjudication, or /finalizeunchallenged→ /claimposition

A proposal first passes a token-weighted approval vote, then opens for people to takePosition() on its real-world outcome. Resolution can come automatically from a live oracle, or from a human proposing an outcome that others can challenge into a second, adjudication vote. claimPosition() only pays out once the outcome is final.

Decision Markets (Futarchy)

proposeWithSeed()→ two live markets open→ trade()→ finalizeProposal()→ Executed
Commands
/proposemarket→ /trade→ /finalizeproposal→ /execute

No vote of any kind exists on this contract. Proposing seeds two live trading markets, pass and fail, and people trade whichever side they believe in. finalizeProposal() simply compares the two markets' time-weighted average price. Pass must exceed fail's by a configured margin, that comparison alone is the entire verdict.

Opportunity Market

listOpportunity()→ deposit()→ back()→ resolve()→ reveal winning total→ computeReward()→ withdraw
Commands
/createmarket→ /listopportunity→ /deposit→ /back→ /resolve→ /revealwinningtotal→ /computereward→ /withdraw

No proposals, no votes, not a governance model at all. A deployer lists one or more opportunities; bettors fund a confidential balance and place fully encrypted bets with back(). Once the deployer calls resolve(), only the winning opportunity's aggregate total is ever revealed, individual bets and positions never are, even after everyone has been paid out.

Guard Wrapper

An optional security layer a DAO can adopt without changing its governance model at all.

A Guard Wrapper sits between governance and a DAO's treasury or token contract. Governance can propose an instruction to it, but a small set of signers must confirm before it actually executes, giving a DAO a human circuit-breaker against a malicious or mistaken proposal, without giving those signers any power to act on their own. Signers can only confirm or reject what governance already sent; they can never initiate a transaction themselves.

Commands

The full command set. Which ones apply depends on your DAO's governance model: a Board DAO doesn't have /stake, a Delegate DAO doesn't have /support, and so on.

Core lifecycle

CommandWhat it does
/createdaoDeploys a new DAO, with a treasury, token, and your chosen governance model, directly in this chat.
/proposeCreates a new proposal for the linked DAO to vote on.
/voteCasts a vote on an open proposal (token-weighted, quadratic, liquid, optimistic, delegate).
/queueMoves a passed proposal into its execution timelock.
/executeExecutes a proposal once its timelock has elapsed.
/cancelCancels a proposal before it executes.
/proposalShows a proposal's current state, votes, and timing.
/stakeStakes tokens to activate voting power.
/unstakeWithdraws staked tokens.
/walletShows your chat-linked wallet address and balance.
/claimClaims welcome tokens or amounts owed to you.
/helpShows every command available in this specific chat.

Model-specific voting

CommandModelWhat it does
/supportConvictionCommits your current stake to a proposal, accumulating conviction over time.
/confirmtransactionBoardA signer confirms a proposed transaction.
/addsigner / /removesignerBoardAdds or removes a signer, only via a passed proposal.
/castcouncilvoteSortitionA randomly-selected council member votes on a proposal.
/voteinelectionDelegateVotes for candidates in a council election.
/declarecandidacyDelegateDeclares your candidacy for an open council election.
/finalizeelectionDelegateFinalizes an election once its voting window closes.
/proposecriteriaSowellianCreates a proposal with oracle-based or human-judged resolution criteria.
/castapprovalvoteSowellianVotes in a proposal's approval phase.
/castadjudicationvoteSowellianVotes in a disputed proposal's adjudication phase.
/deploychainlinkoracleSowellianDeploys a price-feed adapter for oracle-based resolution.
/tradeDecision MarketsTrades in a proposal's pass or fail prediction market.
/finalizeproposalDecision MarketsResolves a proposal by comparing its two markets' time-weighted price.

Verified action library

CommandWhat it does
/listactionsShows every verified action this DAO can propose.
/proposeactionProposes a verified action without hand-building calldata yourself.

Wrappers

CommandWhat it does
/deploynftwrapperDeploys an NFT marketplace wrapper for this DAO.
/deployguardwrapperDeploys a Guard Wrapper (a signer-confirmed security layer) for this DAO.
/registerguardwrapperLinks an already-deployed Guard Wrapper to this chat.
/handovertowrapperComputes the proposals that hand Treasury and token control to a Guard Wrapper.
/guardwrapperShows a wrapper's current signers, threshold, and tenure status.
/instructionShows full detail on a pending or resolved wrapper instruction.
/confirminstructionA signer confirms a pending wrapper instruction.
/rejectinstructionA signer permanently cancels a pending wrapper instruction.
/revokeconfirmationA signer withdraws their own earlier confirmation.

Opportunity Market

CommandWhat it does
/createmarketDeploys a new confidential Opportunity Market.
/registermarketLinks an already-deployed market to this chat.
/depositDeposits underlying tokens into your confidential balance.
/listopportunityLists a new opportunity for the market.
/backPlaces a fully encrypted bet on an opportunity.
/resolveRecords which opportunity won, in plaintext.
/revealwinningtotalReveals the winning opportunity's total backing.
/computerewardComputes your share of the reward pool.
/withdraw / /withdrawrewardWithdraws your stake or your computed reward.
/mybalance / /mybet / /allbetsShows your confidential balance, one bet's detail, or all your bets.
/analyticsDeployer-only aggregate stats per opportunity.

Chains & contracts

Governance runs on ultra-cheap EVMs, on Solana (devnet) and on NEAR (testnet); Opportunity Market runs wherever Zama's coprocessor network exists today.

Monad testnet (chain 10143)

All ten governance factories, plus their Pyth adapters, are live and verifiable on MonadVision, Monad's official block explorer.

ContractAddress
Token-weighted0x1E74...8f8b
Quadratic0x8318...7F26
Liquid0xC9D5...267c
Optimistic0x24c4...7B82
Delegate0xCd38...3a25
Board0xdB64...ee1e
Sortition0x1183...09a0
Conviction0x9447...a9aA
Sowellian0x5d61...5b71
Decision Markets0xafa0...034C
Pyth Entropy adapter (Sortition)0x422c...b92D
Pyth price adapter (Sowellian)0x6C58...949e

Base Sepolia (chain 84532)

All ten governance factories, plus their Pyth adapters, are live and verifiable on Basescan, the block explorer for Base Sepolia.

ContractAddress
Token-weighted0xE7C0...309d
Quadratic0xF33D...e22c
Liquid0x68cf...cC02
Optimistic0x5d7C...8B28
Delegate0xfa41...d311
Board0x4145...6E18
Sortition0x3767...d016
Conviction0x05Ad...9c73
Sowellian0xf9B5...7e2B
Decision Markets0x0374...6d86
Pyth Entropy adapter (Sortition)0xaB73...B1Fc
Pyth price adapter (Sowellian)0x9d10...78F9

HyperEVM testnet (chain 998)

All ten governance factories, plus their Pyth adapters, are live and verifiable on the HyperEVM testnet explorer.

ContractAddress
Token-weighted0xa1Fa...2C85
Quadratic0xdDc6...1d90
Liquid0xaBAc...5020
Optimistic0x9E42...8fb6
Delegate0x3D1F...d8b2
Board0x69f2...30BC
Sortition0x413C...aC2e
Conviction0x382e...3dBb
Sowellian0x485A...85aF
Decision Markets0x2f6C...2478
Pyth Entropy adapter (Sortition)0xeEdE...3BD3
Pyth price adapter (Sowellian)0x8018...6dAf

Ethereum Sepolia (chain 11155111)

The Opportunity Market factory is live and verifiable on Etherscan.

ContractAddress
OpportunityMarketFactory0xE9fF...4625

Solana devnet

Governance programs for Solana are deployed on devnet and can be inspected on the Solana Explorer. A shared hub program sits alongside all ten governance models.

ProgramAddress
vortex-hub5m9N...xMKe
vortex-token-weightedHf9M...ikV8
vortex-quadraticES1U...i3tR
vortex-liquidCMf1...du1W
vortex-optimisticBjcf...PpdX
vortex-delegate6TVZ...Uvk2
vortex-board9yER...oXZE
vortex-sortitionFjuZ...p6U5
vortex-conviction9sxW...xrWQ
vortex-sowellianG99Y...srx2
vortex-decision-marketsFfUP...5t4S

NEAR testnet

On NEAR, governance is built as Orbits: one governance module per model, each acting as the only member of a Sputnik DAO that holds the treasury. The modules, the staking contract and the token are published once as NEAR global contracts and shared by every DAO, so they are identified by code hash and not by a contract address. A DAO's own accounts have no access keys and run exactly this code. The board model needs no orbit: it is Sputnik's own multisig. The hashes below are read from orbits/deployments/testnet.json in the protean-near repo.

ContractCode hash (base58)
Token-weighted orbit2y2w94Kk4QpkgxBTM59Doji4sh9uzfqKSb7kPU8J8zcf
Quadratic orbit8YGXDXMxooQo4MY8gvEB9zLMQ13uVjCNaBFVG8Hk3P4D
Liquid orbitK2x1JannFBEN6H5vrqXPpn2rWXNt3bQFPXYwRN1xTmH
Optimistic orbit8U1h1FjJf8q4WynEssacvjyK3dfJmxeZfBWRfR4jJpzQ
Conviction orbitBZgs5oFbEN8T4ZRwVJ2chamVuznitABm8ZFgB6kbAdX6
Delegate orbitHPvSUiDXZsDcBE511oR5xBzW3rm9TWtf8pgsGMPbjFsS
Sortition orbit8CrjonQBLYSXVhpp2g8KSAAiyDaTWDn3ENUDMd7jdKGx
Sowellian orbitDeoBfxibLsvt2ssMGV28N65Ncq7ax182q9xKoUp79fv1
Decision Markets orbitrULMrsgwYJ9j1aB72sqijnF8eLRcmpz94kMGx7U1sxJ
Staking (one per DAO)5VuyqRFFsrwbMByjVR9CVNCwPqdAKdZHu4mZoJuhhxcj
Governance token (NEP-141)E7sPCuzLdZhno4Y1mEKXnwHeGXcVX3mzScCcy8LAdUBV

Each DAO gets its own accounts. A DAO called ark running token-weighted governance would have:

AccountRole
ark.sputnik.protean.testnetThe core and treasury (Sputnik DAO)
token.ark.protean.testnetThe DAO's token
staking.ark.protean.testnetStakes and their history
tw.ark.protean.testnetThe orbit: tw token-weighted, qv quadratic, lq liquid, op optimistic, cv conviction, dg delegate, st sortition, sw Sowellian, dm decision markets