These docs have been generated using AI. Expect inaccuracies until we remove this banner.
Troy Daemon
Troy Client Daemon is a must-use (MU) plugin for enterprise environments. It guarantees Troy Client stays active and temporarily defers WordPress.org requests until Troy Client is ready.
For Site Managers Only:
Deploy only if you manage the site. This is not for third-party plugins to bundle.
What It Does
- Auto-installs Troy Client if missing
- Auto-activates Troy Client if inactive
- Defers WordPress.org requests until Troy Client loads
- Prevents deactivation through the admin UI
When to Use It
| Environment | Reason |
|---|---|
| Managed Hosting | Ensure all sites have Troy Client active |
| Enterprise | Enforce plugin update policies |
| Agencies | Prevent clients from breaking update flow |
Installation
Place troy-client-daemon.php directly in /wp-content/mu-plugins/:
wp-content/
βββ mu-plugins/
βββ troy-client-daemon.php β here, not in a subfolder
No activation required. MU plugins load automatically.
Quick install:
curl -O https://repo.deploytroy.org/plugin/get/troy-client-daemon.php
cp troy-client-daemon.php /path/to/wp-content/mu-plugins/
How It Works
The daemon hooks into muplugins_loadedβthe earliest point in WordPress's load sequence:
WordPress Initialization
β
mu-plugins loaded β Daemon runs here
β
Is Troy Client active?
ββ YES β Normal operation
ββ NO β Defer WP.org requests, install Troy Client
β
plugins_loaded
β
Troy Client runs, WP.org requests resume normally
The deferral is temporaryβjust long enough for Troy Client to load and filter outgoing requests.
Requirements
| Requirement | Minimum |
|---|---|
| WordPress | 6.7+ |
| PHP | 7.4+ |
