紹介

はじめに

Last updated January 31, 2026

構築を始める前に Genesis のトークンローンチフローを理解しましょう。このガイドでは、初期化から配布までの各ステップを説明し、ローンチの計画を支援します。

構築の準備はできましたか?

フローを理解したら:

  • JavaScript SDK - インストールと関数リファレンス
  • Launch Pool - 比例配分の完全チュートリアル
  • Presale - 固定価格販売の完全チュートリアル

Genesis フロー

すべての Genesis ローンチは以下のライフサイクルに従います:

┌─────────────────────────────────────────────────────────────────┐
│ 1. 初期化 │
│ Genesis Account 作成 → トークン発行 → エスクローで供給量保持 │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 2. BUCKET の追加 │
│ 配布設定(Launch Pool、Presale、トレジャリー) │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 3. ファイナライズ │
│ 設定のロック → 時間条件の有効化 │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 4. 入金期間 │
│ ユーザーが bucket タイプに基づいて SOL を入金 │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 5. トランジション │
│ 終了動作の実行 → トレジャリーへの資金ルーティング │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 6. 請求期間 │
│ ユーザーがトークンを請求 → チームが調達資金を請求 │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 7. ローンチ後(オプション) │
│ セキュリティのためにミント/フリーズ権限を取り消し │
└─────────────────────────────────────────────────────────────────┘

ステップ 1:初期化

何が起こるか: Genesis Account を作成し、トークンを発行して全供給量をエスクローで保持します。

指定する内容:

  • トークンメタデータ(名前、シンボル、URI)
  • 総供給量(小数点付き)
  • Quote トークン(通常は wSOL)

結果: 新しい SPL トークンが作成され、配布まで Genesis Account によって管理されます。

トークン供給量の計画

SPL トークンはデフォルトで 9 桁の小数を使用します:

希望する供給量9 桁の小数を含む場合
1 トークン1,000,000,000
1,000 トークン1,000,000,000,000
100 万トークン1,000,000,000,000,000
10 億トークン1,000,000,000,000,000,000

重要: 総供給量はすべての bucket 割り当ての合計と一致する必要があります。

ステップ 2:Bucket の追加

何が起こるか: bucket を追加してトークンの配布方法を設定します。

Bucket タイプ

Bucketタイプ目的
Launch PoolInflow入金額に基づく比例配分
PresaleInflow上限付きの固定価格販売
UnlockedOutflow調達資金を受け取るトレジャリー

設定例

一般的なローンチでは以下を使用します:

  1. Inflow bucket(Launch Pool または Presale) - 参加者から SOL を収集
  2. Outflow bucket(Unlocked) - チーム/トレジャリー用に収集した SOL を受け取る
トークン割り当て例(100万トークン):
├── Launch Pool: 800,000 トークン(80%)
└── Unlocked: 200,000 トークン(20% チーム割り当て)
資金フロー:
ユーザーが SOL を入金 → Launch Pool → 終了動作 → Unlocked Bucket → チームが請求

時間条件

各 bucket には 4 つの時間条件があります:

条件制御内容
入金開始ユーザーが入金を開始できるタイミング
入金終了入金が締め切られるタイミング
請求開始ユーザーがトークンを請求できるタイミング
請求終了請求が締め切られるタイミング

Unix タイムスタンプ(ミリ秒ではなく秒)を使用してください。

ステップ 3:ファイナライズ

何が起こるか: 設定が永続的にロックされます。時間条件に基づいてローンチがアクティブになります。

ファイナライズ前と後の比較

bucket を追加可能bucket の追加不可
設定を変更可能設定がロック
ローンチ非アクティブローンチアクティブ(時間条件に準拠)

ファイナライズは元に戻せません。 ファイナライズ前に bucket の割り当て、時間条件、終了動作を十分に確認してください。

ステップ 4:入金期間

何が起こるか: ユーザーが Inflow bucket に SOL を入金します。

  • Launch Pool: ユーザーが SOL を入金し、2% の手数料で引き出し可能
  • Presale: ユーザーが固定価格で SOL を入金(ユーザーごとの入金上限(各ユーザーが貢献できる最大額)あり)

すべての入金には 2% のプロトコル手数料が適用されます。

ステップ 5:トランジション

何が起こるか: 入金が締め切られた後、終了動作を実行して資金をルーティングします。

一般的な終了動作:収集した SOL の 100% を Unlocked bucket(トレジャリー)に送信。

複数の送信先に資金を分割できます:

  • 80% をトレジャリーへ
  • 20% を流動性プール bucket へ

ステップ 6:請求期間

何が起こるか:

  • ユーザーが入金額に基づいてトークンを請求
  • チームが Unlocked bucket から調達した SOL を請求

トークン配布

Launch Pool: userTokens = (userDeposit / totalDeposits) × bucketAllocation

Presale: userTokens = userDeposit / pricePerToken

ステップ 7:ローンチ後(オプション)

何が起こるか: セキュリティのためにトークン権限を取り消します。

  • ミント権限 - 取り消すと、新しいトークンの発行が永久に不可能になります
  • フリーズ権限 - 取り消すと、トークンのフリーズが永久に不可能になります

これにより、ホルダーやラグチェッカーに対してトークン供給量が固定されていることを示します。

権限の取り消しは元に戻せません。ローンチが完了した場合のみ実行してください。

よくあるエラー

エラー原因解決策
already finalizedファイナライズ後に変更を試みた新しい Genesis Account を作成
invalid total supplybucket の割り当てが供給量と一致しない割り当ての合計が総供給量と一致するようにする
time conditions overlapタイムスタンプが競合している連続的な時間ウィンドウを使用する
deposit period not active入金ウィンドウ外タイムスタンプを確認する

計画チェックリスト

構築を始める前に:

  • [ ] ローンチメカニズムの決定(Launch Pool vs Presale)
  • [ ] 小数点付きの総トークン供給量の計算
  • [ ] bucket 割り当ての計画(合計が総供給量と一致する必要あり)
  • [ ] 時間ウィンドウの設定(入金開始/終了、請求開始/終了)
  • [ ] 終了動作の決定(資金の送信先)
  • [ ] トークンメタデータの準備(名前、シンボル、画像 URI)

FAQ

Genesis Account を初期化すると何が作成されますか?

メタデータ付きの新しい SPL トークン、マスター調整アカウント(Genesis Account PDA)が作成され、配布用にエスクローで保持される総供給量が発行されます。

ファイナライズ後にさらに bucket を追加できますか?

いいえ。ファイナライズは永続的です。bucket を追加したり設定を変更したりすることはできません。ファイナライズ前に完全な bucket 構造を計画してください。

Inflow bucket と Outflow bucket の違いは何ですか?

Inflow bucket はユーザーから SOL を収集します(Launch Pool、Presale)。Outflow bucket は終了動作を通じてトークンまたは SOL を受け取ります。通常はチーム/トレジャリーの請求用の Unlocked Bucket です。

ローンチはいつアクティブになりますか?

ファイナライズ後、bucket の時間条件に基づいてローンチがアクティブになります。現在の時刻が bucket の入金ウィンドウ内にある場合、ユーザーは参加できます。

小数点付きのトークン供給量はどのように計算しますか?

希望する供給量に 10^decimals を掛けます。9 桁の小数で 100 万トークンの場合:1,000,000 x 1,000,000,000 = 1,000,000,000,000,000。

SOL 以外のトークンを入金に使用できますか?

はい。quoteMint を任意の SPL トークンに設定できます。ただし、SOL 建てのローンチでは wSOL が標準です。

用語集

用語定義
Genesis Accountローンチを調整しトークンを保持する PDA
Inflow Bucketユーザーからの入金を収集する bucket
Outflow Bucket終了動作を通じて資金を受け取る bucket
ファイナライズ設定をロックしてローンチを有効化する
時間条件bucket のフェーズを制御する Unix タイムスタンプ
終了動作入金期間終了時に実行される自動アクション
トランジション終了動作を実行するインストラクション
Quote トークンユーザーが入金するトークン(通常は wSOL)

次のステップ

構築の準備はできましたか?ローンチタイプを選択してください:

  1. JavaScript SDK - インストールと設定
  2. Launch Pool チュートリアル - 比例配分
  3. Presale チュートリアル - 固定価格販売
Previous
概要