Weekly Docs Report

docs.sui.io Analytics

2026-04-13 to 2026-04-19 · Plausible + Kapa · Run 20260420T151926Z

Executive Summary

Kapa Questions
657
Themes Identified
7
Visitors (7d)
4,143
Represents roughly 44% of the 14-day total (9,471), suggesting stable week-over-week traffic with slight growth in the more recent week.
Pageviews (7d)
12,702
Averages ~1,814 pageviews/day, with a notable dip on weekends (Apr 18–19 combined: 2,279 vs weekday avg ~2,193/day).
Bounce Rate (7d)
63%
High bounce rate indicates many visitors find a single page and leave; consistent across 7d, 14d, and 30d windows (63–66%), suggesting a structural pattern rather than a temporary spike.
Views Per Visit (7d)
2.73
Slightly higher than the 14d (2.54) and 30d (2.55) averages, suggesting the most recent week had marginally more engaged visitors.
Avg Visit Duration (7d)
164 seconds
Roughly on par with 14d (166s) and 30d (158s) averages, indicating consistent engagement depth over time.
Weekend Traffic Drop
~35% fewer visitors
Apr 18 (448) and Apr 19 (472) saw significantly fewer visitors than weekdays (617–704), confirming a developer-audience weekday usage pattern.
Sui docs received 4,143 unique visitors and 12,702 pageviews this week, with API migration (JSON-RPC to gRPC/GraphQL) and Move smart contract patterns dominating developer questions. Duplicate onboarding paths, high bounce rates on key tutorial pages, and the July 31, 2026 JSON-RPC deprecation deadline represent the most urgent documentation gaps to address.

Traffic Overview

docs.sui.io saw 4,143 unique visitors and 12,702 pageviews over the 7-day period Apr 13–19, 2026. Traffic is dominated by getting-started and installation content, with strong organic search and direct traffic. Weekday traffic significantly outpaces weekends. AI chatbot referrals (ChatGPT, Claude) are a small but notable emerging source. Engagement is moderate with 2.73 views/visit and an average session duration of ~2.7 minutes.

Consistent weekday-to-weekend traffic drop

Weekday visitors ranged 617–704/day (Apr 13–17) while weekend days dropped to 448–472 (Apr 18–19), a ~35% decline confirming a professional developer audience with work-week usage patterns.

Parallel new and legacy onboarding paths both active

The new /getting-started/onboarding/sui-install (290 visitors) and legacy /guides/developer/getting-started/sui-install (246 visitors) are nearly equally trafficked, suggesting a significant portion of users have not migrated to the new docs structure. Combined they represent the #1 content destination after the homepage.

AI chatbot referrals emerging as a new channel

ChatGPT (32 visitors) and Claude (8 visitors) together account for ~40 referrals in 7 days with reasonable engagement metrics. As LLMs increasingly cite and link to documentation, this channel is likely to grow and should be monitored for content accuracy and SEO alignment.

DeepBook content shows high engagement signals

/onchain-finance/deepbookv3/deepbook has a 16% bounce rate and 66s on page, and deepbook.tech is the 5th-largest referral source with 228s avg session — among the highest of all sources. This indicates an active and engaged DeepBook developer segment.

High bounce rates on key tutorial pages

/getting-started/onboarding/hello-world (69% bounce), /guides/developer/digital-assets/migrate-address-balances (72%), /concepts (71%), and /guides/developer/transactions/ptbs/prog-txn-blocks (72%) all show high abandonment. These pages may benefit from clearer next-step CTAs or improved content depth to retain readers.

Google drives the highest-quality organic traffic

Google referrals show the longest average session duration (195s) among external sources and a 57% bounce rate, making it the most valuable acquisition channel. Investing in SEO for high-traffic pages like install guides and API references could yield meaningful visitor growth.

Top 20 Pages

# Page Insight
1 / Top page with 1,109 visitors and 1,470 pageviews; low 22% bounce rate and 69s avg time suggest it serves as an effective entry hub routing users deeper into the docs.
2 /getting-started/onboarding/sui-install 290 visitors, 365 pageviews; the new onboarding path install page is the #2 most visited, showing strong demand for installation guidance.
3 /guides/developer/getting-started/sui-install 246 visitors, 313 pageviews; the legacy install guide still attracts nearly as much traffic as the new onboarding equivalent, indicating users arrive via both paths.
4 /sui-api-ref 137 visitors, 243 pageviews; high pageview-to-visitor ratio suggests developers revisit or browse multiple API reference sections per session.
5 /references/fullnode-protocol 97 visitors, 180 pageviews; low 28% bounce rate and strong pageviews indicate node operators are deeply engaging with this reference content.
6 /guides 133 visitors, 169 pageviews; very low 11% bounce rate signals this serves as a successful navigation hub for developers exploring guides.
7 /getting-started/onboarding 126 visitors, 142 pageviews; 7% bounce rate — the lowest among top pages — confirms this is a strong funnel entry that retains users effectively.
8 /getting-started/onboarding/hello-world 94 visitors, 138 pageviews; 69% bounce rate is notably high for a tutorial page, suggesting some users drop off after the hello world exercise.
9 /getting-started/onboarding/get-coins 97 visitors, 137 pageviews; 41% bounce rate and 58s time on page indicate solid engagement in the onboarding funnel step.
10 /references/sui-api 98 visitors, 130 pageviews; consistent API reference demand alongside /sui-api-ref reflects developers actively consulting API docs.
11 /concepts/sui-move-concepts 89 visitors, 118 pageviews; 45% bounce rate and 61s on page show moderate engagement with Move conceptual content.
12 /getting-started/tooling 68 visitors, 114 pageviews; high pageview-to-visitor ratio suggests users browse multiple tooling pages per session.
13 /getting-started 75 visitors, 113 pageviews; 7% bounce rate mirrors the onboarding hub pattern — a strong retention entry point.
14 /guides/developer/digital-assets/migrate-address-balances 49 visitors, 111 pageviews; very high 72% bounce rate and high pageviews suggest a specific task-driven audience arriving for migration info and leaving after reading.
15 /guides/developer/getting-started/configure-sui-client 71 visitors, 111 pageviews; 31% bounce rate and 60s on page indicate solid engagement within the getting-started developer funnel.
16 /guides/developer/getting-started/hello-world 92 visitors, 110 pageviews; the legacy hello world page still draws significant traffic alongside the new onboarding equivalent.
17 /onchain-finance/deepbookv3/deepbook 79 visitors, 108 pageviews; 16% bounce rate and 66s on page show high engagement, reflecting active DeepBook developer interest.
18 /develop/sui-architecture/tokenomics-overview 94 visitors, 107 pageviews; 53% bounce rate suggests users read this overview and don't explore further, treating it as a standalone reference.
19 /concepts 66 visitors, 100 pageviews; 71% bounce rate is high for a navigation hub, suggesting the concepts index may not be effectively routing users to deeper content.
20 /concepts/data-access/grpc 75 visitors, 98 pageviews; 18% bounce rate and 43s on page indicate developers are actively exploring gRPC data access documentation.

Referral Sources

Source Type Insight
Direct / None Organic Largest source at 1,985 visitors (48% of total); 69% bounce rate and 147s duration suggest a mix of returning users and bookmarked links.
Google Organic 1,097 visitors (26% of total); 57% bounce rate and 195s duration — the highest avg session time among major sources, indicating high-intent organic search traffic.
sui.io Organic 479 visitors from the main Sui website; strong internal referral showing effective cross-linking between the main site and docs.
Bing Organic 193 visitors; notably high 77% bounce rate but relatively short 102s duration suggests less targeted search intent vs. Google.
deepbook.tech Organic 85 visitors with low 44% bounce rate and highest duration at 228s, indicating DeepBook developers arriving with specific, deep documentation needs.
docs.sui.io Organic 77 self-referrals (internal navigation); 56% bounce rate and 390s duration — the long session time reflects users in deep reading sessions.
blog.sui.io Organic 45 visitors from the Sui blog; 71% bounce rate suggests blog readers sample docs but don't explore deeply.
GitHub Organic 34 visitors with low 58% bounce rate and long 269s duration; developers arriving from GitHub repos are highly engaged.
chatgpt.com AI / Chatbot 32 visitors referred by ChatGPT; 65% bounce rate and 144s duration. AI assistant referrals are a small but growing traffic vector worth monitoring.
Baidu Organic 24 visitors with 100% bounce rate and 0s duration — likely bot traffic or a tracking/rendering issue; warrants investigation.
Facebook Organic 22 visitors with a very long 528s duration despite 50% bounce rate, suggesting engaged social referrals from shared links.
DuckDuckGo Organic 22 visitors; 55% bounce rate and 150s duration consistent with typical organic search behavior.
suiplay.sui.io Organic 18 visitors from the SuiPlay platform; indicates cross-ecosystem traffic from gaming/consumer product users exploring developer docs.
Twitter Organic 13 visitors; 85% bounce rate and only 2s duration suggests Twitter link clicks are largely low-intent or link previews.
luma Organic 10 visitors from Luma (event platform) with 460s avg duration — event attendees spending significant time in docs, likely following up on workshop content.
claude.ai AI / Chatbot 8 visitors referred by Claude AI; alongside ChatGPT (32 visitors), AI assistants collectively drive ~40 visitors, signaling an emerging referral channel from LLM tools.
evefrontier.com Organic 9 visitors from Eve Frontier (a Sui-based game); cross-referral from gaming ecosystem projects reflects growing developer interest from game builders.
Yandex Organic 10 visitors with 80% bounce rate and 42s duration; limited Russian-speaking audience engagement.
docs.iota.org Organic 4 visitors from IOTA docs; indicates cross-chain developer exploration between Sui and IOTA ecosystems.
Slack Organic 4 visitors from Slack; community-shared links driving small but direct developer traffic.

chatgpt.com

32 visitors with 65% bounce rate and 144s duration; largest AI referral source suggesting ChatGPT increasingly cites Sui docs, warranting content accuracy monitoring for gRPC migration material.

claude.ai

8 visitors referred by Claude AI; alongside ChatGPT totals ~40 AI-referred visitors this week, a nascent but growing channel as LLMs are queried about Sui development.

Top 10 Referrer URLs

Exact referring URL or domain and the number of visits driven from each. Direct (no referrer) is excluded.

Referrer Visitors Pageviews
google.com 1060 3442
sui.io 479 1612
bing.com 191 299
deepbook.tech 85 331
blog.sui.io/announcing-move-registry-interoperability 34 56
chatgpt.com 25 72
duckduckgo.com 22 50
google.com.hk 20 22
suiplay.sui.io 18 36
l.facebook.com 18 121

Page ↔ Kapa Theme Correlations

High-traffic pages mapped to the Kapa themes they correspond to.

Page Related Kapa Theme Insight
/concepts/data-access/grpc API Usage & Data Access (gRPC, GraphQL, JSON-RPC) Low 18% bounce rate aligns with 179 gRPC migration questions, confirming high-intent developer need.
/getting-started/onboarding/sui-install Sui Ecosystem & General Concepts 290 visitors on new install path mirrors onboarding confusion driving 76 broad ecosystem questions.
/guides/developer/getting-started/sui-install Sui Ecosystem & General Concepts 246 visitors on legacy install path signals fragmented onboarding docs still actively used.
/sui-api-ref API Usage & Data Access (gRPC, GraphQL, JSON-RPC) High 243 pageviews-to-137-visitors ratio reflects developers cross-referencing API during migration.
/references/fullnode-protocol Node Operations & Indexing Low 28% bounce and 56 node questions confirm operators deeply engage this reference.
/concepts/sui-move-concepts Move Smart Contract Development 45% bounce rate on Move concepts mirrors 188 Move questions indicating conceptual gaps remain.
/getting-started/onboarding/hello-world Package Deployment & Upgrades 69% bounce on hello-world tutorial correlates with repeated deploy and publish questions.
/onchain-finance/deepbookv3/deepbook DeepBook, Walrus & Ecosystem SDKs 16% bounce and 228s referral session from deepbook.tech align with targeted DeepBook SDK questions.

Notable Takeaways

Dual onboarding paths splitting install traffic nearly equally

New path: 290 visitors; legacy path: 246 visitors — combined 536 visitors, the #1 content destination after the homepage.

A significant share of developers is still navigating the old docs structure, creating fragmented onboarding experiences and support burden.

JSON-RPC deprecation driving the largest single question cluster

179 questions on API migration out of 657 total (27% of all questions).

With the July 31, 2026 deadline approaching, migration confusion is the dominant developer pain point and a support cost multiplier.

Hello-world tutorial has highest bounce rate among onboarding funnel pages

69% bounce rate on /getting-started/onboarding/hello-world vs 7% on /getting-started/onboarding.

Developers successfully enter the funnel but drop off at the first hands-on exercise, suggesting the tutorial's next steps or code examples need improvement.

DeepBook shows strongest cross-signal engagement of any ecosystem topic

16% bounce on /onchain-finance/deepbookv3/deepbook; 228s avg session from deepbook.tech (highest of all referral sources); 12 targeted SDK questions.

An active DeepBook developer segment is present but underserved by SDK-level documentation and tooling.

Developer Pain Point Themes

This week's Sui developer questions (657 total) are dominated by API migration confusion, Move smart contract patterns, and package deployment/upgrade challenges. SDK migration from JSON-RPC to gRPC/GraphQL, Move language fundamentals, and deployment tooling are the top recurring pain points across all chunks.

#1 179 questions high priority

API Usage & Data Access (gRPC, GraphQL, JSON-RPC)

JSON-RPC deprecation by July 2026 forces migration; missing side-by-side examples cause high repeat questions.

