Skip to content

Enginex0/tricky-addon-enhanced

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

57 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⚑ Tricky Addon Enhanced

Automated TrickyStore & TEESimulator Management

Flash once. Forget forever.

Version Build License Rust Telegram

KernelSU APatch Magisk


Note

This is a personal project built for automation enthusiasts β€” flash and forget.

It was never planned for public release, but enough people wanted it, so here it is. It's open-source because sharing is good β€” not because anyone is owed support, features, or responses on a timeline. If something breaks, report it on Telegram. PRs are welcome. Entitlement is not.

Do NOT report issues to TrickyStore, TEESimulator, or any upstream project. They have nothing to do with this module. All support goes through one place: the SuperPowers Telegram.


🧬 What is Tricky Addon Enhanced?

A native Rust daemon that manages TrickyStore and TEESimulator silently in the background β€” keybox rotation, security patch spoofing, VBHash injection, attestation engine monitoring, and target list management β€” all running as a single process with zero user intervention after install.

This is a clean-room rewrite. The original concept drew from several community projects, but every line of backend logic has been rebuilt from scratch in Rust with a completely different architecture β€” a single native daemon replacing 6 shell processes, inotify replacing poll loops, in-memory config replacing fork-per-read patterns. No commits were squashed or rebased from any other project. This is new code.


πŸ”₯ Why Rust?

The previous shell-based approach worked, but it was fragile. Config reads forked a new process every time. App detection polled in a sleep loop. Six separate scripts competed for resources. The result was hundreds of thousands of unnecessary wakeups per day, constant JVM spawns, and race conditions that caused intermittent failures users couldn't diagnose.

The Rust rewrite eliminates all of that:

Metric Shell Rust
Wakeups/day 884,449 ~100 (timer fires only)
JVM spawns/day 20,170 ~200 (only for pm when inotify can't detect)
Processes 6 1
Background CPU ~28 min/day <1 min/day
Config reads 43,200 forks/day 0 (in-memory struct)
App detection latency 10s–minutes Instant (inotify)

One binary. One process. One config file. No shell scripts in the hot path.


✨ Features

Keybox Management

  • 4-source failover β€” Yurikey β†’ KOW β†’ IntegrityBox β†’ Custom, with automatic rotation
  • XML validation before applying β€” never installs a broken keybox
  • Automatic backup β€” existing keybox backed up before every replacement
  • Custom keybox protection β€” set source to custom and it stays untouched
  • Device keybox generation β€” ECDSA P-256 + RSA-2048 keygen for AOSP-level attestation
  • Configurable fetch interval β€” preset chips (1h–7d) or custom value with min/hr/day unit toggle from WebUI

Security Patch Automation

  • Engine-aware patching β€” auto-detects James Fork, standard TrickyStore, or TEESimulator
  • All three dates β€” system, boot, and vendor patch levels set on boot and daily
  • Latest patch fetch β€” pulls current dates from Google's Pixel bulletin

VBHash Spoofing

  • 15 properties spoofed β€” vbmeta.digest, device_state, verifiedbootstate, and 12 more
  • Captured at install time β€” reads ro.boot.vbmeta.digest before any modules are active
  • Fallback chain β€” persisted file β†’ bootloader property β†’ APK extraction (last resort)

Attestation Engine Health Monitor

  • Auto-restart on crash β€” polls every 10s, detects TEESimulator or TrickyStore, restarts if dead
  • Grace period β€” 5s window for the engine's internal restart loop before intervening
  • Restart tracking β€” count persisted to .health_state, visible in WebUI

Target List Automation

  • inotify-based app detection β€” new installs added to target.txt instantly
  • Xposed exclusion β€” auto-detects and excludes Xposed modules
  • Denylist merge β€” optionally pulls from Magisk denylist

Conflict Detection

  • 19 conflicting modules detected and handled (auto-remove, block, or warn)

Live Status Monitor

  • Module description updates every 30s β€” app count, keybox source, patch level, VBHash state
⚑ 37 Apps β”‚ πŸ”‘ Yurikey β”‚ πŸ›‘οΈ 2026-01-05 β”‚ πŸ”’ VBHash

Real-time status directly in your module manager β€” no need to open anything.

WebUI

  • Glass morphism design β€” AMOLED dark gradient (#0F0F1A β†’ #1A1A2E), 6 accent color presets with random selection on launch
  • Health status banner β€” live engine state (green/red/orange)
  • Keybox automation panel β€” 6 source cards, interval scheduler with preset chips (1h–7d) and custom input with min/hr/day toggle, manual fetch
  • Target list auto-refresh β€” every 3s, with search and per-app mode control
  • 23 languages with RTL support
  • Single batched init β€” one shell call loads the entire UI state

Set It and Forget It

A single native daemon manages all background tasks β€” if anything dies, it restarts within 1s:

  • App Watcher β€” auto-adds new installations to target.txt via inotify
  • Xposed Detection β€” auto-excludes Xposed modules from targeting
  • Health Monitor β€” auto-restarts attestation engine on crash
  • Status Monitor β€” live module description updates every 30s
  • Conflict Detection β€” warns about 19 conflicting modules on boot
  • Log Rotation β€” 1MB limit with automatic cleanup

πŸ“± Compatibility

Root Manager Minimum Version WebUI Support
KernelSU 32234+ Built-in
APatch 11159+ Built-in
Magisk 20.4+ KSUWebUIStandalone or WebUI-X required

Requires: TEESimulator or TrickyStore installed as the attestation engine.


πŸš€ Installation

  1. Download the latest release
  2. Install via your root manager
  3. Reboot

During install, press Volβˆ’ for manual target mode (GMS/GSF only) or Vol+ / wait 10s for full automation.

The module automatically captures VBHash, builds the exclude list, generates target.txt, fetches a valid keybox, sets security patch dates, and starts the daemon. Nothing else to do.


πŸ”¨ Building from Source

Requires Rust toolchain and Android NDK.

git clone https://github.com/Enginex0/tricky-addon-enhanced.git
cd tricky-addon-enhanced
bash package.sh --no-bump

The ZIP lands in release/. CI also builds on every push β€” grab artifacts from the Actions tab.

Build options
Flag Effect
(none) Bump version, cross-compile, package
--no-bump Build without incrementing version
--no-build Package only (skip Rust compile)
--clean Remove old ZIPs before packaging

βš™οΈ Configuration

All settings are configurable from the WebUI (open from your root manager) or via CLI:

ta-enhanced config get keybox.source
ta-enhanced config set keybox.interval 3600

Config lives at /data/adb/tricky_store/config.toml and is preserved across reinstalls.

Config Reference
Key Default Description
keybox.enabled true Auto keybox fetching
keybox.source yurikey Primary source (yurikey, upstream, integritybox, custom)
keybox.interval 300 Seconds between fetch attempts
security_patch.auto_update true Auto patch date updates
security_patch.interval 86400 Seconds between patch checks
automation.enabled true Auto target.txt population
automation.use_inotify true Use inotify for instant app detection
health.enabled true Attestation engine health monitor
health.interval 10 Seconds between health checks
conflict.enabled true Conflicting module detection
vbhash.enabled true VBHash spoofing
File Locations
/data/adb/tricky_store/
β”œβ”€β”€ config.toml                # Module configuration
β”œβ”€β”€ target.txt                 # Apps to protect
β”œβ”€β”€ keybox.xml                 # Current keybox
β”œβ”€β”€ keybox.xml.bak             # Keybox backup
β”œβ”€β”€ security_patch.txt         # Patch dates
β”œβ”€β”€ .health_state              # Health monitor state

/data/adb/Tricky-addon-enhanced/logs/
β”œβ”€β”€ daemon.log                 # Unified daemon log
└── conflict.log               # Conflict detection

/data/adb/boot_hash            # Persisted VBHash

πŸ’¬ Community

$ ta-enhanced --connect

 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—   β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
 β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—
 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•
 β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—
 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘
 β•šβ•β•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•     β•šβ•β•β•β•β•β•β•β•šβ•β•  β•šβ•β•
              POWERS

 [βœ“] SIGNAL    ──→  t.me/superpowers9
 [βœ“] UPLINK    ──→  bug reports Β· feature drops Β· dev updates
 [βœ“] STATUS    ──→  OPEN β€” all operators welcome

Telegram


πŸ™ Credits


πŸ“„ License

This project is licensed under the GNU General Public License v3.0.


⚑ Flash once. Forget forever.

About

Enhanced fork of Tricky Addon - Update Target List with automatic target management, Xposed detection, and auto-fetch keybox

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors