NKXTool and NKXTool-UI - Kontakt library tool for Windows

Discussion in 'Kontakt' started by yodadl, Jul 12, 2026 at 4:58 PM.

  1. yodadl

    yodadl Platinum Record

    Joined:
    Jan 21, 2022
    Messages:
    92
    Likes Received:
    155
    [​IMG]

    upload_2026-7-12_15-52-10.jpeg


    Hi folks, here are some tools to play with your NKX files (and NICNT, NKR, NKS) whitout using Total Commander or Double Commander.

    NkxTool is 64-bit command-line utility for managing Native Instruments Kontakt archives. It acts as a specialized wrapper around the inNKX.wcx64 plugin, allowing you to list files, extract, and seamlessly pack libraries.

    Key Features
    - Multi-Format Support: Read and write .nkx (Audio/Samples), .nkr (Resources/Scripts), and .nicnt (Library Info) containers.
    - Smart Packing (Auto-Split): Automatically handles the strict 1.95 GB (2,090,000,000 bytes) size limit of the NKX format. If a source folder exceeds this limit, NkxTool automatically splits the output into _00.nkx, _01.nkx, etc.
    - Filelist Support: Pack archives dynamically using a text file containing relative paths (@filelist.txt), perfect for scripted audio conversions or selective repacking.
    - Update function for internal database: synced with system NativeAccess.xml with exotic / old libraries unique support.
    - Modern Architecture: Built with C# on .NET 10 (win-x64), completely standalone.

    NKXTool-UI is a lightweight desktop interface for NkxTool.exe, allowing to browse, create, and extract NKX and other NI archives format on Windows.

    The application focuses on a clean native workflow: pack a folder, pack from a @filelist.txt, unpack one or more archives, browse archive contents, switch light/dark theme, and run batch multi-pack operations from a single window.

    .Net 10.0 download page


    Liens vers les pages
    https://github.com/manzing/NKXTool
    https://github.com/manzing/NKXTool-UI

    I will update my LiTE Converter script very soon, with full NKX unpacking/packing support and batch mode relying on NKXTool.

    I hope you will find these tools useful, feel free to leave some feedback here.
     
    Last edited: Jul 12, 2026 at 6:38 PM
    • Love it! Love it! x 3
    • Like Like x 2
    • List
  2.  
  3. yinka kolina

    yinka kolina Newbie

    Joined:
    Sunday
    Messages:
    1
    Likes Received:
    0
    hey, stumbled accross this and wanted to ask does this help add kontakt libraries in windows? I recently switched to windows from mac and apparently there is no KLU for windows and I tried to make one but still no luck so I'd be very glad if you pointed me in the right direction
     
  4. Xupito

    Xupito Audiosexual

    Joined:
    Jan 21, 2012
    Messages:
    8,023
    Likes Received:
    4,431
    Location:
    Europe
    ¡Amazing! Thank you man :wink: :beg:
     
  5. xorome

    xorome Audiosexual

    Joined:
    Sep 28, 2021
    Messages:
    1,817
    Likes Received:
    1,371
    Very cool!

    I just took this for a spin to automate packing up some old Dan Dean instruments. Worked flawlessly.

    Two feature requests:

    - A flag (or even default) to use the current working directory instead of having to write out absolute paths would feel more natural.
    - A "-y" flag that prompts the user before overwriting samples when unpacking would be nice.
     
  6. yodadl

    yodadl Platinum Record

    Joined:
    Jan 21, 2022
    Messages:
    92
    Likes Received:
    155
    No sorry, this tool is moslty for advanced users who want to modifiy Kontakt library: packing or unpacking samples archives, edit nicnt files...
    I think you don't really need a tool for what you want, or maybe the kontakt_button small app from Bobdule can help you to add your library, depending on your Kontakt version (Legit, R2R, Bobdule...)

    Not sure of what you mean for current working directory, could you put an example of the command line you would like with a small explanation?
    I thought I implemented a basic file collision handling but I guess I forgot! I think I would add it the other way: no flag -> ask/warn user, flag -y -> overwrite existing files without asking.
    I will add it soon.
     
  7. xorome

    xorome Audiosexual

    Joined:
    Sep 28, 2021
    Messages:
    1,817
    Likes Received:
    1,371
    Say I put NKXTool.exe in D:\Dropbox\bin\
    Inside my D:\Kontakt folder, I want to pack D:\Kontakt\TestInstrument


    Current behaviour:

    D:
    cd \Kontakt
    nkxtool pack samples.nkx TestInstrument
    Critical Error: Could not find a part of the path 'D:\Dropbox\bin\TestInstrument'.

    Desired behaviour: nkxtool picks up the D:\Kontakt part by itself.
     
  8. yodadl

    yodadl Platinum Record

    Joined:
    Jan 21, 2022
    Messages:
    92
    Likes Received:
    155
    Your line wouldn't work without previously adding nkxtool to PATH variable cause you're not in nkxtool folder.
    Assuming you configured the PATH, you still have to specify the curent folder using "." and backslash.
    In your example:
    cd D:\Kontakt
    nkxtool pack samples.nkx .\TestInstrument

    Otherwise, current path is relative to nkxtool executable, this is the standard windows behavior.
     
  9. Natasha_22

    Natasha_22 Newbie

    Joined:
    Aug 17, 2024
    Messages:
    17
    Likes Received:
    1
    Thank you this tool useful, i still using script for unpack, convert, pack
     
  10. xorome

    xorome Audiosexual

    Joined:
    Sep 28, 2021
    Messages:
    1,817
    Likes Received:
    1,371
    Yep, that's how I have it set up.


    Can't get it to work, here's nkxtool's err msg:

    > D:
    > cd "\sfz\Drum - Taiko & Djembe - World Percussion Hunter"

    > nkxtool pack test.nkx .\djembe
    Critical Error: Could not find a part of the path 'D:\Dropbox\bin\djembe'.

    > nkxtool pack .\test.nkx .\djembe
    Critical Error: Could not find a part of the path 'D:\Dropbox\bin\djembe'.

    > nkxtool pack .\test.nkx .\djembe\
    Critical Error: Could not find a part of the path 'D:\Dropbox\bin\djembe'.

    > nkxtool pack test.nkx .\djembe\
    Critical Error: Could not find a part of the path 'D:\Dropbox\bin\djembe'.

    > du djembe
    186M djembe

    I'll have a look at the source code later.

    ---

    E: I commented out Directory.SetCurrentDirectory(exeDirectory); and it seems to work now with both relative and absolute paths. inNKX ini still ends up in the correct directory, nkx have the same checksum.

    > D:
    > cd "\sfz\Drum - Taiko & Djembe - World Percussion Hunter\"
    > nkxtool pack test.nkx .\djembe\
    Packing batch 1/1 (304 files) into 'D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\test.nkx'...
    Batch 1 success.

    > nkxtool pack test2.nkx djembe
    Packing batch 1/1 (304 files) into 'D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\test2.nkx'...
    Batch 1 success.

    > cd \
    > nkxtool pack test2.nkx djembe
    Critical Error: Could not find a part of the path 'D:\djembe'.
    (That's correct)


    > nkxtool pack test3.nkx "D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\djembe"
    Packing batch 1/1 (304 files) into 'D:\test3.nkx'...
    Batch 1 success.


    > nkxtool pack "D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\test4.nkx" "D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\
    djembe"
    Packing batch 1/1 (304 files) into 'D:\sfz\Drum - Taiko & Djembe - World Percussion Hunter\test4.nkx'...
    Batch 1 success.

    cksum.png
     
    Last edited: Jul 13, 2026 at 1:00 PM
  11. yodadl

    yodadl Platinum Record

    Joined:
    Jan 21, 2022
    Messages:
    92
    Likes Received:
    155
    @xorome
    Indeed, the working directory is set to the executable directory by default.
    I have not anticipated to use the app this way, at start I just wanted a simple command line tool to call in scripts, so I thought the app with minimal options.
    That said, set working directory = current directory would not impact the app behavior so I added it in current dev version.

    It includes the following changes:
    • Unpacking now skip existing files with same filename.
    • Added command line switch -y for silent overwriting during unpack
    • Added command line switch -f for update command, allowing to specify path for NativeAccess.xml
    • Set current directory as working directory
    https://github.com/manzing/NKXTool/releases/download/1.2.0-dev/NkxTool-win-x64-1.2.0-dev.zip
     
Loading...