程序

创建压缩 NFT

mplx bg nft create 命令在现有的默克尔树中铸造压缩 NFT。如果您还没有默克尔树,请先创建一棵。

基本用法

交互式向导(推荐)

mplx bg nft create --wizard

指定特定树

mplx bg nft create my-tree --wizard

基于文件创建

mplx bg nft create my-tree --image ./nft.png --json ./metadata.json

基于 URI 创建

mplx bg nft create my-tree --name "My NFT" --uri "https://example.com/metadata.json"

参数

参数描述
TREE树名称(已保存)或默克尔树地址(向导模式下可选)

选项

选项描述
--wizard使用交互式向导
--name <value>NFT 名称
--uri <value>现有元数据 URI
--json <value>JSON 元数据文件路径(需要 --image)
--image <value>图片文件路径
--description <value>NFT 描述
--attributes <value>"trait:value,trait:value" 格式的属性
--animation <value>动画/视频文件路径
--project-url <value>外部项目 URL
--symbol <value>链上符号
--royalties <value>显式叶子版税 %(0–100,允许小数,例如 7.5)。退出集合继承
--inherit-royalties存储继承哨兵 65535 和空叶子创作者。需要带 Royalties 插件的 --collection。当集合有 Royalties 且省略 --royalties、--creator 和 JSON seller_fee_basis_points 时为默认
--creator <address>:<share>叶子分成(可重复;份额合计须为 100)。显式叶子铸造时默认是付款者 100%。即使省略 --royalties 也会退出继承。不能与 --inherit-royalties 同时使用
--collection <value>Core 集合地址(必须有 BubblegumV2)。Metaplex Core 集合
--owner <value>叶子所有者公钥(默认为付款者)

全局标志

标志描述
-c, --config <value>配置文件路径。默认为 ~/.config/mplx/config.json
-k, --keypair <value>密钥对文件或 Ledger 路径(例如:usb://ledger?key=0)
-r, --rpc <value>集群的 RPC URL
--json以 JSON 格式输出

示例

  1. 使用向导创建:
mplx bg nft create --wizard
  1. 使用向导指定特定树创建:
mplx bg nft create my-tree --wizard
  1. 使用现有元数据 URI 创建:
mplx bg nft create my-tree --name "My NFT" --uri "https://arweave.net/xxx"
  1. 使用本地文件创建:
mplx bg nft create my-tree --image ./artwork.png --json ./metadata.json
  1. 使用元数据标志创建:
mplx bg nft create my-tree \
--name "Cool NFT #1" \
--image ./nft.png \
--description "一个非常酷的压缩 NFT" \
--attributes "Background:Blue,Eyes:Laser,Hat:Crown" \
--royalties 5
  1. 在集合中创建(集合有 Royalties 插件时自动继承):
mplx bg nft create my-tree \
--name "Collection Item #1" \
--image ./nft.png \
--collection 7kPqYxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  1. 强制从集合 Royalties 插件继承:
mplx bg nft create my-tree \
--name "Inherited cNFT" \
--uri "https://arweave.net/xxx" \
--collection 7kPqYxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
--inherit-royalties
  1. 显式叶子版税与创作者分成(退出继承):
mplx bg nft create my-tree \
--name "Split cNFT" \
--uri "https://arweave.net/xxx" \
--collection 7kPqYxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
--royalties 7.5 \
--creator Addr111111111111111111111111111111111111111:60 \
--creator Addr222222222222222222222222222222222222222:40

输出

Uploading image... ✓
Uploading metadata... ✓
Creating compressed NFT... ✓
--------------------------------
Compressed NFT Created!
Tree: my-tree
Owner: YourWalletAddressHere
Asset ID: CNFTAssetIdHere
Royalties: inherited (leaf sentinel 65535)
Signature: 5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Explorer: https://solscan.io/tx/5xxx...
--------------------------------

元数据 JSON 格式

使用 --json 时,您的元数据文件应遵循以下结构:

{
"name": "My NFT",
"symbol": "MNFT",
"description": "NFT 描述",
"seller_fee_basis_points": 500,
"attributes": [
{ "trait_type": "Background", "value": "Blue" },
{ "trait_type": "Rarity", "value": "Rare" }
],
"properties": {
"files": [
{ "uri": "", "type": "image/png" }
]
}
}

image 字段将自动填充上传的图片 URI。

如果设置了 seller_fee_basis_points,CLI 会将其视为显式叶子费率,不会从集合继承。

继承版税

铸造到带有 Royalties 插件 的 Core 集合时,CLI 可以存储继承哨兵(65535)和空叶子创作者,而不是把集合费率复制到每个 cNFT。DAS 会解析集合费率用于展示。参见读取继承版税。

mplx bg collection create \
--name "My Compressed Collection" \
--uri "https://example.com/collection.json" \
--royalties 5
意图标志
自动继承--collection <COL>,并省略 --royalties、--creator 和 JSON seller_fee_basis_points
强制继承--collection <COL> --inherit-royalties
显式叶子费率--royalties <0-100>(允许小数)。退出继承
显式分成--creator <ADDR>:<share>(可重复;合计 100)。即使没有 --royalties 也会退出继承(叶子费率则为 0%)

--inherit-royalties 需要带 Royalties 插件的 --collection,且不能与 --royalties、--creator 或 JSON seller_fee_basis_points 同时使用。仅用 mplx core collection create 不够——集合需要 BubblegumV2(若要继承还需要 Royalties)。

注意事项

  • 树参数可以是已保存的树名称或公钥地址
  • 如果树是私有的,您必须是树权限才能铸造
  • 如果树是公开的,任何人都可以铸造 NFT
  • RPC 必须支持 DAS API
  • 仅限 Bubblegum V2 - 这些命令适用于 Bubblegum V2 树,并使用 Metaplex Core 集合(不是 Token Metadata 集合)
  • 属性格式:"trait:value,trait:value" - 冒号分隔 trait 和 value,逗号分隔对
  • 所选集合有 Royalties 插件时,向导会提供继承与显式版税两种选择