High-performance, purely algorithmic Homelab service discovery and monitoring CLI.
Project description
Talon Handler
Talon Handler is a high-performance, purely algorithmic Python CLI tool designed for Homelab monitoring. It automates service discovery, monitors your local ports, and integrates with Telegram via a secure Ghost Auth bridge.
Key Features
- Smart Scan: Automatically detects locally bound ports using psutil and maps them to common services (Jellyfin, Plex, Home Assistant, etc.).
- Ghost Auth: Cryptographically secure 6-digit OTP authentication for Telegram without hardcoded chat IDs.
- Monitoring Filter: Interactively toggle which services you want to track.
- Live Dashboard: Automatically generates a Markdown dashboard (talon_dashboard.md) for Homarr or other notebook widgets.
- 3-Strike Alerts: Algorithmic failure detection to prevent notification spam.
Installation
git clone https://github.com/abduznik/talon-handler.git
cd talon-handler
pip install -e .
Quick Start: The Headstart Command
The headstart command is your entry point. it initializes your configuration and performs the first service discovery scan.
1. Run Headstart
talon headstart
2. Discovered Services
Talon will scan your system and display a table of discovered services:
+-------+------------------+
| Port | Mapped Service |
+-------+------------------+
| 8096 | Jellyfin |
| 32400 | Plex |
| 8123 | Home Assistant |
+-------+------------------+
3. Ghost Auth
After scanning, Talon will generate a unique code: Ghost Auth Code generated: 123456
Send this code to your Telegram bot to bind your account:
/start 123456
Maintenance and Monitoring
Configuration Audit
Update your Telegram token or monitoring interval interactively:
talon config
Service Filtering
Toggle monitoring for specific ports discovered during scans:
talon filter
Start Monitoring
Run the background monitoring loop and Telegram bot:
talon monitor
Dashboard Output
The tool periodically writes to talon_dashboard.md, which can be displayed in Homarr:
# Talon Handler Dashboard
Last Updated: 2026-02-21 18:00:00
## Service Status
| Service | Port | Status |
| :--- | :--- | :--- |
| Jellyfin | 8096 | UP |
| Plex | 32400 | UP |
Requirements
- Python 3.10+
- psutil
- python-telegram-bot
- typer
- rich
Created by abduznik
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file talon_handler-0.1.7.tar.gz.
File metadata
- Download URL: talon_handler-0.1.7.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68636b84445d8894446f37d382b0f0ea38d5d27978943fa1d6c6cb668ad6cf50
|
|
| MD5 |
7ac3c353f32f6924a8b048de5d711069
|
|
| BLAKE2b-256 |
b31f19231ec772386ca5fa75228f6f46c75785c7b7fc4cc9c3f127b27ac6a52c
|
File details
Details for the file talon_handler-0.1.7-py3-none-any.whl.
File metadata
- Download URL: talon_handler-0.1.7-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84c2e719541e95f624fcda9a68915e5eff87ce3b306f93d483fe2aea3f5c0fbd
|
|
| MD5 |
33d6f897edc3e25cf59c733455d59a75
|
|
| BLAKE2b-256 |
8d3250197910ef46144852ca0678fc49d87aae8f5a714947b6a1a9ab0023975e
|