Bare Companions
Bare companions are a pre-reveal minting flow that lets you mint a companion NFT without completing the full setup immediately. You can finalize the companion's identity later.
How It Works
Minting a Bare Companion
Call
mintCompanion()with placeholder metadata (status: 'pending_setup')The NFT is minted with a minimal registration — no portrait, no personality details
The companion appears in your collection with a "Needs Setup" badge
Detection
The app detects bare companions by checking:
metadata.bonzai.status === 'pending_setup'metadata.active === falseand name contains "Pending Setup"
Finalization
When you're ready, the finalizeCompanion() flow completes the setup:
Generate spending profile from personality description
Generate portrait using the image pipeline (or provide your own)
Upload image to IPFS via Pinata
Build full ERC-8004 registration with OASF v0.8.0 traits
Upload registration JSON to IPFS
Set agent URI on-chain via
setAgentURI()Create agent wallet (local deterministic or Privy server wallet)
Set agent wallet on-chain via
setAgentWallet()Set spending profile on-chain (packed
uint96)Set personality hash on-chain
Set OASF traits via
setMetadataBatch()
Use Cases
External minting: Mint via BaseScan or another dApp, then finalize in BonzAI
Batch minting: Mint several companions quickly, set up their identities later
Deferred decisions: Secure your token ID now, decide on personality and appearance later
Last updated