MuseFun mascotMUSEFUN
DocumentationOpen app ↗
MuseFun Documentation

Create an identity.
Launch with intent.

MuseFun is a non-custodial BNB Chain interface for registering a permanent Muse identity and preparing supported token launches through Four.Meme or Flap.

Non-custodial by design. MuseFun never asks a server to hold your private key, seed phrase, or wallet password.

Current status

The interface, encrypted-wallet CLI, registry contract, live protocol discovery, transaction builders, tests, and no-broadcast Mainnet preflight exist locally. The MuseRegistry address is intentionally empty until a reviewed deployment is explicitly approved.

READY

Encrypted local wallets

Keystore generation and decryption happen on the user's computer.

READY

Registry contract build

Permissionless registration, permanent names, metadata updates, and owner enumeration.

LOCKED

Mainnet writes

Broadcast remains disabled while security findings and deployment identity are unresolved.

Architecture

  1. Wallet layerInjected EIP-1193 wallet in the browser or an encrypted Web3 keystore in the CLI.
  2. Muse registryA minimal BNB Chain contract stores the canonical name, owner, metadata URI, and registration timestamps.
  3. Protocol adaptersFour.Meme and Flap configurations are read from their live services and contracts before a route is considered.
  4. Human confirmationThe user sees the destination, value, gas estimate, and selected configuration before any signature or broadcast.

Muse identity

A Muse is a wallet-owned on-chain identity. The registry accepts one active Muse per wallet. Names are canonical lowercase identifiers from 3 to 32 characters using letters, numbers, hyphens, or underscores.

FieldMeaning
NamePermanently reserved canonical Muse identifier.
OwnerWallet that submitted and owns the registration.
Metadata URIIPFS or HTTPS pointer controlled by the owner.
RegisteredTimestamp stored by the registry contract.
UpdatedTimestamp of the latest metadata update.

Local wallets

The CLI creates an EVM wallet locally using cryptographically secure randomness and stores it as a password-encrypted Web3 keystore under ~/.musefun/wallets/. Raw private keys are not printed or transmitted.

Back up both the encrypted keystore and its password. MuseFun cannot recover either one. Never paste a seed phrase or private key into a website, support chat, or command argument.

Terminal CLI

Create an encrypted local wallet:

npx --yes github:NachoLLMJS/MuseFun wallet:create --name my-muse

After the registry is reviewed, deployed, and pinned in the package configuration, register the Muse:

npx --yes github:NachoLLMJS/MuseFun register \
  --name my-muse \
  --metadata-uri ipfs://YOUR_METADATA_CID

The registration command verifies the chain, contract configuration, name availability, estimated gas, and final receipt before saving the transaction reference.

Web registration

Connect an EIP-1193 wallet, select BNB Smart Chain Mainnet, enter a valid Muse name and metadata URI, then review the confirmation dialog. The wallet signs and broadcasts directly; the site does not receive the private key.

Four.Meme route

MuseFun reads the currently published quote assets from Four.Meme. A classic launch uses the official login challenge, official image upload endpoint, backend-issued opaque creation bytes, and the documented TokenManager2 contract.

  • Only currently published quote configurations are displayed.
  • Holder rewards must follow Four.Meme's supported tax allocation.
  • Image upload and backend preparation occur only after explicit approval.
  • The final contract call remains locked until the integration security gate passes.

Flap route

MuseFun targets the official BNB Mainnet VaultPortal V6 flow with Tax Token V3. It checks the live quote configuration, official factory registration, dividend-token route, vanity salt, and complete calldata before signing.

  • Supported official vaults: Split Vault and Gift Vault.
  • Split Vault requires 1–10 unique recipients totaling exactly 10,000 basis points.
  • Gift Vault requires a valid lowercase X handle.
  • Unsupported pairs, factories, dividend routes, or enum configurations fail closed.

Safety model

No custody — keys stay with the user.

No fabricated success — only confirmed receipts are accepted.

No automatic broadcast — a human confirmation is required.

Fail closed — missing configuration, unsupported routes, wrong chains, or simulation errors stop the action.

On-chain data and Recent Muses

Recent Muses is derived from the registry's append-only owner index and each owner's current Muse record. When the registry is not deployed, the interface shows a deployment-pending state instead of demo registrations.

Command reference

npx --yes github:NachoLLMJS/MuseFun wallet:create --name <muse-name>
npx --yes github:NachoLLMJS/MuseFun register --name <muse-name> --metadata-uri <uri>
npx --yes github:NachoLLMJS/MuseFun --help

Limitations

MuseFun cannot promise every pair, dividend token, vault, or launch type. Compatibility depends on each protocol's live allowlists, quote configuration, factories, routing, liquidity, and contract version. The UI must treat live protocol state as authoritative.