Open-Source Cold Email & Warmup Platform
Warmbly is the open-source platform for cold email: warm your mailboxes, send campaigns, and triage every reply. Run it on our cloud or self-host the whole thing.
Real KOL impact for crypto markets. Bots, paid promos and inflated reach filtered out. Nearly 13,000 KOLs and growing every day.
MarketingSolidity · JavaScriptGitHub @MihenkAIOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Mihenk Pay: condition-based USDC payments between crypto projects and KOLs. Live on Arc, Base and Monad mainnet. Part of Mihenk AI.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Condition-based USDC payments between crypto projects and KOLs (influencers). Part of Mihenk AI.
Mihenk AI measures which crypto KOLs really move the market: real reach (median views per post, not followers), bot-screened audiences, and every coin call scored against BTC. Mihenk Pay uses those measurements to settle KOL deals on-chain. The project locks the fee in USDC, the KOL accepts from the payout wallet, and the contract releases the money only when Mihenk verifies the post. Whatever isn't earned goes back to the project.
Live on Arc, Base, Monad, Sei, Avalanche C-Chain and Arbitrum One mainnet with native USDC. Current version: v2 (22 Oct 2026, addresses below).
If Mihenk never settles before the deadline, the project can reclaim the full amount. An unresolved dispute falls back to Mihenk's result after 30 days. If the token refuses a payout (for example to a USDC-blacklisted address), the other payouts still go through and the refused amount is credited to that address, which can claim it later itself. Funds can never be stuck.
Deploy.s.sol can hand ownership to a Safe multisig (OWNER).git clone https://github.com/MihenkAI/mihenk-pay-contracts && cd mihenk-pay-contracts
git clone --depth 1 https://github.com/foundry-rs/forge-std lib/forge-std
git clone --depth 1 --branch v5.1.0 https://github.com/OpenZeppelin/openzeppelin-contracts lib/openzeppelin-contracts
forge test
37 Foundry tests, including a fuzz test proving that every unit locked always ends up with the KOL, the project or the fee recipient (paid out, or credited for claim when an address is blacklisted), and nothing is stuck in the contract.
DEPLOYER_KEY=... VERIFIER=0x... FEE_RECIPIENT=0x... TOKEN=0x... OWNER=0x<safe> \
forge script script/Deploy.s.sol --rpc-url <RPC> --broadcast
If TOKEN is empty, a testnet-only TestUSD with an open faucet is deployed and allow-listed. DISPUTE_WINDOW defaults to 3 days (minimum 24 hours). script/DemoLive.s.sol runs the full flow on a live network with a real stablecoin.
On Arc, USDC is the native gas token and its ERC-20 interface (0x3600…0000) is backed by a precompile that Foundry's local EVM does not implement, so forge script cannot simulate token calls there. Deployment works with forge script; the Arc demo campaign below was sent with cast send, letting the node estimate gas.
Deployed with script/Deploy.s.sol from this code. Owner 0x9e366c62f1310115e5832af0d46c6f26f8a1e0b4; verifier and fee recipient 0x845B9cff41Eb67e56673375D842b7C5b949Cc7aA; fee 3%; dispute window 3 days (1 day on Sei); native USDC allow-listed. Source verified on Sourcify (exact match) on all six networks.
| Network | MihenkPay v2 | Deploy transaction |
|---|---|---|
| Arc mainnet (5042) | 0x7aB655F4c8F5C960E22a95E7694A6B5bA1531211 | 0x40817f7473… |
| Base mainnet (8453) | 0x6170DeEe0F3146E83D00F482B7364108dAD4b6de | 0xde7374ffcd… |
| Monad mainnet (143) | 0x45f1710e871F0113D47CEce6C9D9dDB823B7Ba52 | 0x4376c22089… |
| Sei mainnet (1329) | 0xA4461bA5791D32C541081DEf50DF2eFC6E3a611F | 0xdb405fc45f… |
| Avalanche C-Chain (43114) | 0xA4461bA5791D32C541081DEf50DF2eFC6E3a611F | 0x26f1babe23… |
| Arbitrum One (42161) | 0xA4461bA5791D32C541081DEf50DF2eFC6E3a611F | 0x2caabb2280… |
What changed from v1, after issues were reported to us once v1 was live:
claim(token) it.createCampaign takes minLive: the verifier cannot settle earlier than minLive seconds after the KOL accepts, and settlement must still fit before settleDeadline.getCampaign(id).The first mainnet deployments each ran one 2-USDC demo campaign, all finalized. On 22 Oct 2026 USDC was removed from their allow-list, so no new campaign can be created there; they hold no funds.
| Network | MihenkPay v1 | USDC removed |
|---|---|---|
| Arc mainnet | 0xd49Da88a030Ac997C5fda06E84752e9f4d9b7b72 | 0xa371e767bd… |
| Base mainnet | 0xb5842Ea5b537C17DBda1F81d753b3969632107a9 | 0xc7a0caf3b5… |
| Monad mainnet | 0x95b35D96678f6a9aef9C5f09F95a0D9add06eFfb | 0xde6c8ed5a6… |
The v1 demo campaigns follow.
Live with native USDC (0x3600000000000000000000000000000000000000). Source verified on Sourcify (exact match). The USDC used here was moved from Base to Arc with Circle CCTP V2 and the forwarding service (burn on Base, mint on Arc).
| Contract | Address |
|---|---|
| MihenkPay | 0xd49Da88a030Ac997C5fda06E84752e9f4d9b7b72 |
Demo campaign #1 with 2 USDC: a real, organic KOL post measured by Mihenk AI, replayed as a paid campaign (no actual sponsorship took place). 50% earned on delivery, 50% on reaching 20,000 real views, 1-hour dispute window. Delivery and reach were both met.
| Step | Transaction |
|---|---|
| Project locks 2 USDC | 0x06826a768d… |
| KOL accepts from payout wallet | 0x056de246ee… |
| Mihenk settles (delivered + reach hit) | 0xdeb13c1b26… |
| Finalize: KOL receives 1.94 USDC (2 minus 3% fee) | 0x991737722c… |
Live with USDC (0x8335…2913). Source verified on Sourcify.
| Contract | Address |
|---|---|
| MihenkPay | 0xb5842Ea5b537C17DBda1F81d753b3969632107a9 |
Same demo campaign with 2 USDC:
| Step | Transaction |
|---|---|
| Project locks 2 USDC | 0xf2c1ff0c94… |
| KOL accepts from payout wallet | 0xb526c0c5d1… |
| Mihenk settles (delivered + reach hit) | 0xb5c718f8a2… |
| Finalize: KOL receives 1.94 USDC (2 minus 3% fee) | 0x03e629ff6f… |
Base Builder Code: transactions sent from these scripts on Base mainnet carry Mihenk AI's Builder Code (bc_s415ugdv, ERC-8021) at the end of the calldata, so Base attributes the activity to Mihenk AI. See script/BuilderCode.sol; the contract ignores the suffix, and test/BuilderCode.t.sol runs a full campaign with tagged calldata. The demo campaign above was sent before the Builder Code was added.
Live with USDC (0x7547…b603). Source verified on Sourcify.
| Contract | Address |
|---|---|
| MihenkPay | 0x95b35D96678f6a9aef9C5f09F95a0D9add06eFfb |
| Step | Transaction |
|---|---|
| Project locks 2 USDC | 0x36563ffb5b… |
| KOL accepts from payout wallet | 0x78aa74891b… |
| Mihenk settles (delivered + reach hit) | 0x3d037663fd… |
| Finalize: KOL receives 1.94 USDC, contract balance back to 0 | 0x648b5c0901… |
| Contract | Address |
|---|---|
| MihenkPay | 0x6170DeEe0F3146E83D00F482B7364108dAD4b6de |
| TestUSD (testnet-only stablecoin) | 0xd49Da88a030Ac997C5fda06E84752e9f4d9b7b72 |
On every network, only keccak256 hashes of the terms file and the measurement report are stored (termsHash, resultHash). The files themselves name the KOL, so they stay off-chain and are shared only with the parties.
bridge/cctp_base_to_arc.mjs moves USDC from Base to Arc with Circle Bridge Kit (CCTP V2) and the forwarding service, so the receiving wallet needs no gas on Arc. It funded the Arc demo campaign (burn on Base, mint on Arc). Run npm install in bridge/, then SPONSOR_KEY=0x... AMOUNT=5.40 node cctp_base_to_arc.mjs for an estimate, adding SEND=1 to bridge.
The contracts have not had an external audit yet. Live deployments are used for demo campaigns with small amounts; client campaigns at scale come after an audit. Security reports are welcome at [email protected].
MIT