SPL Token CLI Referansı

spl-token komut satırı arayüzü; mint'leri, token account'ları, yetkilileri, transferleri ve Token-2022 uzantılarını oluşturur ve yönetir.

Bu referans, Agave v4.2.1 ile birlikte gelen spl-token-cli v5.6.1 sürümünü temel alır. Kurulu sürümünüzde kullanılabilen tam seçenekleri görmek için spl-token --version komutunu çalıştırın ve <command> --help kullanın.

Mint oluşturma, transferler, yetki değişiklikleri, yakma (burn), dondurma ve account kapatma işlemleri transaction gönderir. Bir komutu çalıştırmadan önce cluster'ı, Token Program'ı, imzalayanı ve adresleri doğrulayın. Mainnet üzerindeki değişiklikler gerçek varlıkları etkiler.

Kurulum ve yardım alma

Agave CLI sürüm paketi spl-token içerir. Kurulu değilse yayımlanmış Rust crate'ini kullanın:

cargo install spl-token-cli --version 5.6.1
spl-token --version

Yardımı kök düzeyde veya komut düzeyinde görüntüleyin:

spl-token --help
spl-token create-token --help
spl-token transfer --help

Genel seçenekler

Genel seçenekleri komuttan önce yazın.

SeçenekAmaç
-u, --url <URL_OR_MONIKER>Bir RPC URL'si veya mainnet-beta, testnet, devnet ya da localhost seçin.
-C, --config <PATH>Farklı bir Solana CLI yapılandırma dosyası kullanın.
--fee-payer <KEYPAIR>Transaction ücretlerini ödeyecek account'u seçin.
-p, --program-id <ADDRESS>Açıkça belirtilen bir Token Program ID'si kullanın.
--program-2022Token-2022 kullanın (TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb).
--output <FORMAT>Desteklenen yerlerde json veya json-compact biçiminde çıktı döndürür.
--with-compute-unit-limit <UNITS>Transaction compute unit sınırını belirleyin.
--with-compute-unit-price <MICRO_LAMPORTS>Compute unit başına öncelik ücretini belirleyin.
-v, --verboseEk çıktı gösterir.
-V, --versionKurulu CLI sürümünü yazdırır.

Varsayılan program, orijinal Token Program'dır. Bir Token-2022 mint'i veya account'u için, okurken de dahil olmak üzere, --program-2022 kullanın. Seçilen program verilen adrese sahip değilse komut başarısız olur.

Token oluşturma ve kullanma

Komutlar oluşturulan adresleri yazdırır. Sonraki komutlar için create-token tarafından döndürülen mint adresini kaydedin.

# Create a six-decimal mint under the original Token Program.
spl-token --url devnet create-token --decimals 6
# Create the default signer's associated token account for the mint.
spl-token --url devnet create-account <MINT_ADDRESS>
# Mint 100 tokens to that associated token account.
spl-token --url devnet mint <MINT_ADDRESS> 100
# Read supply, balance, and complete mint or account details.
spl-token --url devnet supply <MINT_ADDRESS>
spl-token --url devnet balance <MINT_ADDRESS>
spl-token --url devnet display <MINT_OR_TOKEN_ACCOUNT_ADDRESS>
# Transfer tokens to a wallet and create its associated account if needed.
spl-token --url devnet transfer \
<MINT_ADDRESS> \
10 \
<RECIPIENT_WALLET_ADDRESS> \
--fund-recipient

Tutarlar, mint'in ondalık basamaklarına göre ayarlanmış UI token tutarlarıdır. transfer, burn ve unwrap-sol gibi komutlar, yardım çıktılarında gösterilen yerlerde ALL değerini kabul eder.

Token-2022 mint'i oluşturma

Uzantılar ek mint veya account durumu ayırır ve genellikle mint oluşturulurken seçilmelidir. Bu örnek, gömülü metadata desteğine sahip altı ondalık basamaklı bir mint oluşturur:

spl-token --program-2022 create-token \
--decimals 6 \
--enable-metadata
spl-token --program-2022 initialize-metadata \
<MINT_ADDRESS> \
"Example Token" \
EXAMPLE \
https://example.com/token.json

Yaygın create-token uzantı seçenekleri şunlardır:

  • --enable-close
  • --enable-confidential-transfers auto|manual
  • --enable-freeze
  • --enable-group ve --enable-member
  • --enable-metadata
  • --enable-non-transferable
  • --enable-pause
  • --enable-permanent-delegate
  • --enable-permissioned-burn
  • --enable-transfer-hook veya --transfer-hook <PROGRAM_ID>
  • --interest-rate <BASIS_POINTS>
  • --transfer-fee-basis-points <BASIS_POINTS> ile birlikte --transfer-fee-maximum-fee <AMOUNT>
  • --ui-amount-multiplier <MULTIPLIER>

