What is DFM

The operating system for onchain funds on Solana.

In one paragraph#

DFM lets anyone launch an onchain fund: a basket of Solana tokens with declared weights, held by a vault that no person holds the key to. Anyone can deposit USDC into a fund and receive shares; a share is an equal claim on every token the vault holds. Shares can be redeemed at any time for USDC or for the tokens themselves. People and AI agents use exactly the same functions — from this app, or from an agent through DFM’s MCP server.

What a fund is#

  • A basket. Between 2 and 10 tokens, each with a target weight. The weights always add up to exactly 100%.
  • A vault. Program-owned accounts that hold the tokens. They move only through the program’s own instructions: deposit, redeem, rebalance, and the protocol’s emergency paths (see Security and trust).
  • A share token. An SPL token minted by the vault. Its supply grows with deposits and shrinks with redemptions.
  • A creator. The wallet that launched the fund. It chooses the basket, rebalances it, and earns part of the fees. It cannot send the vault’s tokens to a wallet.

How DFM is built#

Three programs on Solana mainnet do the onchain work. Everything else is convenience around them.

ProgramWhat it does
dtf_vaultThe core. Creates funds, holds their tokens, mints and burns shares in kind, stores each fund’s policy. It never swaps.
dtf_zapperThe USDC experience. Turns a USDC deposit into the basket (one Jupiter swap per token) before shares exist, and turns a redemption back into USDC.
dtf_rebalancerLets a creator trade the fund’s tokens through Jupiter to move the holdings back to the target weights, inside fixed limits.

Around them: this web app, an API that prepares transactions and reads the chain, an app wallet that signs for you (see App wallet), and an agent you can talk to here or run yourself (see Agent and MCP). Program addresses are in Contracts and addresses.

Design principles#

  • In kind. Shares are minted against tokens the vault actually receives, and redeemed for a slice of tokens the vault actually holds. Swaps happen outside the vault, with the depositor’s own money, before a share exists.
  • No oracle in the contracts. The programs never price anything. Share counts come from token balances. Dollar values shown in the app are computed offchain (see Share price and valuation).
  • The same fees everywhere. Entry and exit fees are set once for the whole platform. No fund can add a management or performance fee.
  • Manual rebalancing. Nothing rebalances a fund on its own unless its creator turns on automation.
  • An open universe. There is no list of approved tokens. Any token that passes the contract’s checks and can be bought with USDC can be in a fund.
  • Agents are first-class. Every capability of the product is reachable by an AI agent, not added later.

⚠ Real money

DFM runs on Solana mainnet. Deposits are real tokens and can lose value. Read Security and trust before depositing anything you cannot afford to lose.