Skip to content

Repository files navigation

CoreClient TPM-Scheduler

Stars License Python Discord

CoreClient TPM-Scheduler

A beautiful, robust process scheduler for TPM-loader-linux.
Automatic restarts, Discord webhooks, and a modern console UI.
Programmed by NonNull


Features

  • 🔄 Automatic restarts with customizable duration
  • 🎨 Rich console interface with beautiful formatting
  • 📊 Real-time status display
  • 🔔 Discord webhook notifications (white style, emoji, avatar, status)
  • 📝 Comprehensive logging
  • ⚙️ JSON configuration management
  • 🛡️ Graceful shutdown handling
  • 📦 Modular, production-ready architecture
  • 🚀 Standalone Linux executable (no Python needed at runtime)

Installation

git clone https://github.com/CoreClientIO/TPM-Scheduler.git
cd TPM-Scheduler
chmod +x setup.sh
./setup.sh

Everything is automated. The binary will be ready to use as ./tpm-scheduler.


🤖 Automated Service Setup (Recommended)

For 24/7 operation, run:

./setup_service.sh
  • The current directory will always be used as the working directory for the service.
  • If a config.json5 file is present, it will be copied automatically to /usr/local/bin/ for the service to use.
  • The service will be enabled, started, and all useful commands will be shown at the end.

🖥️ Usage

From Source:

python main.py

From Executable:

./tpm-scheduler

⚙️ Configuration

On first run, a config.json will be created. You can edit it to customize:

{
    "screen_name": "TPM",
    "command": "./TPM-loader-linux",
    "webhook_url": "https://discord.com/api/webhooks/...",
    "log_level": "INFO",
    "log_file": "tpm-scheduler.log",
    "cycle_duration": "1h"
}
  • cycle_duration supports formats like 10s, 5m, 1h, 1d.
  • No more prompts on every start: just set your duration in the config!

🛠️ How it Works

graph TD;
    A[Start Scheduler] --> B{Load config.json};
    B -->|No config| C[Prompt for webhook, create config];
    B -->|Config exists| D[Read settings];
    D --> E[Start TPM-loader in screen];
    E --> F[Send Discord webhook];
    F --> G[Wait for cycle_duration];
    G --> E;
    E -->|Error| H[Send error webhook];
Loading

📸 Screenshots

Discord Webhook
White-style Discord webhook with emoji, avatar, and status


🖥️ Service Management

After running ./setup_service.sh, you can:

  • Restart:
    sudo systemctl restart tpm-scheduler
  • Stop:
    sudo systemctl stop tpm-scheduler
  • Start:
    sudo systemctl start tpm-scheduler
  • Status:
    systemctl status tpm-scheduler
  • Logs:
    journalctl -u tpm-scheduler -f

📝 Logs

All activities are logged to tpm-scheduler.log with timestamps and details.


💬 Community & Support

For issues and support, check the logs in tpm-scheduler.log for detailed error information.


🪪 License

This project is part of the CoreClient ecosystem. See LICENSE.


Made with ❤️ by NonNull & the CoreClient team

About

A scheduler for the TPM macro. (Linux VPS only)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages