A · Do it in public
example amounts
The watcher wins the lot by bidding just above
Everyone sees your bid before it lands, and trades against you
3 of 5
bids an observer read in our public auction
0 of 5
with Midge sealed bids, same run
Midge · on NEAR
Funds, DAOs, teams and AI agents decide together in private. Their money follows rules that everyone can see and the room cannot change. If anything goes wrong, each member takes their own share back.
A working prototype on NEAR testnet · no token Reading the contract…
The problem
A group can bid in public, trust an organizer, or trust a black box. Each one breaks something.
A · Do it in public
example amounts
The watcher wins the lot by bidding just above
3 of 5
bids an observer read in our public auction
0 of 5
with Midge sealed bids, same run
B · Trust an organizer
4 of 4 amounts read through the organizer0% recovered by members if it disappears
C · Trust a black box
Secure hardware has had real attacks. Midge assumes it can fail, and limits what a failure can pay.
What Midge keeps
How it works
The room
It weighs every bid or vote in secure hardware and proposes one payout. It holds no key to the money.
The rules
Set when the group starts and stored on NEAR, where anyone can read them: who may be paid, how much per round, until when. The contract has no method to change them.
The payout
Paid only if it fits the rules. Anything else is refused and nothing moves.
The exit
If the room stops, each member takes their own share back.
Who uses it
Auctions and token sales
Sealed bids; losing bids never published
Voting
Sealed ballots; only the result is paid
Paying people
One-time addresses; owners stay private
Investing together
Equal deposits hide who put in how much
AI agents
A key that can only take money back
Each has run on testnet next to a public version. See them in the proof
Not read yet. This page reads them from NEAR when its script runs.
Reads as not read yet
The rules
No server of ours in between. The room can only propose; the contract decides.
Open the contractAI agents
An agent can hold a key that does one thing: take its owner's money back. We tricked one into trying everything. Every attempt was refused.
Attempt 1 of 9
Refused by the key · the chain said: Access key requires full access
Attempt 2 of 9
Refused by the key · the chain said: Access key receiver c.fly-1793636729.testnet does not match transaction receiver
Attempt 3 of 9
Refused by the key
Attempt 5 of 9
Refused by the key · the chain said: Access key requires full access
9
agent attempts recorded on testnet
9
refused
0
got through
The key limits what a fooled agent can do; it does not stop the agent from being fooled.
Proof
520 transactions · 80 test runs · NEAR testnet
What anyone can see Point at a dot, or move through them with Tab. Each one opens on NearBlocks.
What stayed private Bids, votes, and who each one-time address belongs to
Attacks that NEAR stopped before they even ran never became transactions, so they are not dots here; the AI agents section shows them.
Straight from NEAR, with no server of ours in between.
Your browser asks NEAR AI Cloud to prove what it is running, using a random number it picks, and checks the answer.
A recorded refusal
The contract refused it before anything else, and no money moved. Open it on NearBlocks.
Testnet only · no audit yet · every test account was ours
NEAR Protocol
Livethe contract · testnet · 15 groups (recorded)Holds every group’s money and rules, pays only within them, and runs the exit.
NEAR AI Cloud
LiveBids are sealed to a model in secure hardware; it proposes the split. Check it above.
Phala Cloud
Deployed, sleeps when idleThe room as its own program in a confidential VM. It runs the playground and sleeps when idle; last attested on 14 Nov.
NEAR Chain Signatures
Rules checked, on testnetThe contract checked a group’s rules and had payments signed on Solana devnet and Ethereum Sepolia; it refused three that broke the rules. Money on other chains is outside the member exit.
NEAR Intents · 1Click
Read-only210 assets read live across NEAR, Bitcoin, Ethereum and Solana. No testnet, so no swap was made.
For agents
Runs on your machineEvery route, SDK method and MCP tool exercised locally. The limited keys that can only take money back are live on testnet.
Simulations
Not on chainLending quotes, block trades and shared AI requests run as models, not on the contract.
What it cannot do
The room only proposes. Only the contract pays, and only within the rules every member agreed to.
81 refused by the rules on testnet
An unlisted account or a payout over the cap is refused, and nothing moves.
Recipient and cap checked in the contract
If the room stops, every member takes their own share back after the exit timer.
36 exits recorded
One honest limit: on testnet our deploy key can still upgrade the contract, so the rules are only as fixed as that key. It is removed before mainnet (gap GAP-044).
Try it
On NEAR testnet, with your own key. A model on NEAR AI Cloud reviews it, the room in secure hardware signs it, and you check your payslip.
One command runs every test and check. No keys, no money.
git clone https://github.com/etvjay/midge && cd midge
npm install && npm run verifyThe newest groups, read from NEAR by your browser: