sui-overview について
Sui のネットワークモデルを学ぶ人やアプリケーション構成を計画する人向けに、Sui と Sui Stack の概念を紹介するリファレンススキルです。オブジェクト中心のモデル、Move のリソース安全性、プログラマブルトランザクションブロックを扱います。
主な機能
- 01オブジェクトの所有権と状態モデルを説明
- 02Move のリソース安全性を紹介
- 03プログラマブルトランザクションブロックを解説
- 04テーマ別にエコシステム資料へ案内
活用シーン
- 01Sui の基本概念を説明
- 02他のブロックチェーンモデルと比較
- 03アプリケーション構成に使う Sui Stack の要素を選定
- 04オブジェクトの所有権がトランザクション実行に与える影響を理解
MCP 対応
最新情報の確認やガイドにない詳細の調査には、Sui ドキュメント MCP サーバーへの問い合わせを推奨しています。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mystenlabs/ skills --skill sui-overviewインストール後、Claude Code で/sui-overviewを入力して読み込まれたか確認します。
同梱ファイルecosystem.mdevals/evals.json
詳細
Sui の概要
MCP ツール: 利用可能な場合は、最新の回答を得るために Sui ドキュメントの MCP サーバー(
https://sui.mcp.kapa.ai)にも問い合わせてください。検証や、これらのリファレンスファイルで扱われていない詳細の確認に使用してください。
ソースの制約: このスキルの情報はすべて、docs.sui.io、docs.wal.app、move-book.com のみを情報源としています。このスキルを拡張または更新する際は、この3つの情報源だけを参照してください。サードパーティーのブログ、チュートリアル、非公式ドキュメントは使用しないでください。
Sui は、オブジェクト中心のデータモデルを基盤とする、スケーラブルで高性能なレイヤー1ブロックチェーンです。アカウントベースのブロックチェーン(Ethereum)や UTXO ベースのチェーン(Bitcoin)とは異なり、Sui ではオンチェーン状態のすべてが一意の ID を持つ型付きオブジェクトとして扱われます。トランザクションはオブジェクトを入力として消費し、変更後のバージョンを出力として生成します。
このスキルでは、Sui とより広範な Sui Stack の概念的な基盤について説明します。実装の詳細については、sui-move、frontend-apps、sui-networks-gas の各スキルを参照してください。
リファレンスファイル
ecosystem — Sui Stack とエコシステム
パス: ecosystem.md
読み込むタイミング: ユーザーが Sui Stack のプリミティブ(randomness、zkLogin、Walrus、Nautilus、DeepBook、Kiosk、Seal)、ユースケース、またはコンポーネントがエンドツーエンドのワークフローでどのように連携するかについて尋ねた場合。
内容: 詳細な説明と利用ガイダンスを含むすべての Sui Stack プリミティブ、適切なプリミティブを選ぶための判断表、ユースケース(DeFi、ゲーム、NFT、アイデンティティ、ソーシャル、サプライチェーン)、レイヤー化された開発ワークフロー。
振り分けガイド
| タスク | 読み込むファイル |
|---|---|
| Sui とは何かを説明する | SKILL.md のみ |
| Sui と Ethereum または Solana を比較する | SKILL.md のみ |
| Sui Stack のプリミティブを選ぶ | ecosystem |
| Sui のユースケースを理解する | ecosystem |
| Sui 上のアプリのアーキテクチャを計画する | ecosystem |
オブジェクト中心のモデル
Sui ネットワーク上のすべてのアイテムは、一意の ID とバージョン番号を持つオブジェクトです。トランザクションがオブジェクトを変更すると、元の ID を維持したまま、バージョン番号をインクリメントした新しいバージョンが生成されます。
オブジェクトには、次の5種類の所有権があります。
- アドレス所有: 所有するアドレスのみがオブジェクトを使用できます。コンセンサスなしでの並列実行を可能にします。
- 共有: 任意のアドレスがオブジェクトを使用できます。Mysticeti によるコンセンサス順序付けが必要です。
- 不変(凍結): 誰でも読み取れますが、変更できる人はいません。永続的で、取り消しできません。
- ラップ済み: 別のオブジェクトのフィールド内に格納されます。親オブジェクトを通じてのみアクセスできます。
- コンセンサス・アドレス所有(Party Objects): 特定のアドレスに所有されますが、アクセスにはコンセンサスが必要です。Party Objects は、アドレス所有オブジェクトのアクセス制御と共有オブジェクトのコンセンサス順序付けを組み合わせています。これにより、指定された当事者のみがオブジェクトを変更できる一方、それを含む並行トランザクションはコンセンサスを通じて順序付けられる、制御された共有状態などのユースケースが可能になります。
この所有権モデルにより、Sui の並列実行が実現します。重複しない所有オブジェクトに対するトランザクションは、コンセンサスなしで並列実行されます。たとえば、アドレス間のコイン転送、シングルプレイヤーゲームのアクション、個人資産の管理は、いずれも所有オブジェクト上で行われ、並行して実行できます。Mysticeti のコンセンサス順序付けを経由するのは、共有オブジェクトに対するトランザクション(DEX プールや共有マーケットプレイスとのやり取りなど)のみです。
Solidity ではなく Move
Sui は Solidity ではなく、Move プログラミング言語を使用します。Move はコンパイル時にリソースの安全性を保証し、オブジェクトの複製や暗黙の破棄を防ぎます。これは、不正利用を実行時に防ぐために EVM がガスベースの価格設定を用いる Ethereum の手法とは根本的に異なります。Move では、不正なリソース処理は実行時のコストではなく、コンパイルエラーになります。Ethereum の開発者は、ガスを安全対策とする考え方を改める必要があります。Sui では、コードが実行される前にコンパイラーがリソースの誤用を防ぎます。
プログラム可能なトランザクションブロック
プログラム可能なトランザクションブロック(PTB)は、複数のコマンドを1つのアトミックなトランザクションにまとめます。1つのトランザクション内で複数のMove関数を呼び出し、その結果を相互に渡し、コインを分割・結合し、オブジェクトを転送できます。この合成可能性により、他のチェーンで一般的な複数トランザクションにまたがるワークフローが不要になります。
Ethereumとの主な違い
| 概念 | Ethereum | Sui |
|---|---|---|
| データモデル | コントラクトのストレージマッピングを備えたアカウントベース | 型付きの所有オブジェクトを中心とするモデル |
| スマートコントラクト言語 | Solidity(EVMバイトコード) | Move(コンパイル時のリソース安全性) |
| 状態の保存 | コントラクトのストレージスロットにある共有グローバル状態 | 一意のIDと所有権を持つ個別のオブジェクト |
| トランザクションの構成 | 個別のトランザクションまたは内部呼び出し | PTBが複数の操作をアトミックにまとめる |
| 並列実行 | すべてのトランザクションを順次実行 | 所有オブジェクトを使うトランザクションを並列実行 |
| 安全性モデル | ガスベースのランタイム不正利用防止 | コンパイル時のリソース安全性の保証 |
ルール
- Suiの説明は常に、基盤となる概念であるオブジェクト中心のモデルを軸にしてください。
- Ethereumと比較する際は、共有状態を持つコントラクトから、個別に所有されるオブジェクトへの移行を強調してください。
- Suiを「EVMチェーンの1つにすぎない」と説明しないでください。プログラミングモデルは根本的に異なります。
- Sui Stackのコンポーネント(Walrus、zkLogin、DeepBook、Kiosk、Seal、Nautilus、Randomness)は、サードパーティ製のアドオンではなく、ネイティブプリミティブです。
- Sui Stackについて説明する際は、それによって実現できる具体的なユースケースを必ず含めてください。DeFi、ゲーム、NFT、アイデンティティ、ソーシャル、サプライチェーンのカテゴリーから、少なくとも3つの異なるカテゴリーを取り上げてください。
ecosystem.mdのユースケースのセクションを参照してください。