Openfunderse is an agent-driven fund protocol for Monad: data claims are attested, intents are validated, and only approved intents can execute onchain.
Let whitelist assets be
Flow (v0 safe patch):
- Participants submit target weights
$c_{i,t}\in\Delta^n$ . - Stake-weighted aggregate is projected into a feasible risk set.
- Strategy executes toward projected target under venue constraints and execution cost.
- Participant prediction score
$g_{i,t}$ is settled on scoring oracle return. - Positive NAV alpha mints extra shares; next weights are induced only by share balances.
Fund state:
Aggregation and projection:
Execution:
with per-leg feasibility (example):
Oracle model (execution vs scoring):
where
Participant prediction score:
NAV alpha and mint budget:
Mint allocation (Sybil-resistant via stake weighting):
Share-weight identity:
Parameters:
*Inspired by stake-weighted subjective-consensus literature (incl. Yuma-style clipping), adapted to portfolio allocation with explicit risk projection and execution constraints.
*Operational note: projection
- Included: participant co-investment claims (
targetWeights) -> epoch aggregate -> strategy intent propose -> intent attestation/bundle -> ready-for-onchain execution payload. - Included: index mapping rule
targetWeights[i] <-> riskPolicy.allowlistTokens[i]; strategy uses aggregate view to choose rebalance direction. - Included: shared intent execution visibility through relayer status/read APIs.
- TODO (formula-only): reward score settlement, mint budget allocation, and onchain vault share minting from model equations.
- Design note: current contracts/API are intentionally unchanged for reward mint logic in MVP demo.
packages/contracts: Foundry contracts (ClawFundFactory,IntentBook,ClawCore,ClawVault4626, NadFun adapter)packages/relayer: API/aggregation layer for fund events and attestationspackages/agents: participant/strategy agent runtimepackages/sdk: shared hashing + EIP-712 utilities
ClawFundFactory:0xf16a12fCeC5FD8eb67eEd57f9659AE730734AA74MockSnapshotBook:0x06676F1eE9480085c01BEdb348C60167EBeE0Cc9IntentBook(Implementation):0x417dDEdbECb746e4474B587dF056a1EB42957e80IntentBook(Proxy):0x23403970eD4891b8f85a414B9B00C239D364D16AClawVault4626(Implementation):0x2bcB5a88942D474797baB5628c4c04A07E9c1597ClawVault4626(Proxy):0xd1Cd80B55cD1c77116f2b817356f157C116dDAcaClawCore(Implementation):0x251377f58D2F8e1A296c783Dab54A16f70795417ClawCore(Proxy):0x6e81c81912f7714F2BbeD0a369D00Bd218439988NadfunExecutionAdapter(Implementation):0xc4B1F14B85D4DF9C1cf2d5BCc55a114A2860d553NadfunExecutionAdapter(Proxy):0x418F5A1d728b3e23B6B01A04a4FEEa7894f9b2B2
| Package | Primary role | Owns | Docs |
|---|---|---|---|
packages/contracts |
Onchain execution and fund governance | UUPS contracts, deployment scripts, Foundry tests | packages/contracts/README.md |
packages/relayer |
Offchain API and orchestration | v1 API, attest/intent aggregation, execution jobs, storage integration | packages/relayer/README.md |
packages/agents |
Runtime bots for participant/strategy | Reddit MVP participant flow, bot runtime exports | packages/agents/README.md |
packages/sdk |
Canonical protocol utilities | Hashing, EIP-712 verification, weighted-threshold helpers | packages/sdk/README.md |
packages/openfunderse |
Codex skill-pack installer/distribution | openfunderse install CLI, pack manifests/prompts/skills |
packages/openfunderse/README.md |
nvm use
npm installcd packages/contracts
cp .env.example .env.local
forge build
forge test- Admin fund bootstrap (factory):
./packages/contracts/scripts/deploy-fund-factory.sh - Contract deployment:
./packages/contracts/scripts/deploy-clawcore-stack.sh - Intent preflight check:
./packages/contracts/scripts/validate-intent-call.sh - Intent dry-run check:
./packages/contracts/scripts/dry-run-intent-call.sh - End-to-end NadFun flow (optional):
./packages/contracts/scripts/run-nadfun-e2e.sh
Detailed script usage and required envs:
Use the docs index as the single navigation entry:
High-signal docs:
- Manual intent validation:
docs/protocol/intent-manual-validation.md - Protocol hashing/EIP-712:
docs/protocol/hashing-eip712-v1.md - Contracts package guide:
packages/contracts/README.md