ZygiskNext Module Guide: Zygisk Modules, ZN Modules and znctl

'ZygiskNext module' can mean two things: ZygiskNext itself (installed as a module) and the modules that run on top of it. This guide explains both, plus the tools Zygisk Next gives you to manage them.

  • Guide 07
  • Updated 11 November 2026
  • 4 min read
  • ZygiskNext.com Editorial
Illustrated cover: ZygiskNext Module Guide: Zygisk Modules, ZN Modules and znctl
Contents
  1. ZygiskNext is itself a module
  2. Standard Zygisk modules
  3. Adding modules safely
  4. Denylist and hiding settings
  5. ZN-specific modules
  6. Managing modules with znctl
  7. The WebUI
  8. Popular kinds of Zygisk modules
  9. Module file layout (for the curious)
  10. Frequently asked questions
  11. When a module misbehaves

ZygiskNext is itself a module

You install Zygisk Next like any other root module, through Magisk, KernelSU or APatch. Its internal module ID is zygisksu, which you'll see in paths like /data/adb/modules/zygisksu. Once it's active, it provides the Zygisk API for other modules.

Standard Zygisk modules

Most "Zygisk modules" are written against the standard Zygisk API that Magisk introduced. Zygisk Next guarantees the same API behaviour, so these modules load without changes, whether they're Xposed-style frameworks, hiding tools or app tweaks. Zygisk Next doesn't promise to reproduce Magisk's internal features, only the API.

Adding modules safely

  1. Install one Zygisk module at a time and reboot.
  2. Check the WebUI or znctl after each reboot.
  3. If something breaks, you'll know exactly which module caused it.

Denylist and hiding settings

Zygisk Next lets you control which apps Zygisk modules act on and which apps should see an unmodified system. Apps on the denylist are skipped by Zygisk modules and can have module mounts reverted. Zygisk Next includes Shamiko-style hiding modes, so you may not need a separate hiding module for basic cases. If you do install a dedicated hiding module, follow its README for how it expects the denylist to be configured. Some expect it enforced, others expect it off.

A good habit: add banking, payment and work apps to the denylist first, then test them one by one.

ZN-specific modules

Release 1.2.0 introduced Zygisk Next modules and their own API. These can inject into more processes than standard Zygisk modules. Later releases refined them: 1.3.1 fixed modules that define multiple scopes, and 1.3.4 removed the need for extra sepolicy rules for inline hooks. These modules only work with Zygisk Next.

Managing modules with znctl

Since 1.2.0, the znctl command is available in a root shell. It reports and controls the running state of Zygisk and ZN modules:

su
znctl

Release 1.3.0 also documented linker control through the daemon:

/data/adb/modules/zygisksu/bin/zygiskd linker <system|builtin>

Changes take effect immediately.

The WebUI

WebUI featureSince
ZN module list1.3.4
Zygisk module error checks1.3.4
Load-failure messages1.4.1
Crash detection + bug-report export1.4.3
Right-to-left layout support1.4.3
  • Xposed-style frameworks (LSPosed forks) that let you install app-hooking modules
  • Root and environment hiding tools that change what apps can detect
  • Per-app tweaks such as UI or behaviour changes inside specific apps
  • Developer and research tools that need code inside app processes

Each has its own requirements. Read the module's README for supported Zygisk implementations and Android versions.

Module file layout (for the curious)

A standard Zygisk module ships native libraries in a zygisk/ folder, one per ABI (for example arm64-v8a.so). Zygisk Next loads these into target processes through its linker. ZN-specific modules use Zygisk Next's own API and can declare scopes beyond normal app processes. If you build modules yourself, follow the official ZN documentation for the current API.

Frequently asked questions

Where are Zygisk Next's files stored?

Like other modules, its files live under /data/adb/modules/, in a folder named zygisksu. Don't edit these by hand unless official documentation tells you to.

How many Zygisk modules can I run?

There's no fixed limit, but each module adds startup work for the apps it targets. Fewer, well-maintained modules are more stable than many overlapping ones.

What does a "broken module" warning mean?

Zygisk Next found a Zygisk module that failed to load or behaves incorrectly. Update or remove that module, then reboot.

Can I write my own Zygisk module?

Yes. Standard Zygisk modules follow Magisk's public Zygisk API. ZN-specific modules use Zygisk Next's own API, so check the official documentation for current details.

Do modules keep working after I update Zygisk Next?

Normally yes. After any update, check the WebUI or znctl for flagged modules.

When a module misbehaves

  1. Open the WebUI and look for flagged modules.
  2. Update or remove the flagged module.
  3. If the ZN linker is involved, check the docs and try the system linker mode.
  4. Export a bug report (1.4.3+) if you need to contact the developers.

New to the concept? Read What is Zygisk?

Get ZygiskNext 1.5.2

Official release ZIP (6.4 MB) from the developers' GitHub. You stay on this page.

Download ZIP