A modular automation tool for SUI blockchain operations that simplifies complex tasks like allowlist management, service subscription handling, and publishing blobs to the blockchain. With features such as multi-wallet support, proxy integration, and daily automation, the tool is designed to improve efficiency and scalability.
- Create new allowlist entries.
- Add addresses to allowlists.
- Publish content blobs to allowlists.
- Create service entries with custom amounts and durations.
- Publish content blobs to subscription services.
- Use single or multiple wallets.
- Process tasks in sequence for each wallet.
- Run daily operations across all configured wallets.
- Support for HTTP/HTTPS proxies.
- Automatic proxy rotation for better performance.
- Use URLs for image sources.
- Use local images from disk.
- Generate random images from free APIs.
- Schedule daily runs at specified times.
- Configure retry behavior for failed operations.
- Run headless with default configurations.
git clone https://github.com/zackymrf/sealBot.git
cd sealBotnpm install- Single Wallet: Create a
private_key.txtfile with your private key, if private key does not work, use pharse / mnemonic . - Multiple Wallets: Add your wallet keys/ pharse to
wallets.txt, one per line. - Optional: Create a
proxies.txtfile with proxy configurations.
- Single Wallet: Add your SUI private key or mnemonic to a file named
private_key.txtin the project root. - Multiple Wallets: Add each wallet's private key or mnemonic to
wallets.txt, one per line.
Add your proxies to a file named proxies.txt, with one proxy per line in any of the following formats:
host:porthost:port:username:passwordusername:password@host:port
Run the tool interactively:
npm start-
Create Allowlist and Publish Blob
- Create a new allowlist entry.
- Add your wallet address to the allowlist.
- Upload an image as a blob.
- Publish the blob to the allowlist.
-
Create Service Subscription and Upload Blob
- Create a new service subscription.
- Upload an image as a blob.
- Publish the blob to the subscription service.
-
Run Both Tasks Simultaneously
- Perform both tasks in sequence.
- Use URL: Provide a direct URL to an image or use the default random image.
- Use Local File: Place an
image.jpgfile in the project root directory. - Generate Random Image: Automatically fetch a random image from various free services.
Run the tool on a scheduled basis:
npm run scheduleThis will start a scheduler that runs the bot daily at the configured time (default: 10:00 AM). The scheduler will:
- Load all wallets from
wallets.txt. - Execute both allowlist and subscription tasks for each wallet.
- Use random images by default.
- Retry failed operations automatically.
To configure the scheduler, create or edit the schedule-config.json file:
{
"schedule": "0 10 * * *", // Cron expression: run at 10:00 AM daily
"maxRetries": 3, // Number of retry attempts for failed tasks
"retryDelay": 300000 // Delay between retries (5 minutes)
}sui-seal-blockchain-tool/
βββ config/
β βββ constants.js # Configuration constants
βββ services/
β βββ logger.js # Logging service
βββ utils/
β βββ promptUtil.js # User input utilities
β βββ proxyManager.js # Proxy handling
β βββ suiBot.js # SUI blockchain interactions
β βββ walletManager.js # Wallet management
βββ .gitignore # Git ignore rules
βββ index.js # Main application entry point
βββ package.json # Project dependencies
βββ scheduler.js # Daily automation scheduler
βββ private_key.txt # Single wallet key (not in repo)
βββ wallets.txt # Multiple wallet keys (not in repo)
βββ proxies.txt # Proxy configurations (not in repo)
Ensure all dependencies are installed by running:
npm installCheck the format of your private key in private_key.txt or wallets.txt. The tool supports multiple formats:
- Mnemonic phrases (12 or 24 words)
- Hex private keys (with or without 0x prefix)
- Base64 encoded private keys
- SUI private key format (
suiprivkey...)
Verify your internet connection and proxy settings if applicable. If using proxies, ensure they're correctly formatted in proxies.txt.
If using the local image option, ensure image.jpg exists in the project root directory.
If the scheduler isn't working correctly:
- Check your system's time settings.
- Verify the cron expression in
schedule-config.json. - Check the logs for any error messages.
This project is licensed under the MIT License. See the LICENSE file for details.