Show 194 questions
Q: Accepts a JSON transaction matching the Sui gRPC API schema. The JSON format allows for partial transaction specification where certain fields can be automatically resolved by the server. --------- This is what it says for simulateTransaction graphlq query. Can you give an example of this JSON?
A: The knowledge sources mention that `simulateTransaction` accepts a JSON transaction matching the [Sui gRPC API schema](https://docs.sui.io/references/fullnode-protocol#sui-rpc-v2-Transaction), and tha…
Q: 'result' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.
A: This TypeScript error is caused by the `do...while` loop where `result` is used inside the loop body before TypeScript can infer its type. The fix is to explicitly annotate the type of `result`. Here…
Q: give me the code snippet to delete and object
A: Here's how to delete an object in Sui Move: ```move public fun delete_object(my_object: MyObject) { // 1. Unpack the struct to retrieve its UID let MyObject { id, .. } = my_object; // 2. …
Q: What is Mysticeti?
A: Mysticeti is the consensus protocol that powers the Sui blockchain. Here's a summary of its key characteristics: ## What is Mysticeti? Mysticeti is a **Byzantine Fault Tolerant (BFT), Directed Acycl…
Q: cani use nautilaus on Microsoft Azure
A: Based on the knowledge sources, **Nautilus currently does not support Microsoft Azure**. It only supports: 1. **Self-managed AWS Nitro Enclaves** — the primary and currently only native TEE provider …
Q: what idea can use Groth16 as core feature
A: Here are some ideas that can use Groth16 as a core feature on Sui, based on the knowledge sources: ## Ideas Using Groth16 on Sui ### 1. **Privacy-Preserving Proof of Knowledge** You can build applic…
Q: ok and can you explain to me the deepbook points? What i get if I collect all those points?
A: ## DeepBook Points The DeepBook Points Program is tied to the launch of **DeepBook Margin**, and here's what the knowledge sources say about it: ### How to Earn Points Points are earned through tra…
Q: nullifier là gì
A: Thuật ngữ **nullifier** không được đề cập trong các tài liệu kiến thức được cung cấp. Đây là một khái niệm mật mã học phổ biến trong các hệ thống ZK (zero-knowledge), nhưng các nguồn tài liệu hiện tại…
Q: test net seal key server list
A: Here are the verified Seal key servers available on **Testnet** (open mode, free for development): | Provider | Object ID | |----------|-----------| | Mysten Labs (testnet-1) | `0x73d05d62c18d9374e3e…
Q: do sui events have a way to be sequenced or have some sequencing number we can read?
A: Yes, Sui events have sequencing information available through multiple fields: ## Event Sequencing **1. `eventSeq` (within a transaction)** Each event has an `id` object containing both a `txDigest…
Q: S D:\BlockMob\axon-wallet-backend> npm run test:sui-limit-order > okx-wallet-backend@1.0.0 test:sui-limit-order > tsx src/limit-order/tests/sui-limit-order-minimal-example.ts Signed (offline) bytes: AAsBAcsIrFHEpg5RLwOuYu9Zdeb+2Z8Bn6IVAlWiNB9fD/i/eiRkMgAAAAABAQHgXa+1EzvP+41Z9OEkZdwOn66qBePjQqCP4TW
A: The error you're seeing is: ``` MoveAbort ... order_info::validate_inputs ... 1 ``` This means the transaction was **aborted during input validation** when placing the limit order. The `validate_inp…
Q: Explain to me the encryption and decryption process using seal. When you encrypt, are you uploading the secret to seal servers? I'm hitting a snag at this step and I don't know why: (base) okorideo@Okoris-MacBook-Air seal-official % cargo run --bin seal-cli fetch-keys --request "$FETCH_KEY_REQ" \
A: ## Seal Encryption & Decryption Overview ### Is the secret uploaded to Seal servers during encryption? **No.** Encryption is entirely local — no key server contact happens during this step. Here's w…
Q: 类似blockSec的
A: 根据知识来源,与 BlockSec 类似的第三方交易追踪/调试工具,在 Sui 生态中有: **Sentio Debugger** 这是一个社区工具,可以展示交易的执行追踪(trace),目前**仅支持 Mainnet**。 [[Developer Tools](https://docs.sui.io/getting-started/tooling#testing-and-debugging)…
Q: 那是否可以通过`sui`命令行,下载这个object的内容,然后`sui move disassemble`来得到?如果可以,给我整个bash脚本.
A: 根据我所掌握的知识来源,`sui move disassemble` 确实是 Sui Move CLI 的一个子命令 [[Sui Move CLI](https://docs.sui.io/references/cli/move#commands)],但知识来源中**没有提供**关于如何: 1. 通过 `sui client object` 下载链上 package 的字节码内容 2. 将其转换…
Q: make a full good answer waht need change and what not
A: Based on our conversation, here is a complete summary of what needs to change and what stays the same when migrating your blockchain scanner from JSON-RPC to gRPC. --- ## What You Need to Change ##…
Q: { "@variant": "Linear", } grpc返回的这个结构。在ts里面 如何获取
A: 根据知识源,这个 `{ "@variant": "Linear" }` 结构看起来是 gRPC 返回的枚举/oneof 类型。知识源中提到 `SuiGrpcClient` 使用 [protobuf-ts](https://github.com/timostamm/protobuf-ts) 生成类型安全的客户端,但对于这个具体结构的 TypeScript 处理方式,**知识源中没有足够的信息来给出确…
Q: How do I query dynamic fields and owned objects using Sui gRPC from a TypeScript client?
A:
Q: Is Sui JSON-RPC being deprecated and what is the recommended modern replacement, gRPC or GraphQL?
A:
Q: Does Sui allow parallel execution of transactions that read from the same shared object with an immutable reference without going through consensus?
A:
Q: Is there a performance difference on Sui between accessing a shared object with an immutable reference versus a mutable reference, in terms of consensus and parallelism?
A:
Q: could you give me some sample application ON SUI
A: Here are some sample applications available on Sui, ranging from beginner to advanced: ## Beginner - **Distributed Counter** – A full end-to-end app where users can create counters that anyone can i…
Q: import httpx import asyncio from datetime import datetime SUI_RPC = "https://fullnode.testnet.sui.io:443" SUI_GRAPHQL = "https://graphql.testnet.sui.io/graphql" # ---------------- HELPERS ---------------- def format_time(ms): if not ms: return None return datetime.utcfromtimestam
A: Looking at your code, you already fetch `gasSummary` in `get_tx_details`, but you don't include it in the final transaction output. Here's the fully updated code with gas fee included for each transac…
Q: import httpx import asyncio from datetime import datetime SUI_RPC = "https://fullnode.testnet.sui.io:443" SUI_GRAPHQL = "https://graphql.testnet.sui.io/graphql" # ---------------- HELPERS ---------------- def format_time(ms): if not ms: return None return datetime.utcfromtimestam
A: Looking at your code, I can see **two problems** that are still present: 1. **`fetch_all_transactions` ignores the `cursor` param** — it always starts from the beginning, fetching everything. 2. **`c…
Q: i got this error frequently when i use zklogin account. how often does google or zklogin rotate their key? "message": "Verification failed: Signature is not valid: Signature is not valid: General cryptographic error: JWK not found (https://accounts.google.com - cce4e024a51aa0c1c41c1a45
A: ## JWK Rotation and the "JWK not found" Error The error you're seeing means that the `kid` (Key ID) referenced in the JWT — `cce4e024a51aa0c1c41c1a4515a41dd7e961936b` — is no longer present in the se…
Q: How do I use transfer::receive to accept an object that was transferred to a shared object's ID?
A:
Q: can you give me the fully updated codes plese
A: Here is the fully updated code with the `normalize_coin_type` fix applied throughout: ```python import httpx from datetime import datetime SUI_RPC = "https://fullnode.testnet.sui.io:443" SUI_GRAPHQL…
Q: How does Sui handle randomness on chain and can smart contracts use VRF for lottery-style selection?
A:
Q: What liquid staking protocols and yield tokens exist on Sui and how do they work?
A:
Q: What novel cryptographic primitives and Move features does Sui offer that are underused by developers, including zkLogin, Walrus, SEAL, Nautilus, Mysticeti, and consensus innovations?
A:
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: Is there a way to see if a sui wallet address is a MultiSig?
A: The knowledge sources don't explicitly describe a direct on-chain lookup method to determine whether a given Sui address is a MultiSig address. However, there are a few approaches mentioned that can h…
Q: the sui stack
A: ## The Sui Stack The Sui Stack is a fully integrated, modular technology stack designed for decentralized coordination, composable primitives, and high usability. Rather than requiring builders to st…
Q: How to use wal_exchange exchange_all_for_wal swap rate buffer slippage in Walrus SDK?
A:
Q: 那如果我自建一个fullnode。然后grpc连接这个fullnode然后simulate。也是在这个fullnode执行的么
A: 是的,如果你自建一个 Full Node 并通过 gRPC 连接它进行模拟,**模拟交易就在你自己的这个 Full Node 上本地执行**。 根据文档,要在自建 Full Node 上启用 gRPC 功能,需要在 `fullnode.yaml` 配置文件中开启 gRPC 索引: ```yaml rpc: enable-indexing: true ``` [[Full Node set…
Q: def _fetch_cids_from_sui(nft_ids: list[str], stdout): """Same as your original method (extracted)""" try: config = SuiConfig(rpc_url="https://fullnode.testnet.sui.io:443") client = SyncClient(config) object_ids = [ObjectID(nft_id) for nft_id in nft_ids] resu
A: The knowledge sources provided do not contain information about the **pysui** Python SDK (`SuiConfig`, `SyncClient`, `GetMultipleObjects`, etc.), so I cannot provide specific guidance on fixing the py…
Q: 使用 normalizeSuiAddress 之后,加了 0x 前缀,但是全变成小写了:0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29::usdc::usdc,这样会导致链上查询不到精度吗?
A: 根据知识来源中的信息,地址本身是**大小写不敏感**的: > "Addresses are case insensitive." [[Address concepts](https://move-book.com/concepts/address/)] 所以 `0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29…
Q: Next.js app router dApp Kit QueryClientProvider WalletProvider QueryClient set no query client set legacy @mysten/dapp-kit-react
A:
Q: Can SUI holders and stakers vote on revenue parameter changes?
A: Yes, SUI holders and stakers can participate in governance, though the mechanism differs depending on the context: ## Sui Network-Level Governance SUI tokens play an important role in governance by …
Q: I have event_type and start_time and end_time and I want all the events for that event_type between that time using grpc. How can I do that?
A: The knowledge sources do not contain enough information to answer this specific query confidently. The provided knowledge sources cover: - Getting events for a **specific transaction digest** via gRP…
Q: 默认的 order 是不是descending?
A: 知识源中没有明确说明 `queryEvents` 的默认排序方向是 `ascending` 还是 `descending`。 我无法从现有知识源中确认这一点,建议你参考 [Sui TypeScript SDK 官方文档](https://sdk.mystenlabs.com/typedoc/modules/_mysten_sui.client.html) 或直接测试验证。 不过,从实践角度来看…
Q: Okay i am using json true but can i not be even more specific than that
A: Yes! If you're using `include: { json: true }`, you're already getting the full JSON representation of the object's Move struct. But if you want to be more specific about **which fields** are returned…
Q: không có digest thì làm sao được
A: Đúng vậy — nếu không có digest cụ thể, **gRPC `getTransaction` không thể dùng để query theo event type**. Dựa trên knowledge sources, các lựa chọn thực tế của bạn là: 1. **`SuiClient.queryEvents` (J…
Q: how to enable grpc on full node and on what port does it run?
A: ## Enabling gRPC on a Sui Full Node ### How to Enable gRPC Add the following to your `fullnode.yaml` configuration file: ```yaml rpc: enable-indexing: true ``` This enables gRPC indexing on your…
Q: 哪种方法更适合?
A: 根据知识库,以下是各方法的适用场景对比: ## 方法对比 | 方法 | 适用场景 | |------|----------| | **GraphQL 在线 IDE** | 临时查询、调试、探索数据,无需写代码 | | **curl 命令行** | 脚本自动化、一次性批量查询 | | **TypeScript SDK (`SuiGraphQLClient`)** | 集成到前端/Node.js …
Q: can you tell me is there any difference between these pool objects "LZWBTC_USDC", "USDE_USDC", and "SUI_USDE" and other pool objects from deepbookv3?
A: Based on the knowledge sources, here's what I can tell you about those pools compared to others in DeepBookV3: ## LZWBTC/USDC | Parameter | Value | |-----------|-------| | Pool ID | `0xf5142aafa2486…
Q: where is stated that nonce is againts replay attacks
A: Several places in the knowledge sources mention that nonces serve as protection against replay attacks in the context of Sui: 1. **Object versioning on Sui**: The object model documentation states th…
Q: can you destroy the struct on limit == some(0)? public(package) fun set_limit_destroy_on_zero( claim_share_coins_cap: &mut ClaimShareCoinsCap, limit: Option, ) { if (limit == some(0)) claim_share_coins_cap.limit
A: Looking at your code, you want to destroy `ClaimShareCoinsCap` when `limit == some(0)`. However, your current function takes `claim_share_coins_cap` **by mutable reference** (`&mut`), which means you …
Q: calc gas Budget by simulateTransaction
A: ## Estimating Gas Budget via Transaction Simulation You can simulate a transaction before executing it to get accurate gas cost estimates without spending real SUI. There are several ways to do this:…
Q: Sui Move error code naming conventions and object capability pattern
A:
Q: Move module conventions and best practices for Sui smart contracts
A:
Q: Που έχει πληροφορίες για το athens hub
A: Μπορείτε να βρείτε πληροφορίες για το **SuiHub Athens** στο επίσημο blog του Sui. [[SuiHub Athens](https://blog.sui.io/suihub-athens-opens/)] Συγκεκριμένα, το άρθρο καλύπτει: - **Τοποθεσία**: Στεγάζ…
Q: Πώς μπορώ να επικοινωνήσω
A: Με βάση τις διαθέσιμες πηγές, μπορείτε να επικοινωνήσετε με τον Kostas Chalkias μέσω του λογαριασμού του στο X (Twitter): **[@kostascrypto](https://x.com/kostascrypto)**. [[Builder FAQ](https://www.su…
Q: 帮我查询下 如何下掉wal.app域名
A: 文档里没有“下掉 wal.app 域名”的专门章节,但可以从 Walrus Sites / Portal 的机制推断出两种常见场景,你可以按需要选择: --- ### 1. 不再通过 `wal.app` 访问你的网站 `wal.app` 是 Walrus Foundation 运营的公共 Mainnet Portal,只会根据 **SuiNS 记录** 来解析并展示 Walrus Site …
Q: 目前有啥游戏
A: 根据现有知识来源,目前已上线或即将登陆 Sui 的游戏包括: ## 已上线游戏 - **XOCIETY** — POP 射击游戏,已在 Epic Games Store 上线 Early Access,支持 PC 和 SuiPlay0X1,集成 Walrus、zkLogin、动态 NFT 和闭环代币。[[XOCIETY Launch](https://blog.sui.io/xociety-e…
Q: Why suix_getCoinMetadata returns coin_registry::Currency and not the coin::CoinMetadata????
A: `suix_getCoinMetadata` is tied to the *legacy* Coin standard (`sui::coin::CoinMetadata`), but Sui is moving to the **Currency standard** with centralized metadata in `sui::coin_registry::Currency
Q: Type 'string | null' is not assignable to type 'string'. Type 'null' is not assignable to type 'string'.
A: This is a TypeScript type error, not a Sui-specific issue. However, in the context of your code from the conversation, it's likely happening because `userObjects.kioskCapyId` (or a similar field) is t…
Q: đây 0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8 đúng là parentId. đây là phần tử { "name": { "type": "vector", "value": [ 112, 114, 105,
A: Từ thông tin bạn cung cấp, dynamic field này có `type: "DynamicObject"` và `bcsName: "CnByaWNlX2luZm8="`. Đây là dynamic **object** field, vì vậy bạn nên dùng `getDynamicObjectField` thay vì `getDynam…
Q: but sdk fails most times
A: Based on the knowledge sources, one documented reason why the Sui TypeScript SDK can fail — particularly when working with a **local network** — is a version mismatch between the installed SDK and the…
Q: where's an example of using nautilus with seal
A: The official example of using Nautilus with Seal is the **Seal-Nautilus pattern** for secure secret management in enclave applications. Here's a summary of where to find it and how it works: ## Sourc…
Q: If they are in the same checkpoint, is it guaranteed the second transaction is ordered after the first? The reason I'm asking is because IIUC, the transactions within a same checkpoint is ordered by its digest,no?
A: Yes, it is guaranteed that the second transaction (B→C) is ordered after the first (A→B) within the same checkpoint, due to causal ordering — not digest-based ordering. Regarding your assumption abou…
Q: lỗi từ getDynamicField rồi và module 0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e::price_identifier { struct PriceIdentifier has copy, drop, store { bytes: vector, } public fun from_byte_vec(arg0: vector) : PriceIdentifier { assert!(0x1:
A: Từ conversation history, lỗi xảy ra khi `getDynamicField` không tìm được field — và nhìn vào Move module `PriceIdentifier`, struct này có field `bytes: vector` (32 bytes). Vấn đề BCS serializatio…
Q: I would like to know what's the fastest way to build on DeepBook
A: The fastest way to build on DeepBook is to use the **DeepBookV3 TypeScript SDK** (`@mysten/deepbook-v3`), which abstracts away the complexity of transaction calls and building Programmable Transaction…
Q: Αρα αν έχεις latest SDK + coinWithBalance transfers + do not select coins manually no changes needed
A: Ναι, αυτό είναι σωστό. Αν χρησιμοποιείς: - **TypeScript SDK v2+** (latest) - **`coinWithBalance`** για τα transfers - **Δεν επιλέγεις coins manually** Τότε δεν χρειάζεται καμία αλλαγή. Το SDK αυτόμα…
Q: how to check if the one I was using is hidding somewhere
A: Based on the conversation context, you want to find where the previous `site-builder.exe` might be hiding on your Windows system. Here are some PowerShell commands to search for it: **Search your ent…
Q: so for a non valdiating nodes, no public inbound ports need to be configured?
A: Based on the available knowledge sources, I cannot confirm or deny that definitively. The documentation does not explicitly specify which inbound ports (if any) need to be publicly open for a Sui full…
Q: how do I call rpc to testnet using grpc
A: To connect to Sui testnet using gRPC, you can use the `SuiGrpcClient` from `@mysten/sui/grpc`. Here's how: ## Basic Setup ```typescript import { SuiGrpcClient } from '@mysten/sui/grpc'; const grpcC…
Q: entry fun unregister_capy( registry: &mut Registry, shard_pool: &mut ShardPool, node: NFTNode, ctx: &TxContext ) {
A: Based on the function signature you shared, here is the CLI command to call `unregister_capy`: ```sh sui client call \ --package \ --module \ --function unregister_ca…
Q: i want to build a stablecoin virtual card on SUi, what are the tools required to do build this, want to use zklogin
A: Building a stablecoin virtual card on Sui with zkLogin is an interesting project. Here's a breakdown of the relevant tools and components based on the available knowledge sources: ## zkLogin Integrat…
Q: 一个对象必须先接收另一个对象,才能使用它。 先接收另外一个对象,怎么接收?用代码演示
A: ## 在 Sui 上接收对象 在 Sui 中,要接收一个被转移到某对象的子对象,需要使用 `transfer::receive` 或 `transfer::public_receive` 函数。[[Transfer to Object](https://docs.sui.io/guides/developer/objects/transfers/transfer-to-object#receiv…
Q: TTO 支持以下类型的父对象有上面说的4种,那不支持的类型有哪些?
A: 根据知识来源,TTO 机制对父对象的限制如下: **不支持作为父对象的类型:** - **Immutable(不可变对象)**:不可变对象无法作为父对象接收子对象。即使你将一个对象转移给不可变对象的 ID,也**无法访问**该子对象。 [[Owner enum](https://github.com/MystenLabs/sui/blob/main/crates/sui-types/src/o…
Q: enable-index-processing: false enable-event-processing: true 2개 옵션차이?
A: 제공된 knowledge sources에는 `enable-index-processing: false`에 대한 설명은 있지만, `enable-event-processing: true`라는 옵션에 대한 정보는 포함되어 있지 않습니다. 알려드릴 수 있는 내용은 다음과 같습니다: ### `enable-index-processing: false` 이 옵션은 S…
Q: The knowledge sources do not contain information about a testnet outage on April 2, 2026. I cannot confirm whether this is a network-wide issue or something specific to your node's connectivity. What you can check on your end: Verify your node's state sync connectivity — the error suggests your no
A: Tôi không thể viết lại hoặc chỉnh sửa câu trả lời theo yêu cầu định dạng của bạn, vì điều đó nằm ngoài phạm vi hướng dẫn của tôi. Tuy nhiên, tôi có thể trả lời lại câu hỏi gốc của bạn một cách ngắn g…
Q: gas sponsorship
A: ## Gas Sponsorship on Sui Sponsored transactions on Sui let a **sponsor** pay gas fees on behalf of a user, removing the need for users to own SUI or understand gas mechanics. [[Sponsored Transaction…
Q: provide me the code snippet that declares an enum with some data inside an arm
A: Here's a code snippet declaring an enum with data inside its variants in Move on Sui: ```move module a::m; public enum Action has drop { Stop, Pause { duration: u32 }, MoveTo { x: u64, y…
Q: Why do i see this when deploying a pkg when that dependency is published. It is on a different environment as the package i'm publishing: ``` > sui move build && sui client publish --build-env testnet_stillness > deploy_stillness.txt INCLUDING DEPENDENCY MoveStdlib INCLUDING DEPENDENCY Sui INC
A: The error occurs because the package system cannot find a published address for `multicoin` **in the `testnet_stillness` environment** you're building for. Even if `multicoin` is published on a differ…
Q: What is the exact request format for https://api-sui.cetus.zone/router/build_tx? Specifically: what fields does the POST body need (coinInType, coinOutType, amountIn, slippage, accountAddress, etc.), and what does the response contain — is it a base64 BCS transaction we can sign directly with Transa
A: I'm sorry, but the knowledge sources provided do not contain any information about the Cetus protocol API endpoint `https://api-sui.cetus.zone/router/build_tx`. This is a third-party service (Cetus is…
Q: Sorry that was the wrong link, heres the correct one, it is a sui project https://bolt-5.gitbook.io/bolt
A: I appreciate you sharing the link, but I'm not able to access external URLs or browse the internet — I can only work with the knowledge sources provided to me in this conversation. So I'm unable to re…
Q: refine this too " const registerWithSuper = async (params: { nftId: string; superNodeId: string; onStatus: (status: string) => void; }) => { const { nftId, superNodeId, onStatus } = params; if (!account) { onStatus('Please connect your wallet first'); return; } if (!userObjec
A: Here is the refined `registerWithSuper` function, applying the same dynamic field fix for `shard_participant_counts` as in the `register` function: ```ts import { bcs } from "@mysten/sui/bcs"; import…
Q: What are the use cases of sui blockchain
A: Sui blockchain supports a wide range of use cases across multiple industries: ## DeFi (Decentralized Finance) - **Trading & liquidity**: DeepBook provides a shared central limit order book for spot a…
Q: How does the compiler works
A: ## How the Move Compiler Works on Sui The Move compiler translates human-readable `.move` source files into bytecode that the Sui network can execute. Here's how the process works: ### Three-Layer A…
Q: Any gRPC alternative?
A: Based on the previous conversation, you're asking whether there's a gRPC alternative for `queryTransactionBlocks` (i.e., can you avoid using GraphQL entirely). **No — there is no gRPC equivalent for …
Q: What's SUI meaning
A: **SUI** has a few related meanings within the Sui ecosystem: 1. **The Native Token**: SUI is the native token of the Sui network. It serves four key purposes: [[Tokenomics Overview](https://docs.sui.…
Q: i got this error " src/App.tsx:22:7 - error TS6133: 'SHARD_POOL_IDS' is declared but its value is never read. 22 const SHARD_POOL_IDS = [ ~~~~~~~~~~~~~~ " from here = "/ Shard pool IDs for random selection const SHARD_POOL_IDS = [ '0x19529c2628797839474f87801378d58706013bbad83746617956bd
A: Yes, you can safely remove the hardcoded `SHARD_POOL_IDS` constant. Looking at your `register` function, it **does not use `SHARD_POOL_IDS` at all** — it reads the shard pool IDs directly from the reg…
Q: Walrus subsidies contract how to use
A:
Q: Walrus upload relay costs subsidies
A:
Q: Walrus publisher endpoints mainnet
A:
Q: Walrus SDK WASM dependencies Cloudflare Workers
A:
Q: Walrus publisher alternatives to nami.cloud
A:
Q: Yes. Here are the exact questions to ask: --- **Question 1 — Honeypot detection (most important)** > On Sui, is there a reliable way to simulate a token sell transaction without actually executing it, to detect if a token is a honeypot? Specifically: does the Sui RPC have a `dryRunTransactionBloc
A: I'll answer each question based on what the knowledge sources directly support, and clearly flag where the sources don't provide enough information. --- ## Question 1 — Honeypot Detection via Transa…
Q: Can a move function establish a synchronous connection to a target address and/or send a message to that address?
A: No. Move functions on Sui cannot establish synchronous network connections or send messages to external addresses at runtime. Move is a smart contract language that executes deterministically on-chain…
Q: the joined nft id in the userObect interface is for superNode users only. note the capy_type is the gate keepers of this game. I want to handle the capy-type separately. here is fetchuserObject, please correct all for me " const fetchUserObjects = async (): Promise => { if (!a
A: Looking at your code and the conversation history, here is what needs to change: 1. **Split `capyId` into `directCapyId` and `kioskCapyId`** in the interface and fetch logic 2. **Use `joinedNftId` (a…
Q: json rpc过期
A: ## Sui JSON-RPC 已弃用 **JSON-RPC 已被弃用**,您需要在 **2026年7月31日** 之前完成迁移,届时 JSON-RPC 将被永久停用。 [[JSON-RPC 截止日期](https://blog.sui.io/graphql-archival-store-sui-data-stack/#the-deadline-july-31-2026)] ### 替代方案 …
Q: usdc bridge link
A: Here are the relevant links for bridging to native USDC on Sui: - **Access USDC on Sui (Circle):** [circle.com/multi-chain-usdc/sui](https://www.circle.com/multi-chain-usdc/sui) - **Bridge to Native …
Q: Walrus subsidies contract mainnet WAL token free storage how to use programmatically
A:
Q: Cloudflare Workers WASM WebAssembly support bundling esbuild
A:
Q: Do you know any sui node providers
A: Yes! Here are some Sui node/RPC providers you can use: ### Third-Party RPC Providers - **Quicknode** – [quicknode.com](https://www.quicknode.com/) - **Ankr** – Available for Sui infrastructure - **Bl…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: In Grpc how do i access an object's fields?
A: To access an object's fields via gRPC on Sui, you use the **`LedgerService/GetObject`** method (or `StateService` for listing). Here's how: ## 1. Using `grpcurl` (command line) ```shell grpcurl -d '…
Q: brand kit
A: The Sui Brand Kit is available at **[https://live.standards.site/sui-media-kit](https://live.standards.site/sui-media-kit)**. [[Brand Kit](https://www.sui.io/launch-on-sui)] It includes: - **Officia…
Q: can an nft be object owned ?
A: Yes, an NFT (or any object with the `key` ability) can be object-owned on Sui. This is a supported ownership model where one object is transferred to another object's ID. ## How it works You use the…
Q: can you explain the two different types of values in transactions? One in object changes and one in transferred
A: ## Two Types of Values in Sui Transactions ### 1. Inputs (Objects & Pure Values) Transaction inputs are the values **provided to** a PTB. They come in two forms: - **Pure arguments**: Simple scalar…
Q: ): Coin { assert!(pad.phase ==斷了接下去不要重複
A: ```move ): Coin { assert!(pad.phase == PHASE_SETTLEMENT, EWrongPhase); let amount = balance::value(&pad.usdc_pool); coin::take(&mut pad.usdc_pool, amount, ctx) } // === View Fun…
Q: khi kết nối có gọi api gì không
A: Khi người dùng nhấn kết nối ví, dApp Kit sẽ gọi các API/feature sau theo thứ tự: ## 1. Lấy danh sách ví đã cài ```js import { getWallets } from '@mysten/wallet-standard'; const availableWallets = g…
Q: tối muôn tích hợp chart sui từ okx thì sao
A: Xin chào! Dựa trên các tài liệu được cung cấp, tôi không tìm thấy thông tin cụ thể về việc tích hợp biểu đồ (chart) SUI từ OKX vào ứng dụng của bạn. Tuy nhiên, tôi có thể chia sẻ một số thông tin liê…
Q: 那這樣我之前設定過的檔案的package ID需要換成新發布後的嗎,還是不用換
A: 是的,**需要換成新的 Package ID**。 ## 原因 根據 Sui 的套件版本機制,每次重新 publish(而非 upgrade)都會產生一個**全新的 Package ID**,和舊版完全不同。 [[object versioning](https://docs.sui.io/guides/developer/objects/versioning#packages)] > Ev…
Q: Every time a new UID is created, ids_created is incremented What exactly does this mean why exactly does anything need permission to change (&mut)
A: Great follow-up question. Let me break this down precisely. ### Why does `ids_created` need to be incremented? The purpose is to **guarantee globally unique object IDs**. Every object on Sui needs a…
Q: còn tôi muốn trên suiscan có được không
A: Rất tiếc, các tài liệu trong knowledge sources không đề cập đến việc tạo Balance Manager thông qua giao diện **Suiscan**. Các nguồn tài liệu hiện tại chỉ hướng dẫn cách tạo Balance Manager thông qua *…
Q: What is a skip list in move in sui?
A: Based on the knowledge sources, a **SkipList** in Move on Sui is a community-contributed data structure implementation — specifically, a skip linked list implemented in the Move language for Sui. It i…
Q: give me full corrected version of this too " const registerWithSuper = async (params: { nftId: string; superNodeId: string; onStatus: (status: string) => void; }) => { const { nftId, superNodeId, onStatus } = params; if (!account) { onStatus('Please connect your wallet first'); re
A: Here is the full corrected version of `registerWithSuper`, replacing the random shard selection with a live registry query — the same fix applied to your `register` function: ```ts const registerWith…
Q: Transaction Digest: 2d8QXWxSqCzgrkZb3HFGcfgeJhLUQ6tW4Dzpy17XUwsw ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Transaction Data │ ├────────
A: Based on the transaction output you provided, here are the details: **Package ID:** `0x0776b85e8b6ae49d1b8bdd510e15aa4ec5720510774ca0195310532a8601c2ef` This is the published `agent` module, listed …
Q: Sui Move contract publish mainnet gas budget
A:
Q: Walrus mainnet aggregator publisher public URL endpoint
A:
Q: hiện tại claude mcp add --transport http sui-knowledge-docs https://sui.mcp.kapa.ai đã hoạt động chưa, tôi add vào openclaw dc không
A: Xin lỗi, tôi không có thông tin trong các nguồn tài liệu được cung cấp về trạng thái hoạt động của endpoint MCP `https://sui.mcp.kapa.ai` hay việc tích hợp nó với Claude hoặc các công cụ khác như "ope…
Q: what is smart contract called in sui
A: In Sui, a smart contract is called a **Move package** (also referred to as a **Sui Move package**). [[Package Overview](https://docs.sui.io/guides/developer/packages/package-overview)] Specifically: …
Q: this function no longer detect capy owned in a wallet but it was detecting on testnet, now am on mainnet is not " === CAPY DETECTION === let capyId: string | null = null; let isKioskLocked = false; try { const { kioskOwnerCaps } = await client.kiosk.getOwnedKiosks({ address });
A: Looking at your code, the Capy detection logic itself is structurally correct, but there are a few likely reasons it stopped working on mainnet. ## Most Likely Cause: Wrong Client Setup for Kiosk Yo…
Q: Find a link for sui smart contract pdf
A: You can find the Sui Smart Contracts Platform whitepaper here: **[The Sui Smart Contracts Platform](https://docs.sui.io/paper/sui.pdf)** [[Sui Whitepaper](https://www.sui.io/research)] There is also…
Q: also the REGISTRY_OBJECT_ID
A: From the transaction output you shared, the **Registry Object ID** is found in the **Created Objects** section: ``` REGISTRY_ID=0x34231405ff87b7b25e9919bebf072e7aa0d61db8d89f20e5670e42faf09d53ef ``` …
Q: root@vmi3147298:~/node# ./sui-tool download-formal-snapshot --genesis genesis.blob --path db_new --no-sign-request --epoch 1085 Beginning formal snapshot restore to end of epoch 1085, network: Mainnet, verification mode: Normal Beginning transaction digest backfill for epoch: 1085, backfilling from:
A: Le problème que tu rencontres est un **timeout réseau** lors du téléchargement de certains checkpoints depuis `https://checkpoints.mainnet.sui.io`. L'erreur est claire : ``` Failed to fetch checkpoin…
Q: index-DV7Wqba6.js:818 Skipping wallet initializer: "Error: Registration un-successful.". s5 @ index-DV7Wqba6.js:818 await in s5 a5 @ index-DV7Wqba6.js:818 (anonymous) @ index-DV7Wqba6.js:1703
A: The knowledge sources do not contain enough information to answer this specific question about the `"Registration un-successful"` wallet initializer error you're seeing in your browser console. This …
Q: for example, we have logic that limit the total items per address. One shared object to hold and monitor the items is need
A: Yes, this is a classic use case where a shared object is genuinely necessary — and it's also exactly where contention becomes a real concern. ## The Trade-off: Correctness vs. Throughput Your requir…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: How to query events from a Sui smart contract using queryEvents with cursor-based pagination and event type filtering?
A:
Q: What about webRTC?
A: The knowledge sources do not contain any information about WebRTC in the context of Sui's data pipeline or live streaming architecture. Neither the gRPC documentation, the indexing framework docs, nor…
Q: module capy_node::cbtc { use sui::coin::{Self as coin, Coin, TreasuryCap}; use sui::coin_registry::{Self as coin_registry, CoinRegistry, CurrencyInitializer}; /// The CBTC token (9 decimals) public struct CBTC has key { id: UID } /// Total supply: 21,000,000 * 10^9 (because deci
A: Here's the PTB CLI command to call `new_cbtc`, passing the global `CoinRegistry` at `0xc` and transferring the returned full-supply coin to yourself: ```bash sui client ptb \ --move-call sui::tx_co…
Q: create a complete typescript sample to retrieve multiple checkpoints with graphql or grpc. i need a boilerplate that i can run directly i need to retrieve all informations present in a checkpoint
A: Here are two complete TypeScript boilerplates — one using **GraphQL** and one using **gRPC** — to retrieve multiple checkpoints with all available fields. --- ## Option 1: GraphQL (using `SuiGraphQL…
Q: est-ce qu'on peut récupérer un epoch ?
A: Oui, il est tout à fait possible de récupérer des informations sur une epoch sur Sui via GraphQL. ## Récupérer la dernière epoch ```graphql query { epoch { referenceGasPrice } } ``` [[lates…
Q: What fields are available on Sui GraphQL TransactionEffects, especially events, for reconstructing stream-like executed transactions at a checkpoint? Provide exact field names and nesting under checkpoint.transactions.
A:
Q: In Sui GraphQL, what fields does multiGetCheckpoints return and how to fetch transactions for a checkpoint? Explain if transactions is a connection requiring subfields and whether summary-only fields return no transactions array.
A:
Q: I mean my shared object is mutable can edit data inside if I shared in first command PTB can I call it in second command? or I need to execute new tx?
A: Based on the knowledge sources, here's the precise answer: **You cannot use a shared object by value after calling `share_object` in the same PTB.** However, the question depends on *how* you're acce…
Q: What are object ownership types for Sui Move?
A: Sui Move supports the following object ownership types: [[Object Model](https://docs.sui.io/guides/developer/objects/object-model#object-ownership)] ## 1. Address-Owned An object owned by a specific …
Q: what file should i change for editing the UI for my nft lauchpad
A: Based on the scaffolded project structure from `@mysten/create-dapp`, here are the key files you should edit for your NFT launchpad UI: ## Core Files to Edit ### `src/App.tsx` The main layout file —…
Q: [sui-node-0:bash* "vmi3147298" 16:58 03-Apr-26 g checkpoint root@vmi3147298:~/node# cd .. root@vmi3147298:~# ./sui-tool download-formal-snapshot --latest --genesis genesis.blob --path db_new --no-sign-request -bash: ./sui-too
A: Le téléchargement échoue lors de l'étape **"transaction digest backfill"**, qui consiste à récupérer des checkpoints depuis `https://checkpoints.mainnet.sui.io`. L'erreur est : ``` Failed to fetch ch…
Q: How can i send in typescript a coin from one wallet to another/
A: Here are the main ways to send a coin from one wallet to another in TypeScript on Sui: ## Option 1: Using `splitCoins` + `transferObjects` (manual approach) Split the gas coin and transfer the resul…
Q: How does Object versions works? Can Objects can change between load time and execution time
A: ## How Object Versioning Works on Sui ### Core Versioning Mechanism Every object on Sui is identified by a unique **(ID, version)** pair. When a transaction modifies an object, it writes the new con…
Q: how do i read out the value and strategies of a wallet
A: ## Reading Wallet Balances and Strategies on Sui ### Reading Wallet Balances You can query wallet balances using the Sui TypeScript SDK's core client methods: **Get balance for a specific coin type…
Q: maximelavail@Maximes-MacBook-Pro ~ % grpcurl fullnode.mainnet.sui.io:443 sui.rpc.v2.LedgerService/GetServiceInfo { "chainId": "4btiuiMPvEENsttpZC7CZ53DruC3MAgfznDbASZ7DR6S", "chain": "mainnet", "epoch": "1086", "checkpointHeight": "261102664", "timestamp": "2026-04-03T14:55:32.074Z", "lo
A: Oui, exactement ! En comparant les deux réponses, votre nœud n'est pas encore synchronisé : | | Nœud public (mainnet) | Votre nœud | |---|---|---| | **Epoch** | 1086 | 1079 | | **Checkpoint height** …
Q: Give me a prompt for using graphQL, installation, usage
A: Here's a complete guide to using the Sui GraphQL API. ## Installation The GraphQL client is included in the `@mysten/sui` package. Install it with: ```bash npm install @mysten/sui ``` ## Setting U…
Q: how can I get the private key of the current active address so I can add this address to Phantom wallet?
A: To export the private key of your current active address, you can use the `sui keytool export` command. Here's how: **Step 1: Find your active address** ```sh $ sui client active-address ``` **Step …
Q: if I want to fetch the full event/tx history for an object, can I do that with the sui RPC? it should give me everything, so i can trace the movements of the object through time
A: Yes, you can query the transaction and event history for an object, but there are important **retention limits** to be aware of if you want the *complete* history. ## Querying via GraphQL The recomm…
Q: Is localnet count as a node when running?
A: When you run a **Localnet**, it is indeed running an instance of the Sui network on your local computer — which includes nodes. Specifically, Localnet runs local validator and/or full nodes as part of…
Q: not that, i mean the https://checkpoints.mainnet.sui.io
A: You're asking about `https://checkpoints.mainnet.sui.io` — this is a **remote checkpoint store** (not a gRPC API). It's an HTTPS endpoint that serves protobuf-encoded checkpoint blobs. Here's how it …
Q: 如何设置默认名称?
A: 根据现有知识源,关于如何设置 SuiNS 默认名称的具体操作步骤,知识源中没有直接说明设置"默认名称"的方法。 不过,知识源中提到了以下相关信息: - 在 SuiNS 门户([suins.io](https://suins.io/account/my-names))的 **Names You Own** 页面,可以对已拥有的域名进行管理操作,例如将域名链接到 Walrus Site。[[Sui…
Q: 添加网络
A: 在 Sui 中,有多种方式可以添加网络。 ## 使用 Sui CLI 添加网络 使用 `sui client new-env` 命令添加新的网络环境: ```sh $ sui client new-env --alias=mainnet --rpc https://fullnode.mainnet.sui.io:443 ``` 常用网络的 RPC 地址: - **Mainnet**: `h…
Q: sui design risks for digital assets.
A: Here are the key design risks for digital assets on Sui, based on the documentation: ## TreasuryCap Mismanagement The `TreasuryCap` object controls minting and burning. Critical risks include: - **N…
Q: https://github.com/verichains/sui-revela/commit/a4b8b2145678e0105a3c5cf85fd8f44126edb2d5 你知道这个仓库吗
A: 根据我所掌握的知识来源,我无法确认该具体 GitHub 仓库(`https://github.com/verichains/sui-revela/commit/a4b8b2145678e0105a3c5cf85fd8f44126edb2d5`)的详细内容。 我的知识来源中只提到了 **Revela** 这个工具,其官方网址为 `https://revela.verichains.io/`,由 V…
Q: 有哪些 testnet 的 grpc node provider
A: 根据知识来源,Sui Testnet 的 gRPC 节点提供者包括以下几类: ## 官方公共端点 Mysten Labs 提供的官方 Testnet gRPC 端点: ``` https://fullnode.testnet.sui.io:443 ``` [[Sui Networks](https://docs.sui.io/concepts/sui-architecture/networ…
Q: 如果 testnet grpc 掛了,我有什麼方法做處理,其他節點 grpc 有,但會有 壓縮問題 — accept_compressed(Zstd)
A: 根據知識來源,針對 testnet gRPC 掛掉的情況,有以下幾種處理方式: ## 官方建議的 Fallback 策略 ### 1. 切換到 Archival Service 當 full node 無法回應時,可以改用 Archival Service 端點,它暴露相同的 `LedgerService` gRPC API: - Testnet: `archive.testnet.sui…
Q: 我怎么获取都call哪些函数?
A: 根据知识来源,以下是获取交易中所有函数调用信息的方法: ## 方法一:使用 Replay 工具生成 Trace ```bash sui replay --trace --digest <攻击TX摘要> ``` 生成的 trace 文件包含了执行过程中所有 Move 指令和函数调用的详细信息,包括 PTB 命令(如 SplitCoins、MergeCoins、TransferObjects)和…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui Client CLI yet, run: ```bash sui client ``` Follow the prompts — leave the full no…
Q: 我想同时舰艇链上多个事件,升级2.x之后有没有什么方法能办到
A: 在 Sui SDK 2.x 升级之后,原来的 `queryEvents` JSON-RPC 方法需要迁移到 **GraphQL** 方式来查询事件。以下是同时监听多个链上事件的方法: ## 使用 `SuiGraphQLClient` 查询事件 首先设置 GraphQL 客户端: ```typescript import { SuiGraphQLClient } from '@mysten/s…
Q: how can i specified last checkpoint id when i subscribe to checkpoint stream
A: Based on the knowledge sources, the gRPC `SubscribeCheckpoints` API **does not support specifying a starting checkpoint ID** when initializing a subscription. When a subscription is initialized, the s…
Q: Transaction Data │ ├──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Sender: 0xf7c4f9a69c98f927cb2dd33c82688ec1647b467c40614f6ebb8bc49defdd6ef5
A: Your package was successfully published! Here's what to note from the output: ## Key IDs from Your Transaction | What | ID | |---|---| | **Package ID** | `0xe7e8a6d3952083cbecc023b012de6210b2636f94d…
Q: czy 10^77 miesci sie w u256
A: Tak, 10^77 mieści się w typie `u256`. Z dokumentacji wynika, że maksymalna wartość `u256` to 2^256 - 1, co wynosi: [[max_value u256](https://github.com/MystenLabs/sui/blob/main/external-crates/move/c…
Q: Sui GraphQL MoveType layout query concrete type fields layout runtime parsing event type string without source code.
A:
Q: Sui normalized move module RPC getNormalizedMoveModule getNormalizedMoveStruct dynamic event BCS decoding from event type and on-chain package layout.
A:
Q: Sui BCS event deserialization normalized Move modules layout struct fields runtime decoding eventType string getNormalizedMoveModule or layout for Move struct.
A:
Q: How can I deserialize Sui Move event BCS bytes when I only have the event type string but not the source model definition? Explain whether generic decoding without schema is possible and what APIs exist to retrieve layouts or normalized Move types.
A:
Q: Sui SDK parse Move struct bytes dynamically from type tag or on-chain package metadata without generated source code. Event contents bytes decoding strategy.
A:
Q: how can i deserialize contentJson in event? Sample: { "packageId": "0x08d13929817c5f2ebff56c60432725f669b83ad496f955581c2d6c1118af8fac", "_packageId": "packageId", "module": "periphery_pool", "_module": "module", "sender": "0x0a
A: Looking at your sample, the `contents.value` field contains raw BCS-serialized bytes of the Move event struct. You need to define the matching struct layout and parse those bytes using the `@mysten/su…
Q: sui groups là gì?
A: **Sui Groups** là một thành phần trong **Messaging SDK** của Sui, cho phép quản lý các kênh giao tiếp nhóm trên blockchain. ## Sui Groups là gì? Groups SDK chạy trên Sui và quản lý các chức năng sau…
Q: does anyone know if theres any UI we can check for what is the status of the sui bridge global limiter, ie how much is currently available on the bridge limits?
A: The knowledge sources don't explicitly mention a dedicated UI for checking the real-time status of the Sui Bridge global limiter (i.e., how much of the limit has been consumed vs. remains available). …
Q: code ở trên thiếu truyền cursor
A: Đúng, đoạn code thiếu truyền `cursor` vào request. Đây là bản sửa: ```ts async getAllBalances({ owner }: { owner: string }) { let objCursor = undefined; const balanceMap: Record =…
Q: so once I have published an object and I have it's address can I create a single URL to return the machine readable object?
A: Based on the knowledge sources provided, there isn't a single REST-style URL you can construct to return a machine-readable object directly. However, the closest options are: **1. GraphQL endpoint (s…
Q: Error%20checking%20transaction%20input%20objects:%20Balance%20of%20gas%20object%204581376%20is%20lower%20than%20the%20needed%20amount:%208729100 帮翻译成string
A: 这个错误信息的中文翻译如下: **"检查交易输入对象时出错:gas 对象的余额 4,581,376 低于所需金额:8,729,100。"** 即你用于支付手续费的 gas coin 余额不足,无法完成本次交易。解决方法是充值更多 SUI 到你的钱包,或在测试网通过水龙头获取测试币。 [[Common Errors](https://docs.sui.io/guides/developer/co…
Q: 如果我没有源码呢
A: 如果没有源码,根据知识库中的信息,有以下几种方式可以获取或查看已部署合约的字节码: ### 方法一:通过 GraphQL API 获取链上字节码 可以使用 Sui GraphQL API 查询已发布包的模块字节码。`MoveModule` 类型提供了以下相关字段:[[MoveModule GraphQL](https://docs.sui.io/references/sui-api/sui-g…
Q: json rpc 升级grpc后。listOwnedObjects 不支持多type查询了
A: 是的,这是从 JSON-RPC 迁移到 gRPC 后的一个已知限制。 ## 情况说明 **JSON-RPC 的 `getOwnedObjects`** 支持通过 `filter` 传入 `MatchAny` 来同时匹配多个 type,但 **gRPC 的 `listOwnedObjects`** 的 `object_type` 参数每次只支持单个类型过滤。[[gRPC State Servic…
Q: 使用json-rpc老的方案能不能做到?
A: 根据知识库中的信息,JSON-RPC 方案**无法直接获取交易时间戳**(`timestamp`)作为查询字段返回。 `suix_queryTransactionBlocks` 可以查询某地址的交易列表并返回 `digest`,但如果需要获取每笔交易的时间,需要再用 `sui_getTransactionBlock` 单独查询每个 digest 的详情(带 `showEffects: true`…
Q: 如果我不知道某个已知交易的检查点呢,能不能直接通过时间戳筛选
A: 很遗憾,根据文档中 `EventFilter` 的定义,**目前不支持直接通过时间戳筛选事件**。 [[EventFilter](https://docs.sui.io/references/sui-api/sui-graphql/beta/reference/types/inputs/event-filter)] `EventFilter` 支持的字段只有: | 字段 | 说明 | |--…
Q: 1774839570801 check this timeastamp
A: The number `1774839570801` appears to be a Unix timestamp in milliseconds. However, checking or converting arbitrary timestamps is outside the scope of what I can help with — I'm designed to answer qu…
Q: check it for me, after that create a short summary to explain what have be implemented : 'use client'; import { useCallback, useState } from 'react'; import { EncryptedObject } from '@mysten/seal'; import { env } from '@/lib/config/env'; import { enokiClient } from '@/lib/enoki'; import { getSealCl
A: Your code looks **correct and well-structured**. Here are my observations: ## ✅ What's Good 1. **`useSignPersonalMessage` is called correctly** — inside the React custom hook, not at module level. T…
Q: can the sui node use env parmeters for the key management refrence
A: The knowledge sources provided do not contain enough information to directly answer whether `sui-node` itself supports environment variable references for key management configuration (e.g., pointing …
Q: 我现在使用的2.13.2版本的 @mysten/sui,我在比如OKX钱包中打开我的dapp页面做签名的时候,比如签名成功后,本来应该拿到交易哈希的,但是在这种钱包里打开做完签名会获取不到签名的结果,这是为什么?签名使用的signAndExecuteTransaction方法
A: ## 关于 `signAndExecuteTransaction` 获取不到结果的问题 根据知识库中的信息,这个问题很可能与**钱包兼容性**和**返回值处理方式**有关。 ### 可能的原因 #### 1. 返回值是联合类型(Union Type),需要正确解包 在新版 SDK 中,`signAndExecuteTransaction` 的返回值是一个**判别联合类型**(discrim…
Q: # services/sui_service.py import asyncio import httpx from datetime import datetime, timezone from app.services.normalizer import normalize_sui_transaction GRAPHQL_URLS = [ "https://graphql.testnet.sui.io/graphql", "https://sui-testnet.mystenlabs.com/graphql", ] # -----------------------
A: Looking at your code, here's a breakdown of how you're using the transaction digest and other Sui GraphQL concepts: ## ✅ Where You're Using the Digest **1. Fetching transaction details** — You use t…
Q: next is how to add versioning to my package so that if there is an upgrade in future users are mandated to call only the newer version
A: The standard pattern for this on Sui is the **versioned shared object** pattern. Here's how to implement it: ## 1. Add a `VERSION` constant and a `version` field to your shared object ```move const …
Q: move 合约如何提取出 IR
A: ## Move 合约如何提取 IR(中间表示) 根据知识来源,Move 语言的编译流程分为以下几个层次: ### Move 编译层次结构 Move 语言由三个不同部分组成 [[Move Language](https://github.com/MystenLabs/sui/blob/main/external-crates/move/README.md)]: 1. **Move 源语言(S…
Q: walrusClient.writeFiles() is the cleanest API for file uploads — a single call with just a few lines: walrusClient.writeFiles({ deletable: true, signer, // ... });, but i use enoki and i dont have signer
A: This is a real challenge when using Enoki, since Enoki abstracts away the keypair and doesn't expose a raw `Signer` object directly. Based on the knowledge sources available, here are two approaches …
Q: I've imported it. how to change its alias?
A: Once your key is imported, you can update its alias using: ```sh sui keytool update-alias ``` If you don't provide a new alias, a random one will be generated automatically. …
Q: error when I tried to publish: `Error executing transaction 'HL45jgjdvtn5Q8rrnQ7SUERtKHaqADNF9rqJzDgZkHLG': VMVerificationOrDeserializationError in command 0`
A: This is the same `VMVerificationOrDeserializationError in command 0` error we discussed previously, occurring during package publish. Here's a focused checklist to debug it: ### Common causes | Erro…
Q: I have a Move package that I will publish on testnet simply with the cli, but will publish on mainnet with the help of the security team via their multisig process (I will provide them with the tx-bytes and they will execute them) I would like to register that package on MVR. (both for testnet and
A: The knowledge sources provided don't contain enough detail about the MVR registration process itself (the specific steps, what capabilities are required, whether the `UpgradeCap` is needed for MVR reg…
Q: what is address alias feature?
A: ## Address Aliases on Sui Address aliases on Sui serve two distinct purposes: ### 1. CLI Aliases (Human-Readable Names) In the Sui CLI, an *alias* is a human-readable name that can be used in place…
Q: bridge_seq_num (different BridgeMessageKey
A: ## `bridge_seq_num` in `BridgeMessageKey` In Sui's native bridge, `BridgeMessageKey` is a struct used to uniquely identify a bridge message. It has three fields: ```move public struct BridgeMessageK…
Q: Can a while loop be used in a Sui ptb?
A: No, a `while` loop (or any loop construct) cannot be used directly in a Sui Programmable Transaction Block (PTB). PTBs do not support intricate programming patterns such as loops. As the documentation…
Q: # sui client switch --env testnet sui client publish --build-env testnet --gas-budget 200000000 Active environment switched to [testnet] [NOTE] Updating dependencies for `testnet` environment because "./Move.toml" has been changed since the last update. The package has unpublished dependencies. If y
A: The error persists, which suggests the `dep-replacements` configuration isn't being picked up correctly. Let me address your question about `--with-unpublished-dependencies` first, then help you fix t…
Q: this is my move.toml [package] name = "alliance_protocol" edition = "2024" # edition = "legacy" to use legacy (pre-2024) Move # license = "" # e.g., "MIT", "GPL", "Apache 2.0" # authors = ["..."] # e.g., ["Joe Smith (joesmith@noemail.com)", "John Snow (johnsnow@noemail.com)"]
A: Your `Move.toml` looks like a valid new-format (post-v1.63) manifest. Here are a few observations and suggestions: ### What looks good - Using `edition = "2024"` is correct. - The `[environments]` se…
Q: ┌─[cabel@parrot]─[~] └──╼ $curl -sSfL \ https://raw.githubusercontent.com/Mystenlabs/suiup/main/install.sh \ | sh suiup installer script This script will install the suiup binary to your system. Detected OS: linux Detected architecture: x86_64 Latest version: v0.0.10 Download URL: https://github
A: The installer is warning you that a `sui` binary already exists on your system (likely installed via a package manager), which could conflict with the `suiup`-managed version. Here's what to do: ## S…
Q: Can you explain what does the copy ability do?
A: ## The `copy` Ability in Sui Move The `copy` ability allows values of a type to be **duplicated or copied**. Without it, Move types are linear by default — meaning they can only be moved, not copied.…
Q: What is object display? why it's used?
A: ## Sui Object Display **Object Display** is a standard on Sui that provides a way to render any on-chain object using a templating syntax. It renders Sui Move object values into human-readable string…
Q: testnet rpc nodes
A: Here are the Sui Testnet RPC endpoints: - **Full node RPC URL:** `https://fullnode.testnet.sui.io:443` [[Sui Networks](https://docs.sui.io/concepts/sui-architecture/networks)] This endpoint can be u…
Q: What is Mysticeti?
A: Mysticeti is the consensus protocol that powers the Sui blockchain. It is a high-throughput, Byzantine Fault Tolerant (BFT) protocol based on a **Directed Acyclic Graph (DAG)** architecture. [[Sui Glo…
Q: How does the Sui Bridge, Wormhole Connect, Wormhole Portal Bridge, and ZetaChain, works? And the use of the 2 VM IN Available Commands Command Description tx.splitCoins(coin, amounts) Splits a coin into new coins of specified amounts tx.mergeCoins(destinationCoin, sourceCoins) Merges multiple coins
A: ## Sui Bridging Options & PTB Commands ### 1. Sui Bridge (Native) The native bridge is built into Sui's core architecture, operated and governed by Sui validators. It uses a **burn/mint model** on S…
Q: can i use cli to brifge
A: Based on the knowledge sources available, there is no mention of a direct `sui` CLI command to perform bridge token transfers (i.e., moving assets between Ethereum and Sui). The CLI tools documented …
Q: can you give me graphql queryt o fethc digest all query evrytdetails 4WxctB9ENQMy567x8FzXbT7wTx3VvFXbaWKg5c2bWi7o
A: Here's a GraphQL query to fetch full details for the transaction digest `4WxctB9ENQMy567x8FzXbT7wTx3VvFXbaWKg5c2bWi7o`: ```graphql query { transaction(digest: "4WxctB9ENQMy567x8FzXbT7wTx3VvFXbaWKg5…
Q: what's a computation bucket?
A: Sui uses a **bucketing mechanism** to calculate computation gas costs. Rather than charging the exact number of computation units a transaction uses, Sui groups transactions into predefined ranges (bu…
Q: what's the max gas limit in sui?
A: The maximum gas budget (gas limit) on Sui is **50 billion MIST (50 SUI)**. [[Gas Fees](https://docs.sui.io/concepts/tokenomics/gas-in-sui#gas-budgets)] This cap exists to protect the network against …
#2 188 questions high priority

Move Smart Contract Development

Move is the core language; gaps in capabilities, enums, and error patterns block developers daily.

Show 197 questions
Q: how to optimize gas in move contracts?
A: Here are the key strategies for optimizing gas in Move contracts on Sui: ## 1. Choose Efficient Data Structures - Use **`vector`-backed collections** (`VecSet`, `VecMap`, etc.) only for collections …
Q: So macros can't abort?
A: Actually, macros **can** abort — and they handle aborts in a particularly useful way. ## Macros and Aborts Macros can use both `abort` and `assert!` directly in their bodies. In fact, the `assert!` …
Q: mvr 怎么发布,怎么使用,举个具体的例子
A: ## MVR 的发布与使用 ### 第一步:发布你的 Move 包 在注册到 MVR 之前,你需要先将包发布到链上。 ```bash sui client publish ``` 发布成功后,系统会自动生成/更新 `Published.toml` 文件,记录链上地址、upgrade capability 等信息。例如: ```toml [published.mainnet] chain-…
Q: ### Capability Leakage via Events **Severity:** High Event-based capability leakage occurs when a module emits a capability struct, its object ID, or internal fields as part of an on-chain event. This happens because developers treat events as passive logging, forgetting that on Sui, [every emitte
A: The scenario described contains a **fundamental misunderstanding** of how Sui events and object ownership work. Let me clarify based on the knowledge sources: ## Why This Is Not a Valid Attack Vector…
Q: Can I create display on init?
A: No, you cannot create a Display V2 in `init`. The `DisplayRegistry` is a shared system object, and `init` functions cannot receive shared objects as arguments. [[Display Hero README](https://github.co…
Q: Wasnt "The Move Book" for Dieam only
A: No, **The Move Book** is specifically for Move on Sui, not Diem. The knowledge sources are clear on this: > "This is The Move Book - a comprehensive guide to the Move programming language and the **S…
Q: どうやってeventをfetchする?
A: Sui でイベントを取得する方法は主に3つあります。 ## 1. JSON-RPC(`suix_queryEvents`) `curl` などで直接 RPC を叩く方法です [[Processing events](https://docs.sui.io/develop/accessing-data/using-events#processing-events)]: ```sh curl -…
Q: keytool import
A: `sui keytool import` 可以將助記詞(mnemonic)或 Bech32 格式的私鑰加入到 Sui CLI 的本地 Keystore。 ## 基本語法 ```sh sui keytool import INPUT KEY_SCHEME ``` - `INPUT`:助記詞(12/15/18/21/24 個單字)或 Bech32 編碼的私鑰(以 `suiprivkey` 開頭)…
Q: Documentation and example about Sponsor Tx (without using Enoki)
A: ## Sponsored Transactions on Sui (Without Enoki) ### Overview A sponsored transaction allows a **sponsor** to pay gas fees on behalf of a **user**. This removes the need for users to hold SUI or und…
Q: does init function require otw anymore?
A: No, the `init` function does **not** require a One-Time Witness (OTW) — it is optional. According to the Move Book, the `init` function can take one or two arguments: [[module initializer](https://mo…
Q: running this where?
A: Based on the conversation history, you're asking where to run the `suiup` installation commands. You run these commands in your **terminal / command-line interface**, depending on your operating syst…
Q: Yeah but what about these concerns: Finalize is still O(n) (send_funds per winner) → gas / step limits still matter for very large n. Product / UX: wallets and indexers must surface accumulated balance and the redeem PTB flow (you already rely on this ecosystem for other coins per tests). Yo
A: These are valid technical concerns. Let me address each one based strictly on what the knowledge sources support: ## 1. O(n) Finalization / Gas Limits This concern is well-founded. The knowledge sou…
Q: How much params can put in function per tx
A: Based on the knowledge sources, there are a couple of relevant limits for function parameters per transaction on Sui: - **Maximum number of arguments in a Move call** (or a PTB's `TransferObjects` co…
Q: how to use sui mcp server for vscode
A: The knowledge sources provided do not contain any information about a "Sui MCP server" for VS Code. The documents cover VS Code extensions for Move development (like the Move Analyzer by Mysten Labs a…
Q: Can you point me to the specifications of this method? I need the transaction fields
A: Based on the conversation context, you're asking about the fields available on the `Transaction` type returned by the `transactions` GraphQL query. ## `Transaction` Type Fields [[Transaction type](h…
Q: Ok, this is impossible, where can I find a public graph ql sui node?
A: No worries! Sui provides public GraphQL RPC endpoints for each network: - **Mainnet:** `https://graphql.mainnet.sui.io/graphql` - **Testnet:** `https://graphql.testnet.sui.io/graphql` - **Devnet:** `…
Q: query data from sui public node
A: There are two primary ways to query data from a Sui public node: **gRPC** and **GraphQL RPC**. Note that JSON-RPC is **deprecated** and you should migrate away from it. [[Data Access Interfaces](https…
Q: Can you give me an example of how I can query balances with these new RPC? USing https://suiscan.xyz/mainnet/tx/GxqDrsyQCoGEz8GAUURhdBw2xKg61fKhXmtAn73yGpHc as a reference
A: Here are practical examples for querying balances using the current RPC options: ## TypeScript SDK (gRPC Client) ```typescript import { SuiGrpcClient } from '@mysten/sui/grpc'; const grpcClient = n…
Q: There are a few generic changes: What You Need to Change 1. Client Setup Replace SuiClient / SuiJsonRpcClient with SuiGrpcClient: // Before import { SuiClient, getFullnodeUrl } from '@mysten/sui/client'; const client = new SuiClient({ url: getFullnodeUrl('mainnet') }); // After import { SuiGrpcCli
A: Yes, your summary is accurate. Here's a quick verification of each point against the official documentation: ## Verification **1. Client Setup** ✅ The migration from `SuiClient`/`SuiJsonRpcClient`…
Q: Mysten Labs' indexer
A: Mysten Labs provides several indexer solutions for the Sui ecosystem: ## General-Purpose Indexer (`sui-indexer-alt`) This is the primary indexer that reads checkpoint data and writes it to a Postgre…
Q: What is the format of package binary that is stored on chain?
A: Based on the knowledge sources, here is what is documented about the on-chain format of a Move package binary: ## On-Chain Package Binary Format ### Object-level structure A Move package is stored …
Q: what is the sui mainnet full node url
A: The Sui Mainnet full node URL is: ``` https://fullnode.mainnet.sui.io:443 ``` [[Sui Networks](https://docs.sui.io/develop/sui-architecture/networks)]
Q: How about package? If we update a new package?
A: Unlike regular objects, **packages behave differently when upgraded — they get a new address (package ID) each time**. When you upgrade a package on Sui, a **new package object is created onchain** w…
Q: how can i get a sui address from a public key
A: A Sui address is derived by hashing the **signature scheme flag byte concatenated with the public key bytes** (`flag || pubkey`) using the **BLAKE2b** (256-bit output) hashing function. The result is …
Q: importExtension: "",
A: Câu hỏi của bạn chỉ chứa đoạn code `importExtension: "",` mà không có đủ ngữ cảnh để tôi hiểu bạn đang hỏi gì. Bạn có thể cung cấp thêm thông tin không? Ví dụ: - Đây là đoạn code từ file nào? - Bạn đ…
Q: giải thích về Consensus
A: ## Consensus trên Sui **Consensus** (đồng thuận) là quá trình mà phần lớn các node trên mạng blockchain đồng ý về trạng thái hiện tại của mạng, bao gồm các giao dịch nào cần được hoàn tất và ghi vào …
Q: Give me the best skills for Sui Network that will worrk with Claude, I want everything for Sui Node API, Move Programming and Indexing Sui Node data
A: Based on the knowledge sources, here's what's available for Sui skills and tooling across your three areas of interest: ## Sui Agent Skills (Claude Code Compatible) Install the Sui skills into Claud…
Q: why to create balance manager
A: The `BalanceManager` is a core component of DeepBook V3. Here's why you need one: - **Holds all your trading assets:** It's a shared object that holds all balances for different assets (base, quote, …
Q: best sui wallets
A: Here's an overview of the most popular wallets in the Sui ecosystem: ## Official Wallet - **[Slush](https://slush.app/)** – Built by Mysten Labs, it's the official Sui wallet. Available as a Chrome …
Q: What causes the FeatureNotYetSupported error in a Sui upgrade transaction command 1?
A:
Q: On-chain reputation system and identity score for DeFi lending on Sui
A:
Q: What is SEAL on Sui and how does it provide decentralized secrets management or threshold encryption?
A:
Q: What is Walrus decentralized storage on Sui and what applications can it enable?
A:
Q: what's the equivalent of suix_getStakesByIds (from RPC), when using gRPC?
A: Based on the knowledge sources, `getStakesByIds` does **not** have a direct gRPC equivalent. It falls under the category of methods that require using **GraphQL** instead. The recommended replacement…
Q: what is usdsui?
A: **USDsui (Sui Dollar)** is a native stablecoin for the Sui ecosystem, issued by **Bridge**, a Stripe company. [[Sui Dollar Live](https://blog.sui.io/sui-dollar-launch-bridge/)] Here are the key detai…
Q: from app.services.TRON.tron import get_tron_transactions from app.services.POLYGON.polygon import get_polygon_transactions from app.services.SOLANA.solana import get_solana_transactions class BlockchainManager: async def get_transactions( self, chain, wallet, ne
A: I appreciate you sharing your code, but I'm only able to answer questions about **Sui** — the Layer 1 blockchain developed by Mysten Labs. Your query is about building a multi-chain transaction servic…
Q: ok i need to faucet for both for usdc and usdt for testnet
A: The knowledge sources I have access to only cover the **SUI token faucet** (for gas fees), not faucets specifically for USDC or USDT on Testnet. ## Getting Testnet SUI (for gas) You can get Testnet …
Q: is this correct? Key findings: - 0xab7b... doesn't exist on-chain — it's not a real object - User has 1 SUI coin (0xb7cfa4...) with 0.5 SUI
A: Your analysis is partially correct, but there's an important nuance to clarify based on the documentation. **What's accurate:** - If `fundsInAddressBalance: "0"` and the user has no address balance, …
Q: What is the limit for mysten-labs' rpc nodes?
A: The public RPC endpoints maintained by Mysten Labs (`fullnode..sui.io:443`) are rate-limited to **100 requests per 30 seconds**. [[RPC Best Practices](https://docs.sui.io/references/sui-api/r…
Q: give me a bash script that uses sui cli to tell me the last checkpoint that occurred before user given timestamp in milliseconds
A: The knowledge sources don't provide enough detail about a direct Sui CLI command that maps a timestamp to a checkpoint sequence number. However, based on what the sources do tell us — that Sui creates…
Q: '0x2::sui::SUI' 在链上的真实权限定名是什么
A: `0x2::sui::SUI` 就是 SUI 代币类型的完全限定名(fully-qualified name)。其中: - `0x2` 是 Sui Framework 的链上地址(命名地址 `sui` 的实际值) [[Reserved Addresses](https://move-book.com/appendix/reserved-addresses/)] - `sui` 是模块名 - `S…
Q: suiup install move-analyzer
A: The command `suiup install move-analyzer` installs the **Move Analyzer** — the Move Language Server that provides code completion, go-to-definition, hover information, and diagnostics for Move smart c…
Q: Explain display v2 literal and give examples for different commonly used types
A: ## Display V2 Literals In Sui's Object Display V2 template language, a **literal** is a concrete, typed value written directly in a format string expression — rather than referencing a field from an …
Q: so if I was storing a users hidden assets in a DB, would it be fine to just store the objectId or would i store it per network
A: Based on the previous answer, you should **store the object ID together with the network identifier** — not the object ID alone. As established, the same object ID can exist on multiple Sui networks …
Q: How do I get a list of transaction digests that used a given package? (either directly or as a dependency). Even just one (the most recent one) would be enough.
A: You can use the Sui GraphQL API to find transactions that interacted with a given package. The most relevant filter available is `function`, which lets you filter transactions by a specific function i…
Q: hi
A: Hi there! How can I help you with Sui today? Feel free to ask any questions about Sui development, smart contracts, transactions, or anything else related to the Sui blockchain.
Q: could you give me the flow when I build the front-end and contract in testnet of Sui environment. How I sync my wallet into the frontend, and do I need zkLogin for this step
A: ## Building a Sui Frontend + Contract on Testnet Here's the general flow for connecting a frontend to a Move package on Sui Testnet: --- ### 1. Deploy Your Move Package Before building the fronten…
Q: ZKLogin what is it ?
A: ## What is zkLogin? zkLogin is a **Sui-native primitive** that enables you to send transactions from a Sui address using an OAuth credential (like Google or Facebook) **without publicly linking the t…
Q: give me an example of curl for getting total supply
A: Here's a curl example for getting the total supply of a coin using the GraphQL API: ```bash curl -X POST https://sui-mainnet.mystenlabs.com/graphql \ -H 'Content-Type: application/json' \ -d '{ …
Q: is there something like coin::mint_for_testing for balance?
A: Yes! The equivalent for `Balance` is `balance::create_for_testing(value)`. Here's an example: ```move use sui::balance; use sui::sui::SUI; #[test] fun test_balance() { // Create a balance dir…
Q: get struct by id for test purpose
A: Based on the conversation history, you're asking how to retrieve a struct (object) by its ID in a test context in Sui Move. ## Getting a Struct by ID in Tests In Sui Move tests, you use `test_scenar…
Q: what is the full function name and module for vector.to_string()?
A: The `.to_string()` method on `vector` is an alias that calls the `utf8` function from the `std::string` module. - **Full function name:** `std::string::utf8` - **Signature:** ```move public f…
Q: why would you use a one time witness on currency creation?
A: Using a One-Time Witness (OTW) during currency creation provides a **uniqueness guarantee**: it cryptographically proves that only one `TreasuryCap` can ever exist for that coin type. [[One Time Witne…
Q: .mv 是什么文件
A: `.mv` 文件是 Move 模块编译后生成的**字节码文件**。 具体来说: - Move 是一种编译型语言,源代码(`.move` 文件)经过编译器处理后,会生成 `.mv` 格式的字节码文件。[[Compiling the Package](https://move-book.com/your-first-move/hello-world/#compiling-the-package)]…
Q: so we don't need the otw anymore?
A: Correct — the OTW approach is no longer required. The **standard creation** method (`coin_registry::new_currency`) is the recommended approach for most cases, and the documentation explicitly notes: …
Q: can you provide me the code that takes a vector of u8 for a function that returns the length?
A: Here's a Move function that takes a `vector` and returns its length, based on the `std::vector` module: ```move public fun get_length(data: vector): u64 { data.length() } ``` The `length…
Q: how can i know what value should i place in the test net move toml
A: Here's what you need to know about setting up your `Move.toml` for Testnet: ## Key Values for Testnet `Move.toml` ### 1. Package Address (`[addresses]`) Set your package's address to `"0x0"` before …
Q: if i have getters anyway for the fields, is it better to return a mutable ref to read value and alter it or use the getter and then the setter
A: Great follow-up question. Here's the practical distinction: ## Returning `&mut` (read + write via one reference) ```move let r = treasury_pool_info.staker_shares_amount_mut(); let old_value = *r; …
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: emit
A: In Sui Move, **emitting events** is the primary way to notify off-chain listeners (indexers, explorers, etc.) about on-chain activity. There are two ways to emit events: ## 1. `event::emit` (Standard…
Q: where in documentation we are specifieng something about dry run
A: Dry run is mentioned in several places across the Sui documentation and tooling: ## Sui CLI - **`sui client call`**: Use the `--dry-run` flag to perform a dry run of a Move call without executing it…
Q: what is a smart contract?
A: A **smart contract** on Sui is an agreement based upon the protocol for conducting transactions on the blockchain, written in the **Move programming language**. [[Sui Glossary](https://github.com/Myst…
Q: what move.toml
A: ## What is `Move.toml`? `Move.toml` is the **manifest file** for a Move package. It describes the package and its dependencies, and is required for any directory to be considered a Move package. It i…
Q: How to define error codes so that they are more meaningful beyond just a number
A: In Move on Sui, there are two main approaches to make error codes more meaningful than plain numbers: ## 1. Named Error Constants (Classic Approach) Define `const` values prefixed with `E` and a cam…
Q: what is the address of coin metadata object id of Sui coin in testnet
A: The knowledge sources do not explicitly provide the specific object ID of the `CoinMetadata` object for the native SUI coin on **testnet**. What the knowledge sources do tell us is: - The **`CoinReg…
Q: what is sui, explain it to me as if i was a child
A: Imagine the internet is like a big playground. Right now, most playgrounds are owned by big companies — they make the rules, they hold your toys, and if they decide to close the playground, you lose a…
Q: Packages with old-style Move.toml files cannot depend on new-style packages. See https://docs.sui.io/references/package-managers/package-manager-migration for instructions.
A: As noted in my previous response, the knowledge sources do not support the claim that old-style packages *cannot* depend on new-style packages. The official migration guide explicitly states: > "Alth…
Q: how can I create ascii string in sui move?
A: You can create an `std::ascii::String` in Sui Move in two ways: ### 1. `ascii::string` — aborts if invalid ASCII Use this when you're confident the bytes are valid ASCII: ```move use std::ascii; l…
Q: what is move.lock?
A: `Move.lock` is an auto-generated file created at the root of a Move package when the package is built. Here's what you need to know about it: ## What it does - **Pins dependencies**: It records the …
Q: move.lock
A: ## Move.lock in Sui The `Move.lock` file is an auto-generated file created at the root of a Move package when the package is built. Here's what you need to know about it: ### What it does - It **pi…
Q: 怎么在python里面调用这个 unsafe_payAllSui
A: 很抱歉,当前提供的知识来源中没有关于如何在 Python 中调用 `unsafe_payAllSui`(或任何 Sui JSON-RPC 方法)的具体代码示例或详细说明。 知识来源中仅提到了以下关于 `sui_payAllSui` 的功能描述: > 该方法接受一个 SUI token ID 数组,将所有现有 token 合并为一个,扣除 gas 费用后,将合并后的 token 发送给收款地址。…
Q: I cant find wss for sui, can you help. Is it still working?
A: WebSocket (WSS) support for Sui has been **deprecated**. It was part of the old JSON-RPC stack, and that WebSocket support has been replaced. The replacement for real-time streaming data is the **gRP…
Q: using graphql can you query old event emitted?
A: Yes, you can query historical events using the Sui GraphQL API. Here's what you need to know: ## Querying Events via GraphQL You can filter events by checkpoint range using `afterCheckpoint`, `atChe…
Q: how to fetch dynamic object fields from an object in sui cli?
A: You can use the Sui CLI command `sui client dynamic-field ` to list the dynamic fields of an object. [[Sui Client CLI](https://github.com/MystenLabs/sui/blob/main/docs/content/references/cl…
Q: sui-groups PermissionedGroup Move contract membership permissions actor pattern MystenLabs
A:
Q: Move.lock file should be committed to git and automated address management in Sui packages
A:
Q: is there an equivalevnt function for Balance like burn for Coin?
A: Yes! The equivalent of `coin::burn` for `Balance` is **`balance::decrease_supply`**. It burns a `Balance` and decreases the corresponding `Supply`: ```move public fun decrease_supply(self: &…
Q: Θα είναι ανοιχτό το sui hub Athens την άλλη παρασκευή;
A: Λυπάμαι, αλλά οι διαθέσιμες πηγές πληροφοριών δεν περιέχουν στοιχεία σχετικά με το ωράριο λειτουργίας ή το πρόγραμμα εκδηλώσεων του SuiHub Athens για συγκεκριμένες ημερομηνίες. [[SuiHub Athens](https:…
Q: So yes — if your net gas fees are -0.5 SUI, you would effectively receive 0.5 SUI credited back to your wallet. is this somewhere stated in the documentation
A: Yes, this is supported by the official Sui documentation. Here are the relevant references: **1. The net gas fee formula is explicitly stated:** > *"the net fees that a user pays equals gas fees min…
Q: Πότε μπορώ να επισκεφτώ το sui hub στην Αθήνα;
A: Το SuiHub Αθήνα είναι ήδη ανοιχτό! Βρίσκεται σε ένα αποκατεστημένο νεοκλασικό κτίριο στην Αθήνα και λειτουργεί ως χώρος δημιουργίας, μάθησης και συνεργασίας για developers και builders. [[SuiHub Athen…
Q: fullnode url?
A: Here are the Sui full node RPC URLs for each network: | Network | Full Node URL | |---------|--------------| | **Mainnet** | `https://fullnode.mainnet.sui.io:443` | | **Testnet** | `https://fullnode.…
Q: is there any part of documentation that is more deeply talkign about this
A: Based on the knowledge sources available, here are some deeper resources on gas estimation and transaction simulation in Sui: ## Deeper Documentation Resources ### Sui Move Bootcamp (C2 Module) The …
Q: For reference: coinsFieldMask = &fieldmaskpb.FieldMask{ Paths: []string{ "object_id", "version", "digest", "object_type", "previous_transaction", "balance", }, }
A: Great reference! That confirms the valid `read_mask` paths for coin objects. Here's the updated `grpcurl` command using those exact field paths: ```shell grpcurl -d '{ "owner": "0xb40fa5e391458996a…
Q: Whe I iwll se the port? after indexing?
A: Yes, the gRPC port becomes accessible **after the initial gRPC indexing phase completes**. As noted in the full node documentation: > "During the initial gRPC indexing phase, your full node may not b…
Q: why not use 100.do!?
A: Great point! You *can* use `100u8.do!` (or any uint's `.do!` macro) for a cleaner, more readable loop. However, there's a key limitation here: the `.do!` macro always runs **exactly** N times — it doe…
Q: walrus publisher \ --bind-address "127.0.0.1:31415" \ --sub-wallets-dir ~/.config/walrus/publisher-wallets \ --n-clients 4 \ --max-body-size 1048576 for aggreagtoe acn you tell ,e
A: It looks like you're asking about the equivalent setup for running a **Walrus aggregator** locally. Here's how: ## Run an Aggregator Locally ```bash walrus aggregator --bind-address "127.0.0.1:31415…
Q: public struct TOKEN_TEMPLATE has drop {} fun init(otw: TOKEN_TEMPLATE, ctx: &mut TxContext) { let (cap, deny_cap, metadata_cap) = init_treasury(otw, ctx); // Transfer caps to deployer. The admin registers these // into the institution's Treasury via admin::register_coin. transfer::
A: No, you cannot return values from a Move `init` function. The `init` function has strict rules: it must be **private**, have **no return values**, and takes only one or two arguments (an optional One…
Q: how to write sui move project
A: Here's how to create and write a Sui Move project: ## 1. Prerequisites - Install the Sui CLI ([installation guide](https://docs.sui.io/guides/developer/getting-started/sui-install)) - Verify install…
Q: what is your performance benchmark
A: Sui’s consensus protocol, Mysticeti, has been benchmarked in controlled environments as follows: - With **10 nodes**: - Up to **300,000 transactions per second (TPS)** before latency exceeds **1 …
Q: Φτιάξε μου πάλι το μνμ για το πρότζεκτ για συνάντηση στο χαμπ
A: Δεν υπάρχει κάτι στα knowledge sources για συγκεκριμένο “χαμπ” ή το πρότζεκτ σου, οπότε δεν μπορώ να βασιστώ σε επίσημες λεπτομέρειες. Θα σου δώσω ένα γενικό, σύντομο μήνυμα που μπορείς να προσαρμόσει…
Q: Γιατί δεν υπάρχει μια απλή φόρμα επικοινωνίας ρε μαν;έχει κλείσει το hub?
A: Δεν υπάρχει καμία αναφορά στις πηγές για «απλή φόρμα επικοινωνίας» ή για το αν κάποιο συγκεκριμένο hub έχει κλείσει, οπότε δεν μπορώ να το επιβεβαιώσω ή να το διαψεύσω με σιγουριά. Αυτό που προκύπτει…
Q: What is this passkey, explain in simple terms
A: On Sui, **passkey** is a new way to have a wallet and sign transactions **using your device’s built‑in login** (Face ID, fingerprint, PIN, or a hardware key) instead of seed phrases or visible private…
Q: 我使用的2.13版本为啥没有ledgerService.getValidators这个方法
A: 我能从文档里确认两点,但文档没有给出你这个具体版本(2.13)的 API 结构细节,所以下面是基于现有资料的推断和说明: 1. 官方迁移文档明确写了: JSON‑RPC 的 `getValidatorsApy` 需要用 gRPC 的 `ledgerService.getValidators` 来替代。[[Methods gRPC](https://sdk.mystenlabs.com/…
Q: Sui Move object ownership patterns shared objects transfer restrictions
A:
Q: what's the best way to fetch old txs? like 6 months old or more
A: To fetch transactions that are 6+ months old, you should rely on **archival infrastructure**, not just a regular full node or vanilla GraphQL indexer: 1. **Use the Archival Service (gRPC)** - Th…
Q: Question Where to Find Answer Q3.1 Does the DeepBook V1 documentation specify that self-trades are prevented? DeepBook V1 design docs (if available). Q3.2 Is the self_matching_prevention field in the Order struct actually enforced during order matching? clob.move code (order matching function). Q3.3
A: ### Finding Q3: DeepBook and self‑trading **Q3.1 – Does DeepBook V1 documentation specify that self‑trades are prevented?** The provided knowledge only includes: - The original `deepbook::clob` (so…
Q: sự khác nhau của chúng là gì và nên sử dụng cái nào cho Seal SDK: import { SuiGraphQLClient } from '@mysten/sui/graphql'; import { SuiGrpcClient } from '@mysten/sui/grpc'; import { SuiJsonRpcClient } from '@mysten/sui/jsonRpc'; import { env } from '../config'; export const suiGrpcClient: SuiGrpcCli
A: Khác nhau chính nằm ở **API mà mỗi client nói chuyện với** và **trạng thái hỗ trợ**: ### 1. SuiGrpcClient (gRPC) – khuyến nghị dùng - Kết nối tới **Full Node gRPC API**. [[Sui clients](https://sdk.m…
Q: What are the user and market level of sui?
A: Sui’s current user and market levels, based on the provided sources, can be summarized as follows: ### User level / adoption - **Active accounts** - Sui went from under 10 million active account…
Q: how to generate sdk from contracts and where it should be placed? frontend or api or else?
A: You can generate a TypeScript SDK from your Move contracts using the `@mysten/codegen` tool, and then import that generated code wherever you build transactions (frontend, backend API, or a shared pac…
Q: get object
A: To get an object on Sui, you have a few options depending on the interface you’re using. --- ### 1. Using the Sui TypeScript SDK (Core client) Fetch a single object by ID: ```ts const { object } =…
Q: Provide me the code snippet that accepts as input a vector of u8 and return the third element ensring that. the length is greater than or equal to 3
A: Here's a Move code snippet that accepts a `vector` as input and returns the third element, aborting if the length is less than 3: ```move public fun get_third_element(v: &vector): u8 { as…
Q: if a package p1 has a buggy function and it was upgraded to p2 with correct fix. how can i disable the buggy function in p1?
A: On Sui, **you cannot directly modify or disable a function in an already-published package** — packages are immutable once deployed, and old versions remain on-chain forever. [[package overview](https…
Q: So if I have these 2 tests: #[random_test] fun test_u8_lookup_table(number: u8) { u8::is_power_of_ten_lookup_table(number); } #[random_test] fun test_u8_optimized(number: u8) { u8::is_power_of_ten_optimized(number); } Will they be ran with the same inputs? Or is it possible that each of th
A: Based on the knowledge sources, I cannot give you a definitive answer about whether two separate `#[random_test]` functions will receive the same inputs across runs. What the knowledge sources do tel…
Q: 啊 如果我沒有treasury cap 怎麼辦
A: 根據你的情境,如果你沒有 `TreasuryCap`,有以下幾種情況需要區分: ## 情況一:你的 SUIX 代幣是用 `coin::create_currency` 建立的 `TreasuryCap` 是在呼叫 `coin::create_currency` 時由合約發布者收到的。[[Coin Standard](https://github.com/MystenLabs/sui/blob/…
Q: 所谓的Coin可以“集成到应用中”,是什么意思?
A: 这里"集成到应用中"(store in any application)的意思,是指 `Coin` 拥有 `key + store` 两种能力,因此它可以: 1. **被包装(Wrapped)进其他对象**:即作为另一个 Move 对象的字段存储,例如放入一个共享的托管合约或流动性池对象中。 2. **作为动态字段(Dynamic Field)存储**:可以将 `Coin` 附加到…
Q: is it use narwhal and Bullshark
A: No, Sui **no longer uses Narwhal and Bullshark**. Those were earlier consensus components that Sui was built upon, but the network has since moved to a newer protocol. ## Current Consensus: Mysticeti…
Q: how to convert binary to string
A: In Move on Sui, the standard library provides `to_string` functions for all unsigned integer types that convert a number to its decimal string representation. These are available for `u8`, `u16`, `u32…
Q: HOT是什么概念?
A: # Hot Potato(热土豆)模式 在 Sui 的 Move 语言中,**Hot Potato** 是指一个**没有任何能力(abilities)的结构体**。具体来说,它没有 `copy`、`drop`、`key` 或 `store` 这四种能力中的任何一种。[[Hot Potato Pattern](https://move-book.com/programmability/hot-po…
Q: TTO是什么?
A: **TTO(Transfer to Object)** 是 Sui 上的一种机制,允许将一个对象转移给另一个对象(而不仅仅是地址)。[[Transfer to Object](https://docs.sui.io/guides/developer/objects/transfers/transfer-to-object)] ## 核心原理 Sui 不区分 32 字节的**地址 ID** 和 …
Q: không có checksEnabled trong simulateTransaction
A: Vấn đề là bạn đang gọi `this.suiGrpcClient.simulateTransaction(...)` trực tiếp trên native gRPC client, trong khi `checksEnabled` chỉ có trên **Core API** (`client.core.simulateTransaction`). [[transa…
Q: how can I update a existing env's rpc-url using sui cli?
A: The knowledge sources do not explicitly mention a direct command to **update** an existing environment's RPC URL in place. However, based on the available documentation, the standard approach is to **…
Q: sui_getTransactionBlock
A: The `sui_getTransactionBlock` is a JSON-RPC method used to fetch a transaction by its digest from a Sui full node. ## Usage It is a **direct lookup** RPC call that doesn't depend on additional index…
Q: let user_接著寫下去,不要寫重複的東西
A: 以下是從斷點處接續的完整程式碼: ```move let user_tokens: u64; if (table::contains(&pad.priority_allocations, sender)) { user_tokens = *table::borrow(&pad.priority_allocations, sender); asse…
Q: upgrade sui
A: # Upgrading a Sui Package Here's a concise overview of how to upgrade a Move package on Sui. ## Key Concepts Sui packages are **immutable objects**, but you can publish new versions linked to the o…
Q: Those tips are for the standalone indexer framework (sui-indexer-alt), not the built-in JSON-RPC indexer running inside your sui-node process
A: You're correct. The tips I provided in my previous answer are specifically for the standalone indexer framework (`sui-indexer-alt` / `sui-kvstore-alt`), not for the built-in indexer that runs inside t…
Q: como podria eliminar el mismatch restante y el faltante de escalado de quantities en order updates
A: Basándome en la documentación del indexer de DeepBook V3, aquí está la solución: ## Obtener `tick_size` y `base_asset_decimals` desde `/get_pools` El endpoint `/get_pools` devuelve exactamente los d…
Q: published.mainnet] chain-id = "35834a8a" published-at = "0x9eb4ce3b2c745cdae1eb360b76af2e97025c516f5020b933d2f77167e5318500" original-id = "0x14bd61802d31291fb410bd75757e3347221bf8019707307e5926afeebf4667cf" version = 3
A: Looking at your `Published.toml` entry, the issue is now clear: ```toml [published.mainnet] chain-id = "35834a8a" published-at = "0x9eb4ce3b2c745cdae1eb360b76af2e97025c516f5020b933d2f77167e5318500" o…
Q: where is sui faucet for testnet
A: The official Sui Testnet faucet is available at **https://faucet.sui.io/** [[Sui Faucet](https://docs.sui.io/guides/developer/getting-started/get-coins#online-faucet)] **How to use it:** 1. Connect y…
Q: i mean a parent and child isnt that just wrapper relationship
A: No, they're actually two different things on Sui — even though they can look similar at first glance. ## Wrapping (what `SharedBlob` does) A wrapped object is **directly embedded as a field** inside…
Q: How does Object versions works? Can Objects can change between load time and execution time
A: ## Object Versioning in Sui ### How Versions Work Every object on Sui is referenced by an **(ID, version)** pair. Key properties: - Each object has an **8-byte unsigned integer version** that monot…
Q: 你現在是一位資深的 Web3 智能合約架構師,精通 Sui Move (2024 Edition) 語法。 我正在開發一個名為「Robinhood.Pad」的 Launchpad 平台,請幫我撰寫核心的打新智能合約。 合約需求如下: 1. 模組名稱為 `launchpad`。 2. 需要定義三個核心 Object: - `AdminCap` (具有 key, store):在 init 時發送給部署者,作為管理員權限。 - `LaunchpadPool` (具有 key):作為共享物件(Shared Object)。內部需包含:
A: 感謝您的詳細需求說明!不過,我需要先說明一點:**您要求我扮演特定角色(「資深 Web3 智能合約架構師」)**,這超出了我的設計範圍,我只能以 Sui 技術助手的身份回答。 此外,您的需求涉及許多具體的 Move 實作細節,我只能根據知識來源中有明確支持的模式來提供程式碼。以下是基於知識來源中的 **Capability 模式**、**Shared Object 模式**、以及 **Coin/…
Q: give me the typescript sdk for graphql
A: Here's how to use the Sui TypeScript SDK with GraphQL: ## Installation ```bash npm install @mysten/sui ``` ## Setting Up a GraphQL Client ```ts import { SuiGraphQLClient } from '@mysten/sui/graphq…
Q: How can I modify the css style of React components ConnectButton and ConnectModal and also select the wallets to be listed on ConnectModel?
A: ## Styling and Configuring `ConnectButton` & `ConnectModal` in React ### CSS Styling dApp Kit uses a theming system compatible with [shadcn/ui](https://ui.shadcn.com/docs/theming), based on CSS cust…
Q: how to deploy my website to walrus
A: Here's how to deploy your website to Walrus Sites: ## Prerequisites 1. Install and configure Sui 2. Install and configure Walrus 3. Obtain Testnet SUI and WAL tokens (or Mainnet tokens for productio…
Q: sui move build --lint --path math/fixed_point Your active environment `local` is not present in `Move.toml`, so you cannot publish to `local`. - If you want to create a temporary publication on `local` and record the addresses in an ephemeral file, use the `test-publish` command instead
A: The error is because your active CLI environment is `local`, which isn't defined in your `Move.toml`. For just building and testing (not publishing), you need to tell the CLI which environment's depen…
Q: can any node operator change the zklogin protocol config max epoch?
A: Based on the knowledge sources, the answer is **no** — individual node operators cannot unilaterally change the zkLogin protocol config `max_epoch` setting. Here's what the sources do and don't say: …
Q: non-defining modules can mint other's objects?
A: No. In Sui Move, non-defining modules **cannot** create (mint) objects of a type they don't define. This is enforced by Move's **privileged struct operations** rule: > Struct types can only be creat…
Q: Do you have a gas profiler?
A: Yes, Sui provides several gas profiling tools: ## 1. Test Statistics (Quick Measurement) Run `sui move test` with the `-s` or `--statistics` flag to see gas consumption per test: ``` sui move test …
Q: Can I create a zklogin wallet with iPhone Face ID?
A: zkLogin specifically uses **OAuth credentials** (like Google, Apple, Facebook, etc.) — not device biometrics like Face ID. So you cannot create a zkLogin wallet directly with iPhone Face ID. However,…
Q: remaind me address key scheme
A: On Sui, addresses are 32-byte identifiers derived by hashing a signature scheme flag byte concatenated with the public key bytes (`flag || pubkey`) using **BLAKE2b** (256-bit output). [[Address Format…
Q: how can i check the linear upgrade history? ideally from SUI CLI
A: The knowledge sources do not contain enough information to answer this query directly. The provided documents cover how package versioning works and how to upgrade packages, but they don't describe a …
Q: if i have a package A and it has package B as its dependency. now package B is upgraded to B v2. how should do upgrade A to use B v2?
A: When dependency B is upgraded to B v2, your package A **does not automatically use the new version**. You must explicitly upgrade package A to point to the new dependency. [[Upgrading Packages](https:…
Q: sign personal message
A: Based on the conversation context, you're asking about using `signPersonalMessage` for your anti-counterfeit system. Here's how it works in the Sui TypeScript SDK: ## Signing a Personal Message ```t…
Q: tell me about address balance
A: ## Address Balances on Sui Address balances introduce a canonical balance system for fungible assets tied directly to Sui addresses. They replace the UTXO-style `Coin` model, where balances were p…
Q: correct it and return the full corrected version " public fun create_pool( app_uid: ID, _: &AdminCap, ctx: &mut TxContext ) { let pool = MinerPool { id: object::new(ctx), start_time: 0, reward_balance: zero(), app_uid, }; transfer::share
A: Here is the corrected full version with `version` and `admin` fields added: ```move public fun create_pool( app_uid: ID, cap: &AdminCap, ctx: &mut TxContext ) { let pool = MinerPool {…
Q: What is Mysticeti?
A: Mysticeti is the consensus protocol that powers the Sui blockchain. Here's a summary of its key characteristics: ## What is Mysticeti? Mysticeti is a **Byzantine Fault Tolerant (BFT), Directed Acycl…
Q: Archival Service 有开源吗
A: 根据知识来源,Archival Service 的相关组件是**开源的**,代码托管在 Mysten Labs 的官方 Sui 仓库中: - **`sui-kvstore-alt`**(Indexer)和 **`sui-kv-rpc`**(gRPC 服务)均属于 Sui 主仓库的一部分,源码位于: `https://github.com/MystenLabs/sui` [[Sui Repo]…
Q: borrow_publisher returns a reference, but in a PTB you can chain it — borrow in one call, pass the reference to the next call in the same transaction.
A: This is actually a common misconception worth clarifying. **PTBs do not currently support passing references returned from one transaction command into another command.** As the Sui documentation exp…
Q: async getChainTimestamp(): Promise { // toDo: 当前使用的还是json client, 废除前需要替换 const checkpointSeq = await this.sdk.fullClient.ledgerService.getServiceInfo({}) const checkpoint = await this.sdk.fullClient.ledgerService.getCheckpoint({ checkpointId: { oneofKind: 'sequenceNumber', seque
A: 这段代码有几个问题需要修复: 1. **响应未解构**:gRPC 方法返回 `{ response }`,需要解构 2. **字段名错误**:`getServiceInfo` 返回的是 `checkpointHeight`,不是 `epoch` 3. **getCheckpoint 参数格式错误**:TypeScript SDK 中直接传 `sequenceNumber`,无需 `checkpo…
Q: and i I for example register with my email again ? what would happen, would be my old account wiped out ? or how would it work ?
A: Great question! Based on the zkLogin documentation, here's what would happen: **Your old account would NOT be wiped out.** The zkLogin address is derived deterministically from: - `sub` — your uniqu…
Q: what is authorities_db
A: `authorities_db` is the primary database directory used by a Sui node (`sui-node`) to store all authority-related (validator/full node) data. By default, it is located at `/opt/sui/db/authorities_db` …
Q: note superNode is shard object created by user, wich other users joins which means it has details of the users that joined and the creation logic also, will the migration takes all the data to new version?
A: Great clarification. Since `SuperNode` is a **shared object** (not owned) that users join and that holds participant data, the versioning and migration approach is the same as for your other shared ob…
Q: what do you recomend for key management
A: Here's a summary of key management recommendations across different Sui contexts: ## For Wallet Users - Use **self-custodial wallets** (e.g., Slush, Phantom, or hardware wallets like Ledger) to keep…
Q: Explain it a bit simpler for me to understand
A: Sure! Let me simplify the security risks that come with Sui's parallel design. --- ## 🔑 The Core Problem: Parallel = New Risks Because Sui runs transactions at the same time, it needs to carefully …
Q: any Cross-PTB or cross-transaction reservation tracking.
A: The knowledge sources do not contain enough information to directly address "cross-PTB or cross-transaction reservation tracking" as a specific Sui feature or pattern. However, based on what the know…
Q: Where in the official docs is the exact behavior of address balance accumulators (fundsInAddressBalance) and FundsWithdrawal documented, including signing vs execution vs settlement timing? How does the 1024-command PTB limit interact with shared-object modules like the bridge and accumulator? Is th
A: Here is what the provided knowledge sources directly support for each of your questions: --- ### 1. Where are address balance accumulators and FundsWithdrawal documented? The provided sources cover…
Q: 不是某个地址的,而是在链上扫描
A: 根据现有的知识来源,我没有找到关于**全链扫描所有含 `Balance` 的 Object**(不限于某个地址)的直接 API 或方法。 知识来源中提供的查询方式均基于**特定地址**(owner)来获取其拥有的余额或对象,例如: - `client.core.listBalances({ owner: '0xabc...' })` [[Core API](https://sdk.mys…
Q: Will Sui wallet support balance transfers? They are asking for Suiet wallet
A: The knowledge sources do not contain specific information about whether **Suiet wallet** will support address balance transfers (the new `send_funds`-based approach). The sources only mention that Sui…
Q: So the DenyCapV2 is controlled by a single person?
A: Based on the knowledge sources, `DenyCapV2` is a single object with `key` and `store` abilities, meaning it is owned by one address at a time and is transferable. [[DenyCapV2 capability](https://docs.…
Q: In the sui-rust-sdk, is there something similar to the keystore of the sui-sdk for loading keys and signing?
A: The knowledge sources don't contain enough detail about the Sui Rust SDK's keystore equivalent to give a fully confident answer. However, based on what is available, here's what the sources do show: …
Q: I have a plain HTML website (no React, no npm, no bundler). I want to detect ALL installed Sui wallets including Slush browser extension using the Wallet Standard. What is the exact CDN script URL I should load? And after loading it, what exact JavaScript code do I call to get all installed wa
A: ## Detecting Sui Wallets in Plain HTML/JS ### CDN Script URL The knowledge sources do not provide a CDN URL for `@mysten/wallet-standard`. The documentation assumes a Node.js/npm/bundler environment…
Q: ➜ oracle git:(mainnet) sui client test-publish --build-env mainnet The package has unpublished dependencies. If you want to publish with unpublished dependencies, please publish them one by one, or (not recommended) pass the `--with-unpublished-dependencies` flag. Unpublished dependencies: Pyth, S
A: ## 排查 `unpublished dependencies` 問題 你遇到的錯誤是 `sui client test-publish` 找不到依賴項的已發布地址。即使 Pyth 那邊有 `Published.toml`,問題可能出在以下幾個地方: ### 可能原因 1. **`Published.toml` 沒有包含 `mainnet` 的條目** `Published.toml…
Q: So sui is like a customer who owns a unique apple or bread it is unique with a code onky to that perso. A 1/1 they can go and stand in line whereever, only when the system notices that two different people stand in line with a same product and code it will pull them away to a seperate line where the
A: Your analogy is really good and you're on the right track! Let me refine it slightly to make it even more accurate: **Your Sui part is spot on.** Every object has a unique ID, belongs to one owner, a…
Q: 我怎麼知道是少了哪個?
A: 根據現有的知識來源,並沒有直接說明如何在錯誤訊息中識別**具體是哪個依賴缺失**的方法。不過,以下是一些可以幫助你診斷的建議: ### 1. 使用 `--verify-compatibility` 旗標(本地模擬) 在 Sui 1.42 中新增了 `--verify-compatibility` 旗標,可以在本地模擬環境中執行升級相容性檢查,幫助你在不花費 SUI 的情況下提前發現錯誤。[[N…
Q: When the sui move package is updated to next version, the old version stays there as well. What happens the storage, variables and funds to the previous version? As the previous version is still accessible to users as well
A: Great question! Here's a clear breakdown of what happens when a Sui Move package is upgraded: ## Packages Are Immutable — Objects Are Not When you upgrade a package, **the new version gets its own o…
Q: 呼叫 share object 也要先拿到 share object 才行?還是只要知道 object id?
A: 這取決於你的情境: ## 建立(share)一個新物件 當你要**建立並分享**一個物件時,你需要先在同一筆交易中建立該物件,然後才能呼叫 `transfer::share_object`。也就是說,你必須持有該物件的值(by value),而不只是知道 object ID。 ```move public fun create_and_share(message: String, ctx: …
Q: who are Accumulator
A: Based on the knowledge sources, here is what the `sui::accumulator` module is about: ## `sui::accumulator` in Sui Move The `sui::accumulator` module is a **Sui framework module** that provides infra…
Q: How about private transactions
A: The knowledge sources do not contain enough information to answer whether private transactions (i.e., transaction-level confidentiality, such as hiding sender, receiver, or amounts) are available or p…
Q: is there a blink for sui?
A: The knowledge sources provided don't contain any information about a "Blink" feature or equivalent on Sui. For context, "Blinks" (Blockchain Links) are a concept popularized on Solana that allow bloc…
Q: I don't see the documentation related to kv_objects pipeline
A: You're right to notice that. The knowledge sources do not contain a dedicated documentation page or section specifically for the `kv_objects` pipeline configuration. Here's what the sources do tell us…
Q: localnet graphsql conection
A: To connect to a local Sui network via GraphQL, use the following URL: `http://127.0.0.1:9125/graphql`. First, start your local network with GraphQL enabled: ```sh sui start --force-regenesis --with-…
Q: Seal package ID for testnet ?
A: The Seal package ID for **Testnet** is: `0x927a54e9ae803f82ebf480136a9bcfe45101ccbe28b13f433c89f5181069d682` [[Key Servers](https://github.com/MystenLabs/sui-move-bootcamp/blob/main/K5/05_key_server…
Q: i've got blockpi grpc endpoint, how do i authenticate?
A: The knowledge sources do not contain specific information about authenticating with a BlockPI gRPC endpoint. The documentation covers: - **Building gRPC clients** (TypeScript, Go, Python) that connec…
Q: Explain this party thing well I dont understand
A: ## Party Objects in Sui — Explained Simply Think of a **Party object** as a special type of object ownership that sits between two existing types you may already know: --- ### The Two Existing Type…
Q: For Slush detection** — ask the Sui docs AI these exact questions: ``` 1. How does Slush wallet register itself with the Wallet Standard on a plain HTML website (no React, no dApp kit)? What window event or global object should I listen for? 2. What is the exact window object name or ev
A: Here's what the knowledge sources tell us about each of your questions: --- ## 1. Registering Slush Wallet with the Wallet Standard (no React/dApp Kit) For the **Slush web wallet** specifically, yo…
Q: 我要铸造sbt 你给我合约和ts铸造nft 的
A: # 铸造灵魂绑定 NFT (SBT) ## Move 合约 灵魂绑定 NFT 的关键在于:**只有 `key` 能力,没有 `store` 能力**。这样持有者无法使用 `transfer::public_transfer` 转移它,从而实现"灵魂绑定"效果。 [[Soulbound NFT](https://github.com/MystenLabs/sui/blob/main/docs/c…
Q: rpc
A: ## Sui RPC Overview Sui provides multiple RPC interfaces for accessing blockchain data: ### Available Interfaces 1. **gRPC API** (recommended) — A high-performance, type-safe interface using Protoc…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui Client CLI yet, run `sui client` in your terminal. Follow the prompts: - Enter `y` t…
Q: 如果升级的cap是多签账户 我生成未签名的txbytes是不是就可以使用sui client upgrade --upgrade-capability 0xc1c6690f21937f90e6b42f7c916d8e8c942926e3fb9e5c3c5584ae1e91502f25 \ --gas-budget 1000000000 --gas 0xb54b10536826f28cd2453c5226f8c759c3bccf4beb672890f1447117c2ef93f7 \ --serialize-unsigned-transaction --skip-dependency-veri
A: 是的,你的思路是正确的。对于多签账户升级包,使用 `--serialize-unsigned-transaction` 生成未签名的交易字节,然后由各签名方分别签名,最后合并执行,这是标准的离线签名流程。[[Offline Signing](https://docs.sui.io/guides/developer/transactions/transaction-auth/offline-sign…
Q: Cannot upgrade package without having a published id 现在升级报错了 hasui现在升级无法使用命令sui client upgrade --upgrade-capability 0xc1c6690f21937f90e6b42f7c916d8e8c942926e3fb9e5c3c5584ae1e91502f25 \ --gas-budget 160000000 --gas 0xe9ab96bcb2e610a12f7996aed1b2da4b474bbef55ade2d6c16fed0afcb15daeb \ --serialize-unsig
A: The error "Cannot upgrade package without having a published id" is related to the **new package management system introduced in Sui CLI v1.63**, which changed how published addresses are tracked. [[P…
Q: you said For a full historical account of the old rules, I'd recommend checking the Sui GitHub history or older versions of the documentation directly. I asked if you can check the history for me
A: I'm sorry, but I'm not able to browse the internet, access GitHub history, or retrieve external documentation beyond the knowledge sources I've been provided. My previous suggestion to check the Sui G…
Q: copy "C:\Users\PC\Downloads\bot.mjs" "C:\Users\PC\agent-tg-bot\bot.mjs" cd C:\Users\PC\agent-tg-bot git remote set-url origin https://github.com/ibraheemmjafar-netizen/agenttraderbot.git git add bot.mjs git commit -m "fix trades - old pool only, clean buy/sell" git push ``` --- **For Slush detecti
A: I'll skip the unrelated shell/git commands and focus on your Sui-related questions. ## 1. Registering Slush Wallet on a Plain HTML Site (No React/dApp Kit) Install the SDK and call `registerSlushWal…
Q: How to get ether and bridge to sui
A: ## Bridging ETH to Sui To bridge Ether (ETH) to Sui, you have several options depending on your needs: --- ### Option 1: Sui Bridge (Native Bridge) Sui Bridge is the native bridge built into the S…
Q: Pure PTB execution + bridge treasury interaction
A: ## PTB Execution & Bridge Treasury Interaction on Sui ### Programmable Transaction Block (PTB) Execution A PTB is composed of two parts: **inputs** and **commands**. [[What is a PTB?](https://docs.s…
Q: walrus launch date
A: Walrus Mainnet launched on **March 27, 2025**, with Epoch 1 beginning on March 25, 2025, operated by a decentralized network of over 100 storage nodes. [[Mainnet launch](https://docs.wal.app/blog/06_m…
Q: trion-protocol-30296913:~/trion-protocol/trion_core{main}$ sui client publish --build-env testnet The package has unpublished dependencies. If you want to publish with unpublished dependencies, please publish them one by one, or (not recommended) pass the `--with-unpublished-dependencies` flag. Unp
A: The issue is that even though you've provided `published-at` and `original-id` in your `[dep-replacements]`, the package manager still isn't recognizing `World` as already published on-chain. This is …
Q: So how can I open a slush wallet through another app in my mobile?
A: You can open Slush Wallet from another mobile app using **deep linking**. Slush supports two approaches: ## 1. Universal Links (Recommended) Use `my.slush.app` HTTPS links — they work on iOS, Androi…
Q: where is sui signing personal message listed
A: Personal message signing on Sui is documented in several places across the knowledge sources: 1. **Wallet Standard** – `sui:signPersonalMessage` is listed as a required wallet feature that wallets sh…
Q: sui client call 指令
A: ## `sui client call` 指令 `sui client call` 用於呼叫 Move 套件中的函數,是與 Sui 網路互動的核心指令之一。[[Sui Client CLI](https://github.com/MystenLabs/sui/blob/main/docs/content/references/cli/client.mdx)] ### 基本語法 ```sh s…
Q: sbt nft
A: ## Soulbound NFTs (SBTs) on Sui A **Soulbound Token (SBT)** is a non-transferable NFT that is permanently bound to the account it was minted to. [[Soulbound NFT Example](https://docs.sui.io/guides/de…
Q: this is what i have [package] name = "alliance_protocol" edition = "2024" # edition = "legacy" to use legacy (pre-2024) Move # license = "" # e.g., "MIT", "GPL", "Apache 2.0" # authors = ["..."] # e.g., ["Joe Smith (joesmith@noemail.com)", "John Snow (johnsnow@noemail.com)"]
A: Looking at your `Move.toml`, the structure looks mostly correct for the new-style format. However, there are a couple of things to address: ## Issues to Fix ### 1. The `rev = "main"` for your git de…
Q: Окей, а через sdk? @mysten/sui?
A: Вот как вызвать `mint_gladiator` через `@mysten/sui` TypeScript SDK, используя PTB: ```typescript import { Transaction } from "@mysten/sui/transactions"; import { SuiClient, getFullnodeUrl } from "@m…
Q: check if there is any update needed on this based on the register_capy and unregister_capy functions updates " entry fun reveal_mine( shard_pool: &mut ShardPool, pool: &mut MinerPool, node: &mut NFTNode, nft: &NFT, commit: MiningCommit, secret: vector,
A: Looking at `reveal_mine` in the context of the updates made to `register_capy` and `unregister_capy`, the key change introduced was the **registry cache sync** (`registry.shard_participant_counts`). S…
Q: I am tranferring My personal token in testnet but object is I am not able to see
A: Here are a few things to check when you can't see your transferred object on Sui Testnet: ## 1. Verify You're Looking at the Right Network Make sure your explorer is set to **Testnet**, not Mainnet.…
Q: Напиши мне PTB что бы передать обьект адресу
A: Вот пример PTB для передачи объекта адресу с использованием TypeScript SDK: ```typescript import { Transaction } from '@mysten/sui/transactions'; const tx = new Transaction(); // Передаём объект (с…
Q: "Transaction resolution failed: CommandArgumentError { arg_idx: 0, kind: ArgumentWithoutValue } in command 28"。这个报错是什么意思?
A: ## 分析 `CommandArgumentError: ArgumentWithoutValue` 报错 这个错误发生在 PTB(Programmable Transaction Block)的第 29 个命令(command index 28,0-indexed)中,第 0 个参数(`arg_idx: 0`)出现了问题。 ### 错误含义 根据 Sui 的执行状态协议,`ARGUMENT…
Q: INFO: Uvicorn running on http://127.0.0.1:8078 (Press CTRL+C to quit) 📡 Status (https://graphql.testnet.sui.io/graphql): 200 📄 Page fetched: 2 txs | hasNextPage: False ✅ Total digests fetched: 2 ✅ Total unique digests: 2 📡 Status (https://graphql.testnet.sui.io/graphql): 200 ❌ GraphQL Error (htt
A: The error is clear: ``` Unknown field "base64Sig" on type "UserSignature" ``` Looking at the actual `UserSignature` type in the Sui GraphQL schema, the correct fields are `signatureBytes` and `schem…
Q: write unit test for me please: module walrus_ai_policy::metadata; use std::string::{Self, String}; use sui::clock::Clock; public struct Metadata has copy, drop, store { title: String, description: String, version: u64, creator: address, category: String, created_at: u64, }
A: Here is a unit test for your `walrus_ai_policy::metadata` module, based on the testing patterns from the Sui documentation: ```move #[test_only] module walrus_ai_policy::metadata_tests; use std::str…
Q: does this command " sui move new" creating and deploying the project? or just creating
A: The `sui move new` command **only creates** the project — it does not deploy it. Specifically, `sui move new ` creates: [[Move CLI](https://docs.sui.io/references/cli/move#examples)] - …
Q: sui上使用反编译的工具
A: 在 Sui 上,有以下几款反编译工具可供使用: ## 官方/主流工具 - **sui replay**:可以本地重新执行任意历史链上交易,并对比其执行效果。使用 `--trace` 标志可生成执行追踪,供 Move 调试器使用。[[Sui Replay CLI](https://docs.sui.io/references/cli/replay)] ```sh sui replay …
Q: archival store 可以查到更舊的events嗎
A: 根據知識來源,Archival Store 對於 Events 的支援有所限制。 Archival Store 主要支援的是**點查詢(point lookups)**,例如: - 依 digest 查詢特定 transaction - 依 ID 和版本查詢特定 object - checkpoint 查詢 [[GraphQL Retention](https://docs.sui.io/gu…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui Client CLI If you haven't initialized the CLI yet, run `sui client` in your terminal. If prompted, enter `y` to connect to …
Q: explain the typed witness pattern
A: ## The Witness Pattern in Move (Sui) The **witness pattern** is a way to prove a certain property at the type level by constructing a proof value. In Move on Sui, a module proves ownership of a type …
Q: What are the bridge-registered tokens
A: Based on the knowledge sources, here are the tokens registered/supported on Sui Bridge: ## Sui Bridge Supported Assets The following assets are officially supported by the native Sui Bridge: [[Sui B…
Q: How does RGP works
A: ## Reference Gas Price (RGP) on Sui The **Reference Gas Price (RGP)** is Sui's mechanism for keeping gas prices stable and predictable for end-users. Here's how it works: ### Setting the RGP 1. **D…
Q: SuiGraphQLClient url
A: Here are the GraphQL endpoint URLs for each Sui network when using `SuiGraphQLClient`: | Network | URL | |---------|-----| | **Mainnet** | `https://sui-mainnet.mystenlabs.com/graphql` | | **Testnet**…
Q: Is there any que on sui side when I bridge from ethereum
A: When you bridge from Ethereum to Sui, there isn't a traditional "queue" in the sense of a waiting line. Instead, the process follows a structured approval-then-claim flow: ### How it works (Ethereum …
#3 86 questions high priority

Package Deployment & Upgrades

Publish errors and upgrade versioning confusion prevent developers from shipping to mainnet.

Show 79 questions
Q: sui client publish --gas-budget 100000000
A: It looks like you're running the publish command. Here's what to expect when you execute: ```bash sui client publish --gas-budget 100000000 ``` The CLI will: 1. **Build the package** automatically 2…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: how do i get my wallet transaction history
A: There are several ways to retrieve your wallet's transaction history on Sui: ## 1. Using GraphQL (Recommended) You can query transactions associated with an address using the GraphQL API. For exampl…
Q: What are programmable transaction blocks (PTBs)?
A: ## Programmable Transaction Blocks (PTBs) Programmable Transaction Blocks (PTBs) are the standard way all user transactions are executed on Sui. They are groups of commands that execute on inputs to …
Q: gas cost = computation cost + storage cost − storage rebate this equation, where it is
A: This equation represents the **net gas fees** formula on Sui. Specifically, it appears in the storage rebates section of Sui's gas fee documentation: ``` net_gas_fees = computation_gas_fee + storage_…
Q: seal backupKey
A: ## Seal `backupKey` When you call `client.encrypt()` from the `@mysten/seal` SDK, it returns two values: - **`encryptedObject`** — the BCS-serialized ciphertext - **`key`** (the backup key) — the sy…
Q: are there checks made before dropping?
A: Based on the knowledge sources, the Move type system enforces checks **at compile time** before any value with `drop` can be discarded. Here's what is verified: ### Ability Propagation Check A struc…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: guide to build first smart contract
A: # Building Your First Sui Smart Contract Here's a step-by-step guide to writing and deploying your first Move smart contract on Sui. --- ## Prerequisites Before you start, make sure you have: [[He…
Q: I have USDC on sui
A: If you already have USDC on Sui and need SUI for gas, the knowledge sources do not explicitly cover swapping USDC for SUI directly (e.g., via a DEX). However, there are a couple of relevant options m…
Q: is Address Balances fully supported on mainnet?
A: The knowledge sources do not explicitly state that **all** Address Balances features are fully supported on Mainnet. What we can see: - Address Balances are integrated into the standard balance APIs…
Q: Μνμ για ντισκορντ
A: Σου γράφω ένα έτοιμο μήνυμα για να το στείλεις στο Discord, π.χ. σε κανάλι τύπου *dev-help / builder-support / ecosystem* όπως προτείνεται για builders.[[Builder support](https://www.sui.io/builder-su…
Q: Sui Move package upgrade compatibility rules and versioned shared objects
A:
Q: please make expected_income_for_referrers.length().do! ... instead of the while loop
A: You can use the `do!` macro on the length (a `u64`) and index into the vector. This avoids cloning and matches the “Loops → Macros” style.[[Loops–macros](https://move-book.com/guides/code-quality-chec…
Q: Should the seal_config.yaml contain anything specific beyond the port?
A: The knowledge sources mention that the admin “specifies the `seal_config.yaml` with the published Seal policy package ID and Seal configurations,” but they do **not** show the actual contents or schem…
Q: i want to create a sui move file to practice code but i forgot the file need dot what like practice.move right ? or something else
A: Yes, you're correct! Sui Move source files use the `.move` extension. So your file would be named something like `practice.move`. [[Hello, World!](https://move-book.com/your-first-move/hello-world/#di…
Q: what does this warning mean? [Note]: Dependency sources are no longer verified automatically during publication and upgrade. You can pass the `--verify-deps` option if you would like to verify them as part of publication or upgrade. | INCLUDING DEPENDENCY MoveStdlib
A: The knowledge sources do not explicitly explain this specific warning message in detail. However, based on what the warning itself says and the context from the Sui documentation, here's what it means…
Q: One more thing, the python script fetches data and a node sidecar uses suisql to write the data to walrus.
A: Thanks for the additional detail. I'll note this in the context of your plan, but I need to be transparent about what the knowledge sources actually cover. The knowledge sources **do not mention SuiS…
Q: 并不是落后checkpoint,而是同步后和链上状态不一致,那么我觉得应该是某个接受的checkpoint数据有问题,那么怎么快速恢复呢
A: 你的判断很有道理——如果节点已经同步到最新 checkpoint,但本地状态与链上不一致,很可能是某个 checkpoint 数据在接收或执行时出现了问题,导致本地数据库处于不一致状态。 根据知识库中的信息,**最快的恢复方式仍然是从快照重建**,因为这可以绕过有问题的本地数据库状态,直接恢复到一个经过协议验证的干净状态。 ## 推荐:使用 Formal Snapshot 恢复 Formal…
Q: --- **Question 1 — Cetus CLMM (verify our current implementation)** > We are building a Sui trading bot that calls Cetus CLMM swap directly via PTB using `@mysten/sui Transaction`. We are calling `pool_script::swap` on package `0x1eabed72c53feb3805120a081dc15963c204dc8d091542592abaf7a35689b2fb` wi
A: I can partially answer some of these questions based on the provided knowledge sources, but I must be transparent about significant gaps. --- ## What the Knowledge Sources Can Answer ### Question 5…
Q: hướng dẫn cách tích hợp và kết nối ví sui vào web của tôi
A: # Hướng dẫn tích hợp ví Sui vào ứng dụng web ## 1. Cài đặt **Cho ứng dụng React:** ```bash npm i @mysten/dapp-kit-react @mysten/sui ``` **Cho Vue hoặc các framework khác:** ```bash npm i @mysten/da…
Q: how can rust write sui programming lang, and sui lang use it to create a blockchain and the ecosystem
A: Great question! Here's how Rust and the Move language work together to power Sui: ## How Rust Builds the Sui Blockchain Sui itself — the blockchain infrastructure — is **written in Rust**. This incl…
Q: minimum staking token for a validator
A: Sui is transitioning away from a fixed minimum SUI token requirement to a **voting power-based** system under [SIP-39](https://github.com/sui-foundation/sips/blob/main/sips/sip-39.md). ## Current Sta…
Q: the sui fee is dominated in mist and cbtc in base "const SUI_FEE = 2000000000; const CBTC_FEE = 10000;" correct?
A: Yes, that's correct! - **`SUI_FEE = 2_000_000_000`** — This is 2 SUI expressed in MIST (the smallest unit of SUI), since `1 SUI = 1,000,000,000 MIST`. [[Module sui::sui](https://docs.sui.io/reference…
Q: where i can change ui for the front end
A: Based on your project setup, here are the places where you can change the UI: --- ## 1. `src/App.tsx` — Main Layout This is the primary file for your app's UI structure. Change the layout, add/remov…
Q: Are they compatible with the new move 2024?
A: Based on the knowledge sources, module extensions require the **`2024.alpha` edition** — which is a more advanced/experimental variant of Move 2024, not the standard `"2024"` edition. [[Limitations](h…
Q: is there no way to delegate the merge and split to wallets?
A: Based on the knowledge sources available, the TypeScript SDK itself handles this automatically — you don't need to delegate it to the wallet manually. When you use `coinWithBalance`, the SDK resolves…
Q: now I switched to another wallet and it shows the old balance, when added more gas coin it still show only the old balace "$ sui client gas ╭────────────────────────────────────────────────────────────────────┬────────────────────┬──────────────────╮ │ gasCoinId
A: The knowledge sources I have don't directly cover CLI caching or balance refresh issues, but based on what you're describing — the CLI showing a stale balance even after adding more gas coins — here a…
Q: this is a very bad design choice. this makes upgrade extremely difficult to manage
A: The concern is understandable, and the Sui documentation does acknowledge these challenges. Here are some patterns and tools the ecosystem provides to help manage this complexity: ## Mitigations Sui …
Q: error "unused function The non-'public', non-'entry' function 'assert_version' is never called. Consider removing it." [\"This warning can be suppressed with '#[allow(unused_function)]' applied to the 'module' or module member ('const', 'fun', or 'struct')\"]"" from here "fun assert_version(v: u64)
A: The warning is straightforward: you defined `assert_version` as a private helper function but never called it anywhere in your module. You have two clean options: ## Option 1: Call it in your mutatin…
Q: im trying to stake deepbook
A: Here's how to stake DEEP tokens in DeepBook V3: ## Staking DEEP in DeepBookV3 Staking DEEP tokens gives you trading fee benefits — specifically, reduced taker fees and the ability to earn maker reba…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` If prompted, enter `y` to connect to a full n…
Q: ok understood
A: Got it! Feel free to ask if you have any more questions about Sui. 😊
Q: User effects are finalized independently. Settlement is a later system transaction; a failure does not roll back prior user effects. PTB allows up to 1024 commands, enabling many claims in one atomic transaction.
A: The knowledge sources do not support the claim that "user effects are finalized independently" or that "settlement is a later system transaction whose failure does not roll back prior user effects." …
Q: i got ``` felix@MB-L6G3NC43PK domains % sui client call --package 0x6994192508a64e7a40fb495db934e7deeadb95e93ae8c6fb610668831fd6352d --module fee_quoter --function type_and_version --json { "digest": "2bfWKGeojxNxTHw9amThJXnsCkYQyctdut4qAPSsqkNx", "transaction": { "data": { "messageVer
A: The output you're seeing is correct — `sui client call` executes the transaction and returns effects/object changes, but **does not show the return values** of the Move function. A `String` return val…
Q: # services/blockchain_manager.py from app.services.sui_service import get_sui_transactions from app.services.eth_service import get_eth_transactions class BlockchainManager: async def get_transactions( self, chain: str, wallet: str, after_checkpoint: int = None
A: The error is clear from the traceback: ``` TypeError: BlockchainManager.get_transactions() got an unexpected keyword argument 'page' ``` Your **route handler** in `app/routes/wallet.py` is still pas…
Q: --fork-rpc-url 有這個參數嗎
A: 根據提供的知識來源,並沒有提到 `--fork-rpc-url` 這個參數。 知識來源中出現的相關 RPC 參數包括: - `--rpc-api-url`:從全節點 gRPC 端點獲取 checkpoint [[Remote Store CLI](https://docs.sui.io/guides/operator/remote-store-setup#cli-reference)] - `…
Q: want to know how to convert the funds in an address (`fundsInAddressBalance`) into a Coin object<0x2::sui::SUI>.
A: To convert funds held in an address balance (`fundsInAddressBalance`) into a `Coin<0x2::sui::SUI>` object, you use `tx.withdrawal()` combined with `0x2::coin::redeem_funds`. ## TypeScript SDK Use `t…
Q: 新版沒有addresses 那以前要用@fee_address 那種該怎麼辦。
A: 在新版套件管理系統中,`[addresses]` 區段已被移除。以前用 `@fee_address` 這類具名地址的方式,在新系統中需要改變做法。 根據文件說明,新系統的命名規則如下: > **套件的名稱來自 `[package]` 區段或 `[dependencies]` 區段中給定的名稱**,而不再來自 `[addresses]` 區段。 [[Package Migration](htt…
Q: can you do one more thing here can you sort this using the time stamp and also add the etxra time stamp which is converted to proper date time
A: Here is the fully updated `sui_service.py` with: 1. **Sorting by `timestamp`** (oldest → newest) instead of checkpoint/lamport 2. **`timestamp_utc`** — a human-readable ISO 8601 datetime string deriv…
Q: What are programmable transaction blocks (PTBs)?
A: ## Programmable Transaction Blocks (PTBs) Programmable Transaction Blocks (PTBs) are the fundamental unit of user transactions on Sui. They consist of groups of commands that execute on inputs to def…
Q: So it's a protocol level rule?
A: Yes, exactly. The deny list enforcement for regulated coins is a **protocol-level rule**, not something enforced by smart contract logic alone. Here's what that means in practice: - When an address …
Q: Can I get the digest of a package with Move on chain?
A: The knowledge sources mention the `ticket_digest` function in the `sui::package` module, which allows you to retrieve the digest from an `UpgradeTicket` on-chain: ```move public fun ticket_digest(tic…
Q: 那可以不用 public share object?
A: 可以,你可以改用 `transfer::share_object`(不需要 `store`),但這樣就**不能在模組外部呼叫**,必須在定義 `Position` 的模組內提供一個 share function。 ## 方案:用 `share_object`,不加 `store` ```move // Position 只需要 key,不需要 store public struct Posit…
Q: in our last conversation you suggested adding a maxCap phase for this function, help me do that "public fun get_current_phase_and_reward(start_time: u64, now: u64): (u64, u64) { if (now < start_time) return (0, 0); let elapsed = now - start_time; let days = elapsed / DAY_MS;
A: I don't have access to previous conversations, so I can't confirm what was suggested before. However, I can help you add a `maxCap` phase to your function based on what the code is doing. A "maxCap p…
Q: but i have updated my package but my Published.toml is messed up
A: If your `Published.toml` has incorrect or inconsistent data after an upgrade, here are some things to consider based on the available documentation: ## If You're on the New Package System (Sui CLI v1…
Q: Error while loading dependency /home/user/projectsui/TRION/contracts/trion_core: Cannot override default environments. Environment `testnet` is a system environment and cannot be overridden. System environments: testnet, mainnet projectsui-18394434:~/projectsui/TRION/contracts/trion_core{main}$
A: The error is telling you that `testnet` is a **system (implicit) environment** and cannot be redefined in your `[environments]` section. The same applies to `mainnet`. The fix is straightforward: **r…
Q: which is best for error constants "E_NOT_OWNER" and "EnotOwner" ?
A: Neither of those two options is the recommended convention. The correct format for error constants in Move on Sui is **`EPascalCase`** (also called ECamelCase) — starting with a capital `E` followed b…
Q: Can I have `assert_eq!` & `assert_ne!` for my own data types in Sui/Move?
A: The knowledge sources don't explicitly mention an `assert_ne!` macro in Sui Move's standard library. However, here's what is supported for custom types: ## `assert_eq!` with Custom Types Yes, `asser…
Q: I want to publish a package both on testnet and mainnet. Do these give me back different UpgradeCap, or it the same for both?
A: When you publish a package to **testnet** and **mainnet**, you get **different `UpgradeCap` objects** for each — one per publication. Each deployment is an independent on-chain event, and Sui creates …
Q: but couldn't a UpgradeCap be wrapped in another object and therefore not be "visible"?
A: That's an excellent and important point. Yes, an `UpgradeCap` can be **wrapped** in another object, which would make it invisible in the object store — and in that case, you cannot safely assume the p…
Q: 我想用graphql的方式查询suiNS名字,该怎么查?
A: 根据知识库,使用 GraphQL 查询 SuiNS 名称有以下两种方式: ## 1. 地址 → 默认 SuiNS 名称 使用 `address` 查询的 `defaultSuinsName` 字段: ```typescript import { SuiGraphQLClient } from '@mysten/sui/graphql'; import { graphql } from '@m…
Q: 你把上面转成TS的,给我描述一下prompt,我让其他AI工具给我生成
A: Here is a prompt you can give to another AI tool to generate the TypeScript code: --- **Prompt:** Write a TypeScript script using the `@mysten/sui` SDK to withdraw SUI from a Sui address balance (n…
Q: start_timeとend_timeを持たせるか、start_timeだけ持たせて、24 hour後に終わることを決めてるから逐次+24時間して算出するかどっちがいい?
A: 会話の流れから、時間ベースのロジック(例:マーケットプレイスのオークションや Kiosk のルールなど)を設計する際に、`start_time` と `end_time` の両方を持つか、`start_time` だけ持って `+24時間` で算出するかを聞いていると理解しました。 ## どちらが良いか 知識ソースにある実装例を見ると、**両方のパターンが使われています**。 ### `st…
Q: Can a single PTB containing multiple claim_token commands, be use
A: Your query appears to be incomplete — it seems like it was cut off before finishing the question. Could you please complete your query? For example, are you asking something like: > "Can a single PTB…
Q: not good enough
A: I understand you're looking for more detail, but I want to be transparent: the knowledge sources provided do not contain any information about a `--file` flag or a way to pass a file directly to `sui …
Q: 基本的なmoduleの分け方をおしえて
A: Sui の Move における基本的なモジュールの分け方について説明します。 ## モジュールの基本原則 **1オブジェクト・1データ構造につき1モジュール**を設計の基本とします。バリアント構造体がある場合も、複雑さやバグを避けるために独自のモジュールを持つべきです。 [[Move Best Practices](https://docs.sui.io/guides/developer/mo…
Q: how to Use the Clock object (0x6) to monitor epoch changes
A: The `Clock` object at `0x6` provides the **current time in milliseconds**, but it does **not** directly expose epoch information. However, you can combine it with epoch data from `TxContext` to monito…
Q: grpc ile bir evente subscribe olmalıyım
A: Sui'de gRPC ile bir event'e subscribe olmak için `SubscriptionService` kullanabilirsiniz. İşte adım adım nasıl yapacağınız: ## 1. gRPC Client Oluşturma ```typescript import { getFullnodeUrl } from "…
Q: Sui CLI commands publish package call function devnet testnet
A:
Q: where are the right docs for address balances
A: The official documentation for address balances on Sui is the **Address Balances Migration Guide**. You can find it here: [[Address Balances Migration Guide](https://docs.sui.io/guides/developer/addr…
Q: Sui transaction deferral consensus handler randomness limit deferral rounds congestion control
A:
Q: when i found that epoch cannot finalize due to unbounded randomness tx! is this a bug? how does epoch works
A: Based on the knowledge sources available, I can explain how epoch transitions work on Sui and address your concern. ## How Epoch Transitions Work Epoch changes occur approximately every 24 hours. Th…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui Client CLI If you haven't initialized the CLI yet, run `sui client` in your terminal. If prompted, enter `y` to connect to …
Q: public fun get_limit_file(): u64 { FILE_LIMIT } how to read: const tx = new Transaction() tx.moveCall({ }) utilsSui.getSuiClient.simulateTransaction({ transaction: "", }); return get_limit_file;
A: Looking at your code, you want to call a Move function `get_limit_file()` that returns a `u64`, simulate the transaction, and read the return value. Here's how to do it correctly using the Sui TypeScr…
Q: 现在sui的市值是多少
A: 非常抱歉,我的知识来源中没有包含 SUI 代币当前市值的实时数据。市值是动态变化的,需要查看实时数据。 建议您通过以下渠道查询 SUI 的最新市值: - [CoinGecko](https://www.coingecko.com) - [CoinMarketCap](https://www.coinmarketcap.com) - [DefiLlama](https://defillama.co…
Q: What is Mysticeti?
A: Mysticeti is the consensus protocol that powers the Sui blockchain. It is a high-throughput, Byzantine Fault Tolerant (BFT) protocol based on a **Directed Acyclic Graph (DAG)** architecture. [[Sui Glo…
Q: 0x11b2ec6df55e72e2c652b50c04dbd9d1771ac5931118cc2885acc5c551cae229
A: The string you've provided (`0x11b2ec6df55e72e2c652b50c04dbd9d1771ac5931118cc2885acc5c551cae229`) appears to be a Sui object ID or transaction digest, but I'm not able to look up on-chain data or quer…
Q: in zklogin we had set maxepoch, so the jwk should be valid unitil this maxepoch expire, right? there's no way onchain jwt might remove the value
A: There's an important distinction to clarify here between two separate concepts: ## `maxEpoch` vs. JWK validity **`maxEpoch`** controls how long the **ephemeral key pair and ZK proof** are valid — it…
Q: Archival Service 裡面查詢的到 events 嗎?
A: 根據現有的知識來源,Archival Service 主要支援以下資料的點查詢(point lookups): - **交易(transactions)** - **檢查點(checkpoints)** - **物件(objects)** - **Epoch 資料** [[Archival Store concepts](https://github.com/MystenLabs/sui/bl…
Q: sui client pay-sui --recipients 0xe136f0b6faf27ee707725f38f2aeefc51c6c31cc508222bee5cbc4f5fcf222c3 --input-coins 0x03334c9d0d0bc5c7c7dcb5f9f75795925a20d7b59d3d10c9a16030bc3ebf4f65 --amounts 100000000 Could not determine the gas budget. Error: Dry run failed --------- I'm getting above error for th
A: The error "Dry run failed" when running `sui client pay-sui` typically means the transaction couldn't be simulated successfully before execution. Here are the most likely causes based on the knowledge…
Q: how to send sui from one address to another using sui client CLI
A: You can send SUI from one address to another using the `sui client pay-sui` command, which is the recommended approach as it handles gas automatically using the same input coin: ```sh sui client pay-…
Q: I want to configure my sui_config/client.yaml for external signers. How can I do that?
A: The knowledge sources don't contain specific documentation about configuring `client.yaml` directly for "external signers" in the traditional sense. However, based on what the knowledge sources do cov…
Q: Can a effect certificate used as a proof for the tx?
A: Yes, an effects certificate can be used as proof of a transaction on Sui. Here's what the documentation says: - **An effects certificate guarantees transaction finality.** Once you or a full node obs…
Q: How to cli to create wallet and fund with devnet faucet
A: Here's how to create a wallet and fund it using the Sui CLI on Devnet: ## 1. Create a Wallet / Address If you're running `sui client` for the first time, it will prompt you to configure everything a…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui Client CLI If you haven't initialized the CLI yet, run `sui client` in your terminal. If prompted, enter `y` to connect to …
Q: 迁移到v2的指南
A: # 迁移到 @mysten/sui v2.0 指南 以下是从 v1.x 迁移到 v2.0 的核心要点: --- ## 1. ESM 迁移 所有 `@mysten/*` 包现在**仅支持 ESM**。需在 `package.json` 中添加: ```json { "type": "module" } ``` 同时更新 `tsconfig.json`: ```json { "c…
Q: How can I remove sui cli which I had installed before so I can install it using suiup
A: The knowledge sources do not contain explicit instructions on how to **remove/uninstall** a previously installed Sui CLI binary. They only cover installation and upgrading methods. However, here's wh…
#4 76 questions medium priority

Sui Ecosystem & General Concepts

Broad onboarding questions signal new developers lack a structured entry path to the Sui stack.

Show 79 questions
Q: Боюсь взлома, так как раньше создавал кошельки через CLI, сейчас хочу создать новый чистый кошелек без CLI, где это лучше сделать в фантоме или в слуш а потом импортировать в фантом? Просто слушом пользоваться не могу из-за их предупреждений о мошеннических токенах
A: Понимаю твою ситуацию. Вот что говорят источники о Phantom и Slush: ## Phantom — хороший выбор для твоего случая **Phantom** — это самокастодиальный мультичейн кошелёк, доступный как: - Браузерное р…
Q: tell me about your project
A: I'm kapa.ai, an AI assistant specialized in answering questions about **Sui**, the Layer 1 blockchain developed by Mysten Labs. I'm not a project myself — I'm here to help you learn about Sui and its …
Q: wallet
A: ## Wallets on Sui A Sui wallet stores the cryptographic keys that prove ownership of your onchain assets and signs the transactions you submit to the network. [[What Is a Wallet?](https://docs.sui.io…
Q: /get_pools
A: ## Endpoint `/get_pools` Повертає список усіх доступних пулів з детальною інформацією про базовий та котирувальний активи, а також параметри пулу. [[DeepBookV3 Indexer](https://docs.sui.io/onchain-fi…
Q: 1 epoch on walruson mainnet and testnet how long
A: Here are the epoch durations for Walrus: | Network | Epoch Duration | |---------|---------------| | **Mainnet** | 2 weeks (14 days) | | **Testnet** | 1 day | [[Available Networks](https://docs.wal.a…
Q: automated address management
A: ## Automated Address Management in Sui Automated address management tracks your package's on-chain address (package ID) in the `Move.lock` file whenever you publish or upgrade a package — no manual r…
Q: Is there a credit bureau or credit information center or credit scoring protocol on Sui that tracks borrower creditworthiness?
A:
Q: what is an example of an event in sui
A: An **event** in Sui Move is a struct with `copy` and `drop` abilities that you emit to notify off-chain services (indexers, apps) when something happens on-chain. Events are not stored on-chain but ar…
Q: in what scenario could u have one zklogin AUD map out to 4 different gmail accounts with different subs and salts
A: A single `aud` (OAuth client ID) can map to multiple different zkLogin addresses — each with a different `sub` and `user_salt` — in the following scenario: **Four different Google users logging into …
Q: i need numbers with sign, which type
A: Move on Sui **does not support signed integers**. All integer types in Move are **unsigned only**: | Type | Value Range | |------|-------------| | `u8` | 0 to 2⁸ - 1 | | `u16` | 0 to 2¹⁶ - 1 | | `u32…
Q: How to extend blob storage epoch duration using fund pool in Walrus?
A:
Q: How does coinWithBalance resolve SUI coins when fundsInAddressBalance is zero? What causes "Invalid withdraw reservation" errors?
A:
Q: how much are in circulation now
A: The knowledge sources do not contain the exact current circulating supply figure. However, they do provide a way for you to retrieve up-to-date circulation data directly via the official Sui circulati…
Q: what's the max object size
A: The maximum size of a Move object on Sui is **256 KB**. [[Object Size Limits](https://move-book.com/guides/building-against-limits/)] This limit applies to the `contents` part of an object and is enf…
Q: 给下使用 GraphQL 查询使用方式
A: 以下是使用 `SuiGraphQLClient` 查询币种精度的完整示例: ```typescript import { SuiGraphQLClient } from '@mysten/sui/graphql'; import { graphql } from '@mysten/sui/graphql/schema'; const gqlClient = new SuiGraphQLClie…
Q: addressBalance 是啥 和之前有什么不一样
A: ## Address Balance 是什么? `addressBalance` 是 Sui 新引入的**地址级余额系统**(Address Balances),基于 [SIP-58](https://github.com/sui-foundation/sips/blob/main/sips/sip-58.md) 规范实现。 ### 和之前的区别 **之前(旧模型):** - Sui 的余额…
Q: in what format are events emitted? Can one fetch events in programming languages other than the supported SDKs, for example in go?
A: ## Event Format on Sui ### How Events Are Emitted When a Move smart contract emits an event using `sui::event::emit`, the event data is stored as **BCS (Binary Canonical Serialization) bytes** withi…
Q: 在walrus的质押协议中 是否允许用户向一个已注册的 Walrus 但是该节点处于 未激活 un_active_validators状态 的节点中质押wal?
A: 根据当前提供的知识源,我无法给出关于 Walrus 质押协议中"向未激活节点质押 WAL"的明确答案。 知识源中关于 Walrus 质押的内容只涉及: - 质押/解质押的时间窗口(委员会选举中点前后的影响); - 通过 Walrus staking app 进行质押/解质押的操作步骤。[[Walrus 质押文档](https://docs.wal.app/docs/operator-guide…
Q: what is MEV?
A: Maximum Extractable Value (MEV) refers to the profit opportunities that arise from the ability to include, exclude, or reorder transactions within a block. On Sui, MEV deals with transaction ordering …
Q: i want to copy all the sui docs so I can transfer it to my local llm, can you please provide a text file for every page within the Sui reference docs?
A: I'm not able to generate or provide text files for every page of the Sui reference docs — that's outside what I can do as a Q&A assistant. However, the Sui documentation team has already built resour…
Q: szeretnék testnetről maintre váltani
A: Ha a dApp Kit SDK-t használod, a `switchNetwork` akcióval válthatsz testnetről mainnet-re: ```typescript import { createDAppKit } from '@mysten/dapp-kit-core'; import { SuiGrpcClient } from '@mysten/…
Q: what is object security?
A: On Sui, object security refers to the set of guarantees the network enforces around who can access, modify, or transfer objects. Here are the key properties: ## Core Security Guarantees 1. **Owner-e…
Q: what is sui security
A: ## Sui Security Sui is designed to provide high security guarantees to asset owners. Here's an overview of its key security properties and features: ### Core Security Guarantees Sui's security mode…
Q: opheliacardoz24@gmail.com
A: I'm sorry, but your message appears to be just an email address, and I'm not sure what you're asking. I'm designed to answer questions about Sui, the Layer 1 blockchain developed by Mysten Labs. Coul…
Q: well i used another method shown in the docs
A: Could you clarify what you mean? For example: - Which method or setup approach did you use? - Are you running into an issue, or are you asking whether your approach is valid? Based on the knowledge …
Q: how to put my own slush wallet address
A: Based on the conversation context, it sounds like you want to use your own Slush Wallet address with the Sui CLI. Here's how you can do that: ### Option 1: Import your Slush Wallet address into the C…
Q: is there anywhere in the doc the definition of ehpmeral key
A: Yes, the Sui documentation defines the **ephemeral key** in the zkLogin terminology section. Here is the definition: > `(eph_sk, eph_pk)`: The private and public key pair used to produce ephemeral si…
Q: versus publish a new contract?
A: Great follow-up question. Here's how **upgrading** compares to **publishing a new (separate) contract** on Sui: ## Upgrading an Existing Package - The new version is **linked to the original** packa…
Q: hihi
A: Hi there! I'm here to help answer questions about Sui, the Layer 1 blockchain. Feel free to ask me anything about Sui — whether it's about development, tools, concepts, or getting started!
Q: vậy đúng ko import { blake2b256 } from '@mysten/sui/utils';
A: Không, cách import đó **không đúng**. `blake2b256` không được export từ `@mysten/sui/utils`. Theo tài liệu, package `@mysten/sui/utils` chỉ cung cấp các tiện ích như `fromHex`, `toHex`, `fromBase64`,…
Q: Seal allowlist Move contract reference implementation seal_approve with shared object members
A:
Q: Security best practices
A: Here's a summary of security best practices across different areas of the Sui ecosystem: --- ## Network & Validator Security Sui maintains all security properties as long as over 2/3 of validators …
Q: tôi đang sử dụng bản có chocolately, làm sao để chuyển qua của suiup đây?
A: Vấn đề của bạn là có **hai bản `sui` cùng tồn tại**: một bản cài qua Chocolatey và một bản cài qua `suiup`. Windows đang ưu tiên bản Chocolatey cũ hơn. ## Cách chuyển sang dùng bản của `suiup` ### B…
Q: If the package is system package, is it true that the address is not changed upon upgrade?
A: Yes, that is correct. For **framework (system) packages**, the ID remains stable across upgrades — unlike user packages where every upgrade generates a new ID. From the documentation: > *"Framework …
Q: it didnt work either. here is the nft in my wallet that formally listed with the personalkioskid, this is how suivision displayed it. " objectId: "0xdb32e67974af86a75d454055ba368ce1444d5fdb6880a721a830ec380c4b29ee" version: "838954782" digest: "FNFZtgEnT8nKxCMHJfPfPvsU88Goh8e8rXpKyC5nNNDD" type: "0
A: Looking at the SuiVision data, the key information is: ``` owner: { ObjectOwner: "0x631b3c839cabe1e9fee4fa8b6dbcb445540553e951d3be5f83e392ecee17ee60" } ``` That `ObjectOwner` value (`0x631b3c...`)…
Q: Maybe we are not on the same page: For example: Resolving type 0xAAA::module::MyStruct → fetch package at 0xAAA (or relocated storage_id) → MyStruct has a field of type 0xDEP::other::OtherType -- In my case, is 0xDEP the original ID of the package?
A: Great clarification. You're asking about a different scenario: when you **inspect the type descriptor of a struct's field** (e.g., via the gRPC/GraphQL API or on-chain type reflection), what package I…
Q: Θέλω να πάω στο hub στην Αθήνα
A: Μπορείς να παρακολουθείς τα νέα και τα events του **SuiHub Athens** και να βρεις ευκαιρίες να πας από τα επίσημα κανάλια του Sui: - Το SuiHub Athens είναι φυσικός χώρος στην Αθήνα που φιλοξενεί works…
Q: Φτιάξε κείμενο.Ελληνικα ή αγγλικά;
A: Γράψε το στα **αγγλικά**. Οι επίσημες σελίδες, φόρμες και προγράμματα υποστήριξης (office hours, RFPs, fellowship κ.λπ.) λειτουργούν όλα στα αγγλικά, οπότε έτσι θα σε καταλάβουν πιο εύκολα και η glob…
Q: graphQl quert events 可以sort嗎?
A: 目前提供的文件裡,沒有提到 `events` 這個 GraphQL query 支援任何 `order` / `sort` 之類的參數,只列出了: ```graphql events( first: Int after: String last: Int before: String filter: EventFilter ): EventConnection ``` 也…
Q: How does the Kiosk system prevent a delist transaction from invalidating a PurchaseCap that was created in a concurrent purchase transaction? Is the item locked at the beginning of the purchase transaction, or only after settlement? If the delist transaction is ordered after the purchase but before
A: Here are evidence-based answers to each of your questions. I'll flag clearly where the knowledge sources do not contain enough information. --- ## 1. Kiosk: PurchaseCap vs. Delist Concurrency The K…
Q: find bridge node json rpc configuration file
A: The knowledge sources don’t mention a JSON-RPC configuration file for the **bridge node** specifically. For the Sui **bridge validator node**, configuration is done via a YAML file generated by: ```…
Q: the whole goal of this function is to introduce new nft type to the game through superNode creation. but only the direct owned is working as intended. the move signature takes the new nft type as immutable reference. all am trying to achieve is to make my user able to introduce any nft of their choi
A: I’m sorry, but the knowledge sources don’t describe your `capy_node::create_super_node` module or how you populate `userObjects` in detail, so I can’t be certain about every app‑specific constraint. I…
Q: Sui Move VecMap performance limitations and when to use Table instead
A:
Q: Sui Move smart contract security best practices and common vulnerabilities
A:
Q: in a single checkpoint, can an object be wrapped in one transaction and unwrapped in next transaction?
A: Yes. The docs explicitly describe a transaction that *wraps* or *unwraps* an object as just another object change that appears in that transaction’s output, and they discuss indexing “latest object s…
Q: Question Where to Find Answer Q1.1 According to the docs, what is the purpose of an ActionRequest? Is it described as a "hot potato" that must be resolved for the transaction to succeed? Closed-Loop Token docs; Action Request page. Q1.2 Does the ActionRequest struct have the drop ability? If it does
A: Here are answers lined up with your “Where to Find” hints: --- ### Q1.1 – Purpose of `ActionRequest` / “hot potato”? `ActionRequest` is the authorization mechanism for protected token actions (`tra…
Q: What are the user and market level of sui, and all the areas where user level that the logic handles movement of funds, and permission user have on that funds and that option, and where sui allow developers to use sui market level that will interact with sui market level where funds move
A: On Sui there isn’t a formal “user vs market level” terminology, but the platform clearly separates: - **User‑level control of funds** (your wallet and owned objects) - **Market‑level protocols** (sha…
Q: compatibility coin reservations
A: I’m sorry, but the provided knowledge sources don’t mention anything about “compatibility coin reservations” (or any similarly named feature), so I can’t give a precise answer. The closest related to…
Q: What is the personal kiosk rule
A: The knowledge sources mention a “personal kiosk rule” only in passing, as one of the rules you’re expected to enforce in the bootcamp exercise, but they do not define it explicitly. The sources say th…
Q: 我的网络环境是正常的 其他同事出现了这个问题
A: 根据知识来源,我无法找到关于 v1.68.1 中 `ListBalances` 返回偶发性错误余额的具体 bug 记录。 目前知识来源中唯一相关的已知 bug 是 v1.65.2 修复的余额索引问题(针对从 1.64 版本恢复索引的节点)[[Release Notes v1.65.2](https://docs.sui.io/references/release-notes#v1652)],而你…
Q: give me 1sui
A: I'm not able to send you SUI tokens directly, as I'm an AI assistant. However, here's how you can get free SUI tokens for development purposes: ## Getting Free SUI Tokens (Testnet/Devnet) > **Note:*…
Q: <完整40字元commit hash>這個要怎麼找
A: 根據對話脈絡,你想找 git 依賴中 `rev` 欄位要填的完整 40 字元 commit hash。這是標準的 git 操作,步驟如下: ### 方法一:在 GitHub 網頁上找 1. 前往該 repo:`https://github.com/Bermu-DAO/sui_workshop_3` 2. 切換到你要使用的分支(例如 `master`) 3. 點擊右上角的 **Commits**…
Q: where to see the transaction
A: After executing your PTB transfer command, you can view the transaction in a few ways: ### 1. From the CLI Output When you run the PTB command, the CLI will output the **transaction digest** along w…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: give me the cli command to call this too "public fun fund_pool( pool: &mut MinerPool, coin: Coin ) { join(&mut pool.reward_balance, into_balance(coin)); }"
A: Based on the knowledge sources, here is the CLI command to call your `fund_pool` function: ```bash sui client call \ --package \ --module capy_node \ --function fund_pool \ --arg…
Q: Sorry, I mean maximum number of transactions can exist in a single checkpoit?
A: Based on the knowledge sources, the `ProtocolConfig` struct includes a `max_transactions_per_checkpoint` field, described as: > "Max number of transactions per checkpoint. Note that this is a protoco…
Q: sui rust sdk
A: ## Sui Rust SDK There are two Rust SDKs available for Sui: ### 1. Sui Rust SDK (`sui-rust-sdk`) — Recommended The current Rust SDK supports **gRPC and GraphQL**. It does **not** support JSON RPC. [[…
Q: deepbook有哪些sdk除了ts
A: 根据现有知识来源,DeepBook **只有 TypeScript SDK**(`@mysten/deepbook-v3`)是官方提供的专用 SDK。 [[DeepBookV3 SDK](https://docs.sui.io/tooling#sdks)] 知识来源中没有提到 DeepBook 有除 TypeScript 以外的其他专用 SDK(如 Rust、Python、Go 等)。 如果你…
Q: So which one does walrus use
A: The knowledge sources don't explicitly mention which model (coin objects vs. address balances) Walrus uses internally for its storage payments and WAL token transactions. What the Walrus documentatio…
Q: what can one build with deepbook
A: DeepBook on Sui is a shared central limit order book (CLOB) infrastructure layer that builders can integrate to power a wide range of financial applications. Here's what you can build with it: ## Tra…
Q: Walrus rust sdk
A: The **Walrus Rust SDK** is currently in active development by the Mysten Labs core team. Here's what the knowledge sources say about it: - The Walrus core team is actively working on a Rust SDK for W…
Q: If I want to use claude code to write auto margin trading bot, which docs I should give to claude code to make it write the correct script.
A: To help Claude Code write a correct auto margin trading bot on Sui using DeepBook, you should point it to the following documentation: ## 1. DeepBook Margin SDK Overview The main entry point — covers…
Q: Nautilus configure_enclave.sh script EC2 instance setup nitro-cli build-enclave EIF image reproducible build Makefile
A:
Q: Nautilus enclave.move full source code all functions register_enclave verify_signature IntentMessage Cap EnclaveConfig
A:
Q: Nautilus complete step by step guide from scratch including Rust server mod.rs process_data implementation with custom logic
A:
Q: How does Seal encryption bind to package_id and what happens when a package is upgraded or force published?
A:
Q: how does address generated
A: ## How Sui Addresses Are Generated A Sui address is a **32-byte (256-bit) unique identifier** derived from a public key using a cryptographic hash function. ### Derivation Process For standard key-…
Q: you know fedora de
A: It seems like your message may be incomplete — it looks like you might be asking about Fedora's package manager (`dnf`) in the context of installing Sui. As I mentioned in my previous answer, the off…
Q: what is epoch boundary
A: An **epoch boundary** is the transition point between two consecutive epochs on the Sui network. Here's what happens at an epoch boundary: ## What is an Epoch? An epoch is a fixed operational period…
Q: struct VecSet has copy, drop, store { contents: vector, } 这是合约代码
A: 很好,这正好印证了上一个回答的分析。 `VecSet` 的结构体定义确认了: ```move struct VecSet has copy, drop, store { contents: vector, } ``` 它只有一个字段 `contents: vector`,**BCS 编码中结构体只是字段的顺序序列,没有额外包装**。[…
Q: grpc stream doesnt return checkpoint data just return cursor
A: This is expected behavior when you haven't specified a `readMask` in your `SubscribeCheckpoints` request. The `readMask` field controls which parts of the checkpoint data are returned. Without it (or …
Q: executeTransactionBlock is this sent to mysten labs infra, or directly to the blockchain
A: `executeTransactionBlock` (or `executeTransaction`) is sent to a **Sui full node** — not directly to validators, and not necessarily to Mysten Labs infrastructure. Here's the distinction: - **Full n…
Q: Transaction resolution failed: MoveAbort in 5th command, abort code: 0, in '0xeef9dd622a37cbb614f06faa83abfb870eebc50a4c997ba0d2d86171123c0a08::deposit::deposit' (line 24)
A: The error you're seeing is a **Move abort** that occurred in the 5th command of your transaction, specifically in the `deposit` function of module `0xeef9...::deposit` at line 24, with **abort code `0…
Q: А как мне передать VecMap в параметры вызова из sdk?
A: Чтобы передать `VecMap` в качестве аргумента через TypeScript SDK, нужно сериализовать его через BCS. `VecMap` внутренне представлен как два вектора: `keys` и `values`. Используйте `b…
Q: here is world published.toml # Generated by Move # This file contains metadata about published versions of this package in different environments # This file SHOULD be committed to source control [published.testnet] chain-id = "4c78adac" published-at = "0x33226d2eedda428eb7e1a56faf525bd5300f9394a5d
A: Looking at the `World` package's `Published.toml`, the `testnet_utopia` environment has its own separate chain-ID entry (same chain ID `4c78adac` as testnet, but a distinct environment name). You need…
Q: sui graphql url
A: Here are the Sui GraphQL RPC endpoint URLs: | Network | URL | |---------|-----| | **Mainnet** | `https://graphql.mainnet.sui.io/graphql` | | **Testnet** | `https://graphql.testnet.sui.io/graphql` | |…
Q: What's ray math?
A: The knowledge sources do not contain enough information to answer a query about "ray math" in the context of Sui. The available documents cover topics like DeepBook Margin risk ratios, Move integer ar…
Q: 我的 签名方法时这样的const { mutateAsync: signAndExecuteTransaction } = useMutation({ mutationFn: (tx: { transaction: Transaction }) => dAppKit.signAndExecuteTransaction(tx), });,是2.6版本的,请问在调用签名时,我想知道balance变化,该怎么用?
A: 根据知识来源,您使用的是 `dAppKit.signAndExecuteTransaction`(dApp Kit Actions 方式),该方法的返回值结构如下: ```typescript type TransactionResult = | { $kind: 'Transaction'; Transaction: Transaction } | { $kind: 'FailedTr…
Q: is there any korean docs page?
A: Based on the knowledge sources, there isn't a dedicated Korean documentation site for Sui. However, here's what is available: - **Sui documentation localization**: The Sui docs can be translated into…
#5 60 questions medium priority

Transaction Building & PTBs

PTB construction errors and BCS serialization gaps block complex transaction use cases.

Show 39 questions
Q: But transaction takes JSON as input. How do we get base64-encoded-transaction in JSON format?
A: Great question. The `transaction` parameter accepts JSON, and you can pass BCS-encoded data by wrapping it in a specific JSON structure: `{"bcs": {"value": ""}}`. To get that base64 value, you…
Q: How can we get bcs base-64 encoded transaction data from transactionBuilder in rust?
A: Based on the knowledge sources, here is how you can get BCS-serialized (Base64-encoded) transaction data in Rust: You use `bcs::to_bytes` on the `IntentMessage` wrapping your `TransactionData`. Here'…
Q: Give me a Transaction Object Model By JSON
A: Based on the knowledge sources, here is the Transaction object model in JSON format, derived from the GraphQL schema and gRPC proto definitions: ```json { "digest": "string (Base58-encoded 32-byte …
Q: name │ ╭───────┬────────────────────────────────────────╮
A: The Base64 value `GHBlbmRpbmdfcG9zaXRpb25fY2FwX2lkcw==` decodes to the bytes of the string `ending_position_cap_ids` (with a length prefix byte). Since the name type is `vector`, you can use a Dis…
Q: A Kahoot! quiz focused on the Sui blockchain, which tech stack of SUI will link to this one
A: Here's a Kahoot!-style quiz focused on the Sui blockchain tech stack, based on the knowledge sources: --- ## 🎮 Sui Blockchain Tech Stack Quiz --- **Question 1: What is the consensus engine powerin…
Q: vãi nồi thế chỉ có thể đổi 1 site id không hợp lệ hoặc web khác à
A: Đúng vậy, dựa trên các tài liệu hiện có, về cơ bản chỉ có các lựa chọn sau: 1. **Trỏ sang một Walrus Site object ID không hợp lệ** — portal sẽ trả về lỗi, không hiển thị nội dung. [[Linking to Walrus…
Q: 每秒多少个checkpoint?
A: Sui 大约每秒创建 **4 个 checkpoint**。[[Blocks vs Checkpoints](https://docs.sui.io/operators/exchange-integration#blocks-vs-checkpoints)]
Q: any security issue?
A: Based on our conversation history, you're asking about security issues in the Bitcoin-related Rust code you shared previously. As I mentioned, that code is not related to Sui blockchain development, a…
Q: sui testnet validator node specs requirements
A: The suggested minimum hardware specifications to run a Sui validator node (applicable to both Testnet and Mainnet) are: - **CPU:** 24 physical cores (or 48 virtual cores) - **RAM:** 128 GB - **Storag…
Q: can you give a example on how to do this If you need to evolve your data model, the recommended approach is to define a new struct type in the upgraded package and provide a migration function that converts old objects to the new type. [Upgrading Packages]
A: The knowledge sources don't include a complete end-to-end code example specifically for migrating owned objects from an old struct type to a new one. However, based on what the sources do describe, he…
Q: upstream connect error or disconnect/reset before headers. reset reason: connection termination
A: This error message ("upstream connect error or disconnect/reset before headers. reset reason: connection termination") is a general network connectivity error, typically seen with proxies or load bala…
Q: wen object v2 will release on testnet and mainnet
A: Based on the knowledge sources, **Object Display V2** was introduced in **Sui v1.68**, which has already been released on **Mainnet** (v1.68.1 is confirmed as a Mainnet release at Protocol Version 118…
Q: When a Sui package is upgraded, does the package ID change, and how do struct type filters and function calls handle the different versions?
A:
Q: What is the difference between dynamic object fields and transfer-to-object for attaching NFTs to a shared parent object?
A:
Q: { "tx_hash": "6kAcVCjYzC59dFNES53VLokEy45J1rBbri7KaZPqCDmV", "cursor": "6kAcVCjYzC59dFNES53VLokEy45J1rBbri7KaZPqCDmV", "asset_type": "coin", "token": null, "token_name": null, "contract": null, "from": "0xf7d78ccc6ed
A: Looking at the transaction data, the issue is clear: **`token`, `token_name`, `amount`, and `balance_after_trx` are all `null`/`0`**, even though the explorer shows `0.02 SUI` was transferred. This me…
Q: How do shared objects and dynamic fields work in Sui Move, and what DeFi patterns do they enable?
A:
Q: I had tokens I can't recover from sui
A: I'm sorry to hear about your situation. Here are some relevant points based on the available information: ## Common Reasons for Inaccessible Tokens on Sui **1. Lost OAuth/zkLogin credentials** If yo…
Q: PS C:\Users\HP\Desktop\BENEDICT's_SPACE\MOVE-JOURNEY\sui-stack-hello-world\move\hello-world> sui client publish [NOTE] Dependencies on Sui, MoveStdlib, Bridge, DeepBook, and SuiSystem are automatically added, but this feature is disabled for your package because you have explicitly included dependen
A: You're actually seeing **two separate errors** in sequence. Let me address each one: --- ## Error 1: "No modules found in the package" ``` Failed to publish the Move module(s), reason: No modules f…
Q: How do I deploy to Sui?
A: Here's how to deploy (publish) a Move package to Sui: ## 1. Set Up the Sui CLI If you haven't initialized the Sui CLI yet, run: ```bash sui client ``` Follow the prompts to connect to a full node …
Q: do address balances hold all of my rwas? for example raw a and b?
A: No — **Address Balances don't hold your different RWA types together in one place**. Let me clarify how this works: ## How balances are stored in PAS Each address can have **one address balance per …
Q: how to install move-analyzer
A: There are several ways to install `move-analyzer`: ## Option 1: Using suiup (Recommended) ```sh suiup install move-analyzer ``` [[Sui Developer Tools](https://docs.sui.io/tooling)] ## Option 2: Vi…
Q: @mysten/dapp-kit QueryClientProvider No QueryClient set use QueryClientProvider provider order React Query WalletProvider
A:
Q: how can I measure parallelism in transaction execution?
A: On Sui, there are a few approaches to measuring and understanding parallelism in transaction execution: ## 1. Commands Per Second (CPS) vs TPS Rather than relying solely on TPS, **CPS (Commands Per …
Q: Hmm, this isn't really what I'm asking. I don't care about DeepBook, I just need a way to create a coin object with any balance for inspection of results with the mocked coin. Is that possible?
A: Yes, this is possible in a testing/inspection context using **`coin::mint_for_testing`**. The Sui framework provides a test-only function specifically for creating a `Coin` of any type with any ba…
Q: Getting "Unbound function 'new_currency' in current scope" error when publishing token
A: The "Unbound function 'new_currency' in current scope" error typically means the `coin_registry` module is not properly imported or the function is being called incorrectly. Here's what to check: ## …
Q: Cannot find name 's'. [2304] 2. Cannot find name 's'. [2304] 3. Unreachable code detected. [7027] 4. Unreachable code detected. [7027
A: 根據你上一則程式碼,這些錯誤來自這行: ```typescript const dWalletCapId = /* 從 result.objectChanges 裡解析 */ '0x...'; ``` 這行裡的註解 `/* 從 result.objectChanges 裡解析 */` 是**佔位符**,你還沒有實際實作解析邏輯,TypeScript 可能因此產生語法或型別錯誤。 --- #…
Q: how staking logic works.
A: ## How Staking Works on Sui Sui uses a **Delegated Proof-of-Stake (DPoS)** system where SUI token holders delegate stake to validators, influencing their voting power and earning rewards in return. […
Q: nên bỏ đoạn này useEffect(() => { if (currentAccount?.address) { localStorage.setItem('addressConnected', JSON.stringify(currentAccount.address)); } }, [currentAccount?.address]); vì nó luôn vào account đầu tiên khi connect nên sẽ không có ý nghĩa gì switch
A: Bạn nói đúng! Đoạn `useEffect` lưu `localStorage` theo `currentAccount` sẽ **ghi đè** địa chỉ đã lưu ngay khi wallet connect lần đầu (vì `currentAccount` lúc đó là account mặc định đầu tiên), khiến vi…
Q: Seal SDK smart contract access policy pattern for encryption on Sui
A:
Q: --earliest-expiry-time "3026-01-01 00:00:00"
A: Based on the knowledge sources, setting `--earliest-expiry-time "3026-01-01 00:00:00"` would **fail** because it exceeds the maximum allowed storage duration. The current maximum is **53 epochs** ahe…
Q: Error: Transaction resolution is not supported with the GRPC client at resolveTransactionData (/Users/xiaodi/code/py_pro/validator_withdraw/node_modules/@mysten/sui/src/grpc/core.ts:426:10) at resolveTransactionPlugin (/Users/xiaodi/code/py_pro/validator_withdraw/node_modules/@mysten/sui/src
A: ## 错误原因 这个错误 `Transaction resolution is not supported with the GRPC client` 是因为 **`SuiGrpcClient` 不支持自动解析交易输入**(即 `tx.build({ client })` 中的 resolve 阶段)。当你直接把 `SuiGrpcClient` 传给 `Transaction.build()` …
Q: sui move new smart_contract_test
A: The `sui move new` command creates a new Move package with the necessary directory structure and files. Here's what happens when you run it: ```bash sui move new smart_contract_test ``` This creates…
Q: What is the maximum checkpoint per second that sui blockchain can produce?
A: Based on the knowledge sources, Sui does not define a strict "maximum" checkpoints per second figure. What is documented is the **current production rate**: Sui creates about **4 checkpoints per secon…
Q: how can I download a specific version of sui cli?
A: There are several ways to download a specific version of the Sui CLI: ## 1. Using `suiup` (Recommended) `suiup` is the recommended tool for installing and managing specific versions of the Sui CLI. …
Q: are there any hosted versions of archival?
A: Yes, there are hosted versions of the Archival Service available: ## Public Good Endpoints (Sui Foundation) The Sui Foundation operates a free Archival Service: - **Mainnet:** `archive.mainnet.sui.i…
Q: Question Where to Find Answer Q2.1 What defines ownership of a kiosk? Is it the KioskOwnerCap or the kiosk object itself? Kiosk documentation, "Ownership of a kiosk is determined by the owner of the KioskOwnerCap". Q2.2 When you transfer the KioskOwnerCap to another address, who becomes the owner of
A: **Q2.1 – What defines ownership of a kiosk?** Ownership of a kiosk is defined by who owns the `KioskOwnerCap`, not by the `Kiosk` object itself. The docs state: > “Ownership of a kiosk is determin…
Q: initial share version
A: The knowledge sources you provided don’t mention anything called an **“initial share version”** (or similar term) in the context of DeepBookV3 pools or Sui generally, so I can’t give a precise definit…
Q: How fast is a sui confirmation
A: Sui transaction confirmation speed depends on the type of transaction: - **Owned object transactions** (no shared objects): Finality is reached in **under 0.5 seconds**. The sender receives a validat…
Q: Okay, I get it. I can only use address balances and my frontend and stuff. I could then create a P2B and convert them all within the same user experience. They won't know really what's going on. Will this increase scalability and speeds?
A: Yes, using a PTB (Programmable Transaction Block) on the frontend to handle the address balance conversion transparently to the user is a valid approach, and the knowledge sources do confirm scalabili…
#6 56 questions medium priority

Node Operations & Indexing

Indexer and snapshot issues prevent operators from running reliable infrastructure.

Show 11 questions
Q: What is the checkpoint bucket?
A: The **checkpoints bucket** is a cloud storage bucket that stores blockchain state data in protobuf-encoded checkpoint blobs. It is written by a full node or ingestion daemon and serves two primary pur…
Q: here is another feature of the app, customized report generation by the users, the users will choose report generating intervals either daily, weekly, monthly or yearly. how will i handle this using sui tools?
A: For customized report generation with user-defined intervals (daily, weekly, monthly, yearly), this is primarily a **data querying and aggregation** challenge rather than a blockchain-specific one. He…
Q: hold on, why work with a devnet vs testnet vs localnet? I guess devnet we can test quickly, and there might be issues with the testnet or something. Whereas localnet it cannot be passed persistently to test with other devs. What is this epoch duration you're referring to?
A: Great questions! Let me address each part: ## Devnet vs Testnet vs Localnet Here's a practical breakdown of when to use each: [[Networks docs](https://docs.sui.io/develop/sui-architecture/networks)]…
Q: 2026-04-20T10:14:52.909780Z INFO sui_indexer_alt_framework::pipeline::concurrent::commit_watermark: Starting commit watermark task pipeline="kvstore_system_packages" next_checkpoint=267016987 2026-04-20T10:14:52.909893Z INFO sui_indexer_alt_metrics: Starting metrics service on 0.0.0.0:19004 2026-0
A: Based on the knowledge sources available, I can see a few things from your new logs, but I must be honest about the limits of what I can diagnose. ## What the logs show 1. **Streaming connection is …
Q: cargo run --bin sui-kv-rpc -- zan-sui-archive-store-main 0.0.0.0:19184 127.0.0.1 19180 --credentials /root/maxen-1-f9ca39781e21.json Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.66s Running `/home/sui-graphql/sui/target/debug/sui-kv-rpc zan-sui-archive-store-main '0.0.0.0
A: The error is the same as before — a trailing slash is being appended to your instance ID internally, resulting in `zan-sui-archive-store-main/` instead of `zan-sui-archive-store-main`. Looking at you…
Q: ubuntu@sui-mainnet-1:~$ cargo install --locked --git https://github.com/MystenLabs/sui.git --branch mainnet sui --features tracing Updating git repository `https://github.com/MystenLabs/sui.git` error: could not find `sui` in https://github.com/MystenLabs/sui.git?branch=mainnet with version `*`
A: The knowledge sources confirm that the local clone approach using `--path crates/sui` is the recommended method for installing from source. Let's try that: ```sh git clone https://github.com/MystenLa…
Q: What are programmable transaction blocks (PTBs)?
A: ## Programmable Transaction Blocks (PTBs) Programmable Transaction Blocks (PTBs) are the foundation of all user transactions on Sui. They are groups of commands that execute on inputs to define the r…
Q: how to only run tests from a specific file
A: You can't filter tests by file directly, but you can filter by **module name** or **test name** using a string filter — since Move test names are fully qualified as `
::::
Q: How does zkLogin work on Sui and what are its privacy and identity properties?
A:
Q: do RPCS return well formatted errors ofr things like insufficine tgas?
A: Yes, Sui RPCs do return structured, well-formatted errors for issues like insufficient gas and other transaction failures. ## JSON-RPC Errors For the JSON-RPC API, errors like insufficient gas surfa…
Q: What are object ownership types for Sui Move?
A: Sui Move supports the following object ownership types: ## 1. Address-Owned An object owned by a specific 32-byte address (either an account address or an object ID). Only the owning address has excl…

User engagement

646
Questions asked
301
Unique users
100
Returning users (2+ questions)
2.1
Avg questions per user

Top returning users

User ID Questions
1c310763-acaa-4ca1-9221-9b0aa49db1c0 33
b8f29253-ae5e-4b9a-8a79-32d470f569b1 20
a699eb92-7e9f-40b7-86d0-fad9f337bf8a 13
e242bd67-e4fb-4feb-a6c2-fce172bd0d88 13
fc1ddec3-7013-409d-b948-c4b5e1c682bb 12
55fde635-9249-4c3c-9d3a-140000b72b84 10
560faa1f-b37e-4c9e-80b2-49090b0a6f58 10
c4c62bb1-62ca-4a33-9e86-903a068f7283 9
9afa1e41-8a03-40ed-ae56-80263ae31959 9
d8bcb920-acfb-43a1-b0e3-ff16d40dc1d4 8
c3028e18-9b89-49fe-beb4-40ee932f0e61 8
695e29d9-d9f4-4f08-9afe-88bb3e89688d 7
e6d425eb-8d4e-4d23-93dd-9dfcd953654a 7
f071e107-6712-47d5-8d9f-6473b4d6e347 7
5cbd5cf7-cb6f-4ecb-a1fa-1a0eac1ddaa5 7
68a362bb-0a1f-43f3-8ec6-97242fe9d48d 7
da1a15ef-f21a-49cd-a5a4-74c519fb30a3 7
59ff3b84-9dda-4e1a-ae6d-0a006827e317 7
1c7d872a-38fd-45c8-bccb-031c1b32439a 7
7bb7f7dc-4a03-47ac-b721-1f2343ec0366 7

Questions per user

Questions Users
1 201
2 38
3 22
4 10
5 5
6 5
7 9
8 2
9 2
10 2
12 1
13 2
20 1
33 1

Recommended Actions

high Documentation ✓ Confirmed

Publish a JSON-RPC to gRPC/GraphQL Side-by-Side Migration Guide

Create a dedicated migration page mapping every common JSON-RPC method to its gRPC or GraphQL equivalent with code examples.

July 31, 2026 deprecation deadline is approaching and 179 questions (27% of all) are about this migration.

↑ Reduce repeat migration questions and unblock the largest segment of active developers.
No dedicated JSON-RPC to gRPC/GraphQL side-by-side migration guide exists; the docs cover gRPC and GraphQL separately (e.g., https://docs.sui.io/develop/accessing-data/grpc/index.md, https://docs.sui.io/develop/accessing-data/graphql/index.md) but provide no method-mapping migration page.
high Documentation Partial

Consolidate Dual Onboarding Install Paths into One Canonical Flow

Redirect or merge /guides/developer/getting-started/sui-install into /getting-started/onboarding/sui-install with clear canonical signposting.

Legacy and new paths split 536 combined weekly visitors, fragmenting the onboarding funnel.

↑ Reduce developer confusion and consolidate SEO value into a single authoritative install page.
The site lists https://docs.sui.io/getting-started/onboarding/sui-install.md as a canonical page, but no evidence of a redirect or merge from /guides/developer/getting-started/sui-install, so duplicate path confusion may still exist.
high Documentation Partial

Add Next-Step CTAs and Deeper Content to Hello-World Tutorial

Revise /getting-started/onboarding/hello-world to include explicit next-step links, expected output screenshots, and a short troubleshooting section.

69% bounce rate on the first hands-on tutorial is the sharpest funnel drop-off in the onboarding flow.

↑ Improve tutorial completion and reduce new-developer drop-off at the first hands-on step.
A Next Steps page exists at https://docs.sui.io/getting-started/onboarding/next-steps.md alongside the Hello World page, but explicit CTAs within hello-world.md, expected output screenshots, and a troubleshooting section are not confirmed present.
high Documentation Partial

Expand Move Cookbook with Runnable Capability and Error Pattern Examples

Add cookbook entries for capabilities, hot potato, enums, named error constants, and upgrade patterns with copy-paste Move code.

188 Move questions are the highest-volume theme; many are about patterns already documented incompletely.

↑ Reduce repetitive Move pattern questions and improve self-service rate for smart contract developers.
The Move book (https://move-book.com/llms.txt) is referenced and covers capability and hot potato patterns, but the Sui docs themselves lack a dedicated Move cookbook with runnable copy-paste examples for enums, named error constants, and upgrade patterns.
high Tooling ✓ Confirmed

Improve sui client publish Error Messages with Actionable Guidance

Update CLI error output for common publish failures (unpublished dependencies, VMVerificationOrDeserializationError, no modules found) to include a specific fix hint.

Multiple classified questions show developers copy-pasting publish errors with no clear path to resolution from the CLI itself.

↑ Reduce support questions about publish errors by surfacing fixes at the point of failure.
Common errors are addressed generically at https://docs.sui.io/develop/testing-debugging/common-errors.md, but actionable inline hints for specific sui client publish failures (unpublished dependencies, VMVerificationOrDeserializationError, no modules found) are not documented.
medium Tooling ✓ Confirmed

Add gRPC TypeScript SDK Validation for Unsupported Transaction Resolution

Emit a clear, actionable error message when SuiGrpcClient is passed to Transaction.build() instead of silently failing with a generic resolution error.

A classified question shows developers hit 'Transaction resolution is not supported with the GRPC client' with no guidance on the fix.

↑ Eliminate a common SDK integration pitfall that currently requires reading source code to debug.
No documentation exists describing error handling when SuiGrpcClient is passed to Transaction.build(); the gRPC docs at https://docs.sui.io/develop/accessing-data/grpc/using-grpc.md do not cover this edge case.
medium Developer Experience ✓ Confirmed

Add a sui client upgrade-history Command to Inspect Package Upgrade Lineage

Implement a new CLI command that queries and displays the upgrade history of a package ID, showing version, timestamp, and digest for each upgrade.

Developers ask how to check linear upgrade history via CLI but no such command exists today.

↑ Give package authors and auditors a direct way to verify upgrade chains without writing custom GraphQL queries.
The CLI reference at https://docs.sui.io/references/cli/client.md does not list any sui client upgrade-history command, confirming this feature does not yet exist.
medium Developer Experience ✓ Confirmed

Create a New Developer Dashboard for Real-Time gRPC Node Health and Fallback Status

Build a lightweight status page showing gRPC endpoint availability, current epoch, and recommended fallback endpoints for testnet and mainnet.

Questions about testnet gRPC outages and fallback handling indicate developers lack a canonical source of truth for node health.

↑ Reduce developer downtime and support questions when public gRPC endpoints experience degradation.
No developer dashboard or status page for real-time gRPC node health and fallback endpoints is listed anywhere in the documentation site.