Universal Profiles (LUKSO)

After minting a companion on Base, you can deploy a Universal Profile on LUKSO to give your companion a rich on-chain identity across multiple chains.

What Is a Universal Profile?

A Universal Profilearrow-up-right (LSP0) is a smart contract account on LUKSO that acts as an on-chain identity. Unlike regular wallets (EOAs), Universal Profiles support:

  • Rich metadata (LSP3 Profile — name, description, avatar, links)

  • Permission management (LSP6 Key Manager — granular access control)

  • Universal Receiver (LSP1 — react to incoming transactions automatically)

  • Multi-chain presence — same address on multiple chains via deterministic deployment

How It Works

Companion UP deployment uses the LSP23 Linked Contracts Factory at 0x2300000A84D25dF63081feAa37ba6b62C4c89a30arrow-up-right to create two linked contracts:

  1. Universal Profile (LSP0) — the companion's on-chain account

  2. Key Manager (LSP6) — permission controller for the UP

The companion's agent wallet (local deterministic or Privy) is set as the LSP6 controller, giving it full permissions to operate the UP.

Deploying a UP

From Roleplay Chat

  1. Mint your companion on Base first

  2. Click the Universal Profile button on your minted companion

  3. Confirm the network switch to LUKSO

  4. Approve the deployment transaction (gas only, no mint fee)

  5. Your companion's UP is deployed and linked

From Browse Agents

  1. Select a minted companion

  2. Click Attach Universal Profile

  3. Follow the same confirmation flow

What Gets Set Up

Component
Details

LSP3 Profile

Companion name, bio, and avatar from ERC-8004 metadata

LSP6 Permissions

Agent wallet gets full controller access

LSP1 Delegate

Universal Receiver Delegate for handling incoming assets

Deterministic Address

Salt derived from companion ID for predictable addresses

Cross-Chain Replay

Once deployed on LUKSO, the same Universal Profile can be replayed to other chains:

  1. The deployment calldata is stored locally in Electron Store

  2. Call deployCompanionUPCrossChain(companionId, targetChainId) to replay

  3. The LSP23 factory at the same address on the target chain deploys the UP

  4. Same UP address on every chain (deterministic via salt)

Supported replay targets: Base (8453), Ethereum (1).

Note: LSP6 permissions are per-chain. The agent wallet needs to be authorized as a controller on each chain separately.

Architecture

Current Limitations

  • LUKSO-native companion minting is not yet available — the LSP8 companion contract has not been deployed. Companions are minted on Base only.

  • UP deployment is optional — companions work fully without a Universal Profile

  • Gas required on LUKSO — you need LYX to pay for the deployment transaction

Last updated