MCPcopy Index your code
hub / github.com/HorizonUnix/ZenTune

github.com/HorizonUnix/ZenTune @2.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.0.0 ↗ · + Follow
504 symbols 1,533 edges 43 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Powered by ZenMaster and Python

GitHub Downloads Python License Ask DeepWiki

Overview

ZenTune (formerly UXTU4Linux) is a power management tool for AMD Ryzen APUs and desktop CPUs on Linux and macOS. Talks to the CPU through PCI direct access on most systems, or through ryzen_smu when Secure Boot is on. Set power limits, temperature limits, VRM currents, clocks and Curve Optimiser without touching the BIOS. The terminal UI runs as your normal user; a root daemon handles the hardware writes.

  • Built-in Eco / Balance / Performance / Extreme presets for Ryzen APUs, desktop CPUs and Framework Laptops
  • Adaptive Mode (Linux only): tunes power limit, Curve Optimiser and iGPU clocks live from temperature and load; savable presets and auto-start
  • Custom Preset Editor with ~65 parameters on APUs: power/temp limits, VRM currents, clock targets, per-core CO, static OC
  • System settings inside presets: power profile, ASUS performance mode / GPU Eco / MUX, CCD affinity on dual-CCD chips
  • NVIDIA dGPU clock limits and core/mem offsets
  • Home tab with live CPU temp, power, clock and load graphs
  • Automations: switch presets on AC/battery and on resume
  • Reapply loop so other tools can't silently undo your settings
  • Status tab shows which SMU commands were accepted or rejected
  • Built-in updater that preserves your config and custom presets

Compatibility

Platform Status
Linux with systemd, Python 3.10+ Actively supported
Linux without systemd (OpenRC, runit, etc.) Supported: installer sets everything up, you start the daemon manually
macOS (Hackintosh, AMD CPU) Supported: tuning, presets and automations work; Adaptive Mode is Linux-only for now
Intel Not supported

[!NOTE] ryzen_smu is only required on Linux when Secure Boot is enabled. PCI direct access works on most Linux systems without any kernel module, and on macOS the daemon talks to the SMU through DirectHW or the kext-free IOPCIBridge path instead. If Secure Boot is on, install ryzen_smu ≥ 0.1.7 and enroll the signing key; the Wiki has per-distro steps.


Installation

curl -fsSL https://raw.githubusercontent.com/HorizonUnix/ZenTune/main/install.sh | bash

Then run:

zentune

The first run walks you through setting up the daemon and detecting your hardware. For the full setup guide, ryzen_smu build steps and troubleshooting, see the Wiki.


Star History

Star History Chart


Preview


Acknowledgments

Contributor Contribution
FlyGoat RyzenAdj
JamesCJ60 UXTU preset design and inspiration
amkillam ryzen_smu DKMS fork
utajum g-helper-linux reference for ASUS WMI and power profile support
b00t0x Guidance on ryzenadj build dependencies
NotchApple1703 Advisor

Core symbols most depended-on inside this repo

run
called by 22
ZenTune/Assets/daemon/daemon.py
get_client
called by 19
ZenTune/Assets/core/ipc.py
ping
called by 16
ZenTune/Assets/core/ipc.py
sudo_run
called by 16
ZenTune/Assets/daemon/service.py
_read_text
called by 12
ZenTune/Assets/system/sensors.py
_send
called by 10
ZenTune/Assets/core/ipc.py
_apply_once
called by 10
ZenTune/Assets/daemon/loops.py
_num_field
called by 9
ZenTune/Assets/tui/tabs/adaptiveView.py

Shape

Function 248
Method 218
Class 38

Languages

Python100%

Modules by API surface

ZenTune/Assets/tui/modals.py64 symbols
ZenTune/Assets/tuning/custom.py36 symbols
ZenTune/Assets/tui/app.py25 symbols
ZenTune/Assets/engine/presets.py23 symbols
ZenTune/Assets/system/platformctl.py21 symbols
ZenTune/Assets/tui/tabs/customView.py18 symbols
ZenTune/Assets/system/sensors.py18 symbols
ZenTune/Assets/tui/tabs/adaptiveView.py17 symbols
ZenTune/Assets/core/ipc.py17 symbols
migration/uxtu4linux_relay/Assets/relay/app.py15 symbols
ZenTune/Assets/core/hardware.py14 symbols
ZenTune/Assets/tui/tabs/statusView.py13 symbols

For agents

$ claude mcp add ZenTune \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact