This tool is designed for development and testing only, using dummy seed phrases, dummy XPRVs, and non-sensitive descriptors.
Do NOT use real seed phrases, real XPRVs, or any live wallet data on an online machine.
If real wallet material must be used for evaluation purposes, this tool should be run exclusively on an OFFLINE, AIR-GAPPED DEVICE with all network connectivity disabled.
For detailed instructions on preparing and running this tool on an offline device, see AIRGAPPED_USAGE.md.
Using this tool with real keys on an internet-connected system may compromise wallet security.
# Clone the repo
git clone https://github.com/SaniExp/NunchukDescriptorImporter.git
# Enter the project directory
cd NunchukDescriptorImporter
# (Optional) Create a virtual environment
python3 -m venv venv
source venv/bin/activate # Linux / macOS
# venv\Scripts\activate # Windows
# Install required dependencies
pip install -r requirements.txt- Parses Nunchuk-exported descriptors
- Extracts XPUBs + derivation paths
- Derives matching XPRVs (from test seeds)
- Replaces XPUBs → XPRVs inside the descriptor
- Calculates the new checksum
- Generates a ready-to-execute
importdescriptorsJSON payload - Customizable through
config.json
Edit bitcoin.conf with the desired values, leave as it is for defaults:
{
"descriptor": {
"timestamp": null,
"range": [0, 1000],
"next_index": 0
}
}python nunchuk_descriptor_import.pyYou will be prompted to:
- Paste Nunchuk descriptor
- Enter seed phrases (TEST SEEDS ONLY)
- Enter passphrases
The script outputs:
createwalletcommandimportdescriptorscommand
createwallet "WALLET_NAME" false false "" false trueimportdescriptors "[{ ... }]"If this tool has been helpful and you would like to support continued development, donations are greatly appreciated.
bc1qsmq2tkxhdpugdrsf5egc536hdqu0tqcdr57njrThis tool is released under the terms of the MIT license. See LICENSE for more information or see https://opensource.org/licenses/MIT.
