This repository contains scripts for managing a Solana Native Token Transfer (NTT) program using Squads multisig functionality.
- Solana web3.js
- Anchor framework
- Squads SDK (@sqds/multisig)
- Wormhole NTT SDK
This script creates a new Squads multisig instance on Solana's devnet. Sets up member permissions and threshold requirements.
Handles the transfer of NTT program ownership to a Squads vault on devnet.
Key Features:
- Transfers ownership to a temporary account
- Creates and executes a transaction proposal through Squads
- Claims ownership using the Squads vault
Handles the transfer of NTT program ownership to a Squads vault on mainnet in addition to the Squads UI.
Manages NTT program parameters through Squads multisig.
Key Features:
- Sets inbound and outbound rate limits for token transfers
- Implements pause/unpause functionality
- Creates and executes Squads proposals for parameter changes
Each script requires:
- A wallet keypair JSON file
- Specific program IDs and addresses
- Connection to Solana devnet
-
Update the following TODOs in each script:
- Wallet paths
- NTT manager addresses
- Squads public keys
-
Transaction signing:
- Multiple squad members may need to sign based on threshold
- Proper permissions must be set for transaction execution