Yalnızca Token-2022 programının birlikte kullanılmasına izin verdiği uzantıları birleştirin. Geri alınamaz bir mint yapılandırması oluşturmadan önce ilgili Token-2022 uzantı kılavuzunu inceleyin.

Yetkilileri ve delegate'leri yönetme

# Change the mint authority.
spl-token authorize <MINT_ADDRESS> mint <NEW_AUTHORITY_ADDRESS>
# Permanently remove the mint authority.
spl-token authorize <MINT_ADDRESS> mint --disable
# Let a delegate spend up to 25 tokens from one token account.
spl-token approve \
<TOKEN_ACCOUNT_ADDRESS> \
25 \
<DELEGATE_ADDRESS>
# Remove the current delegate.
spl-token revoke <TOKEN_ACCOUNT_ADDRESS>

authorize; mint, freeze, owner, close ve uzantıya özgü yetki türlerini destekler. --disable ile bir yetkiyi kaldırmak, başka hiçbir program mekanizması onu geri getiremiyorsa kalıcıdır.

Dondurma, yakma ve kapatma

spl-token freeze <TOKEN_ACCOUNT_ADDRESS>
spl-token thaw <TOKEN_ACCOUNT_ADDRESS>
spl-token burn <TOKEN_ACCOUNT_ADDRESS> 5
# A token account must normally have a zero token balance before closing.
spl-token close --address <TOKEN_ACCOUNT_ADDRESS>

burn hem account bakiyesini hem de toplam arzı azaltır. close, account'taki kalan lamport'ları yapılandırılmış alıcıya iade eder; yakılan token'ları geri getirmez.

SOL wrap ve unwrap işlemleri

# Create or fund the owner's wrapped SOL token account.
spl-token wrap 1
# Unwrap part of the wrapped SOL balance.
spl-token unwrap-sol 0.25
# Close the wrapped SOL account and return its full lamport balance.
spl-token unwrap

Lamport'ları doğrudan wrapped SOL token account'una aktardıktan sonra, token tutarının alttaki lamport'larla eşleşmesi için sync-native kullanın.

Multisig ile imzalama

En fazla 11 üyeli bir M-of-N Token Program multisig'i oluşturun:

spl-token create-multisig \
2 \
<MEMBER_1_ADDRESS> \
<MEMBER_2_ADDRESS> \
<MEMBER_3_ADDRESS>

Bu multisig tarafından kontrol edilen bir transaction için multisig adresini ilgili yetkili olarak verin ve üye keypair'lerini tekrarlanan --multisig-signer değerleriyle sağlayın. Birincil yetkili bayrağı işleme göre değiştiği için hedef komutun yardımını kontrol edin.

Gizli bakiyeler

Gizli bakiye komutları, gizli transferler için yapılandırılmış bir Token-2022 mint'i ve yapılandırılmış bir alıcı account gerektirir.

spl-token --program-2022 configure-confidential-transfer-account \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 deposit-confidential-tokens \
<MINT_ADDRESS> \
10 \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 apply-pending-balance \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 withdraw-confidential-tokens \
<MINT_ADDRESS> \
5 \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 transfer \
<MINT_ADDRESS> \
1 \
<RECIPIENT_ADDRESS> \
--confidential

configure-confidential-transfer-account ve apply-pending-balance için --address <TOKEN_ACCOUNT_ADDRESS> veya konumsal <MINT_ADDRESS> değerinden yalnızca birini verin, ikisini birden değil. Konumsal biçim, sahibin associated token account'unu kullanır. Yatırma ve çekme işlemleri her zaman mint'i alır ve varsayılan account'u geçersiz kılmak için --address kabul eder.

Account'un hangi yatırmaları kabul edeceğini kontrol etmek için enable-confidential-credits, disable-confidential-credits, enable-non-confidential-credits ve disable-non-confidential-credits komutlarını kullanın. Bu ayarlar account gizliliğini ve ödeme uyumluluğunu etkiler; değiştirmeden önce account'u inceleyin.

Komut dizininin tamamı

Aşağıdaki dizin, spl-token-cli v5.6.1 içindeki tüm üst düzey komutları içerir.

