A setup and utility CLI for the Sui blockchain ecosystem, written in Rust. It wraps common sui CLI operations into a single, ergonomic command interface — including project scaffolding, building, testing, deploying, and an interactive TUI dashboard.
- init — Scaffold a new Sui Move project with a config file and sample module
- check — Verify required toolchain dependencies are installed
- build — Compile and test Move packages, with optional file-watch mode
- deploy — Publish Move packages to any Sui network
- wallet — Inspect and create wallet addresses
- dashboard — Live terminal UI showing wallet info and package metadata
Run sui-runner check after installing to confirm everything is in place.
curl -fsSL https://suirunner.vercel.app/install.sh | bashirm https://suirunner.vercel.app/install.ps1 | iexgit clone https://github.com/MikeyA-yo/sui-runner
cd sui-runner
cargo build --releaseThe binary will be at target/release/sui-runner. Add it to your PATH or copy it wherever convenient.
Pre-built binaries for Linux (x86_64), macOS (x86_64 and ARM64), and Windows (x86_64) are attached to each GitHub Release.
sui-runner [OPTIONS] <COMMAND>
Global options
| Flag | Description |
|---|---|
-v, --verbose |
Enable detailed output |
sui-runner init -n <project-name> -N <network>| Flag | Short | Default | Description |
|---|---|---|---|
--name |
-n |
required | Project name |
--network |
-N |
testnet |
Target network (mainnet, testnet, devnet, localnet) |
Creates a Sui Move project directory, a sui-runner.json config file, and injects a starter Move module.
sui-runner check [--verbose]Confirms sui, git, and cargo are installed. Pass --verbose to print version strings.
sui-runner build [OPTIONS]| Flag | Description |
|---|---|
--path <PATH> |
Path to the Move project (default: .) |
--test |
Run sui move test after building |
--filter <NAME> |
Run only tests whose name contains <NAME> |
--watch |
Rebuild/retest automatically on file changes |
--skip-fetch-latest-git-deps |
Skip fetching remote git dependencies |
--generate-docs |
Generate Move documentation |
Watch mode monitors sources/, tests/, and Move.toml with a 500 ms polling interval.
sui-runner deploy [OPTIONS]| Flag | Description |
|---|---|
--path <PATH> |
Path to the Move project (default: .) |
--gas <AMOUNT> |
Gas budget in MIST (default: 150000000) |
Runs sui client publish against the currently active network.
sui-runner wallet <ACTION>| Action | Description |
|---|---|
address |
Print the active wallet address |
list |
List all addresses in the keystore |
new |
Create a new ED25519 address |
sui-runner dashboard [--refresh <SECONDS>]Launches a terminal dashboard with two panels:
- Wallet — active address, network, and SUI balance
- Package — name, version, and Move edition from
Move.toml
| Key | Action |
|---|---|
r |
Refresh data manually |
q |
Quit |
Pass --refresh <N> to auto-refresh every N seconds.
Generated by sui-runner init. Contains basic project metadata:
{
"name": "my-project",
"network": "testnet",
"version": "0.1.0"
}| Crate | Purpose |
|---|---|
clap |
CLI argument parsing |
tokio |
Async runtime |
duct |
Shell command execution |
ratatui + crossterm |
Terminal UI |
notify |
File system watching |
serde / serde_json |
JSON serialization |
anyhow |
Error handling |
Pull requests are welcome. Open an issue first for significant changes.
MIT