KomutAçıklama
accountsBir cüzdanın sahip olduğu token account'ları listeler, isteğe bağlı olarak mint'e göre filtreler.
addressSeçilen cüzdan adresini veya associated token adresini yazdırır.
apply-pending-balanceBekleyen gizli token'ları kullanılabilir gizli bakiyeye taşır.
approveBir token account için delegate'i ve harcama limitini onaylar.
authorizeBir mint, account veya uzantı yetkilisini değiştirir ya da devre dışı bırakır.
balanceBir token account bakiyesini gösterir.
benchToken kıyaslama (benchmark) komutlarını çalıştırır.
burnBir account'taki token'ları yok eder ve mint arzını azaltır.
closeUygun bir token account'u kapatır ve lamport'larını geri alır.
close-mintclose-mint uzantısıyla yapılandırılmış bir Token-2022 mint'ini kapatır.
configure-confidential-transfer-accountBir account'u gizli transferleri kullanacak şekilde yapılandırır.
create-accountBir associated veya yardımcı token account oluşturur.
create-multisigM-of-N Token Program multisig'i oluşturur.
create-tokenİsteğe bağlı olarak Token-2022 uzantılarıyla bir mint oluşturur.
deposit-confidential-tokensGizli olmayan token'ları bekleyen gizli bakiyeye taşır.
disable-confidential-creditsBir account için gelen gizli transferleri reddeder.
disable-cpi-guardBir account için CPI Guard'ı devre dışı bırakır.
disable-non-confidential-creditsGizli bir account için gelen gizli olmayan transferleri reddeder.
disable-required-transfer-memosGelen transferlerde memo bulunması zorunluluğunu kaldırır.
displayMint, token account veya multisig ayrıntılarının tamamını gösterir.
enable-confidential-creditsYapılandırılmış bir account için gelen gizli transferleri kabul eder.
enable-cpi-guardCPI üzerinden çağrıldığında seçili token işlemlerini kısıtlar.
enable-non-confidential-creditsGizli bir account için gelen gizli olmayan transferleri kabul eder.
enable-required-transfer-memosGelen transferlerin memo içermesini zorunlu kılar.
freezeMint'in freeze yetkilisini kullanarak bir token account'u dondurur.
gcGereksiz token account'ları kapatır ve mümkün olduğunda bakiyeleri birleştirir.
helpKök veya komut yardımını yazdırır.
initialize-groupBir mint için Token-2022 grup yapılandırmasını başlatır.
initialize-memberBir Token-2022 mint'ini grup üyesi olarak ekler.
initialize-metadataGömülü Token-2022 metadata'sını başlatır.
mintMint yetkilisini kullanarak yeni token birimleri oluşturur.
pauseDuraklatılabilir bir Token-2022 mint'i için mint, burn ve transfer işlemlerini duraklatır.
resumeDuraklatılmış bir Token-2022 mint'i için işlemleri sürdürür.
revokeBir token account delegate'ini kaldırır.
set-interest-rateFaiz getiren bir mint'in oranını günceller.
set-transfer-feeYeni transfer ücreti parametrelerini planlar.
set-transfer-hookBir mint'in transfer hook program ID'sini değiştirir.
supplyBir mint'in toplam arzını gösterir.
sync-nativeWrapped SOL account tutarını lamport'larıyla senkronize eder.
thawDondurulmuş bir token account'un dondurmasını kaldırır.
transferToken'ları bir token account'a veya cüzdana aktarır.
unwrapBir wrapped SOL account'u kapatır ve tüm lamport'ları geri alır.
unwrap-solBir wrapped SOL account'tan SOL'ün bir kısmını veya tamamını çıkarır.
update-confidential-transfer-settingsBir mint için gizli transfer onayı veya denetçi ayarlarını günceller.
update-default-account-stateBir mint'in yeni token account'lar için varsayılan durumunu değiştirir.
update-group-addressBir mint'in grup işaretçisi adresini değiştirir.
update-group-max-sizeBir token grubunun azami üye sayısını değiştirir.
update-member-addressBir mint'in grup üyesi işaretçisi adresini değiştirir.
update-metadataGömülü metadata alanlarını değiştirir veya kaldırır.
update-metadata-addressBir mint'in metadata işaretçisi adresini değiştirir.
update-ui-amount-multiplierYeni bir ölçeklenmiş UI tutarı çarpanı planlar.
withdraw-confidential-tokensGizli token'ları gizli olmayan bakiyeye geri taşır.
withdraw-excess-lamportsBir Token Program account'unda kira muafiyeti bakiyesinin üzerindeki lamport'ları çeker.
withdraw-withheld-tokensToken account'larda veya mint'te tutulan transfer ücretlerini toplar.
wrapSOL'ü bir native mint token account'unda wrap eder.

Yapılandırılmış ve çevrimdışı imzalama

Görüntü metnini ayrıştırmak yerine yapılandırılmış çıktıyı kullanın:

spl-token accounts --output json
spl-token display <MINT_ADDRESS> --output json-compact

Transaction üreten komutlar genellikle --sign-only, --blockhash, --signer <PUBKEY=SIGNATURE>, --nonce ve --nonce-authority seçeneklerini destekler. Gereken çevrimdışı girdiler komuta, mint ondalık basamaklarına ve yetki düzenine bağlıdır; bu nedenle imzasız mesajı ilgili komutun --help talimatlarına göre oluşturun ve imzaları toplamadan önce her adresi doğrulayın.

Is this page helpful?

© 2026 Solana Vakfı. Tüm hakları saklıdır.