Metadata-Version: 2.4
Name: hb-watcher
Version: 1.1.0
Summary: Heartbeat monitoring daemon for the Nuclei ecosystem
Author-email: "J. Will Pierce" <willp@users.noreply.github.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/willp/heartbeat-watcher
Project-URL: Repository, https://github.com/willp/heartbeat-watcher
Project-URL: Documentation, https://github.com/willp/heartbeat-watcher/blob/main/README.md
Project-URL: Issues, https://github.com/willp/heartbeat-watcher/issues
Keywords: heartbeat,monitoring,nuclei,watcher,daemon
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: System Administrators
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.28.0
Dynamic: license-file

# hb-watcher

**HbWatcher** monitors infrastructure health via the `hbserver` Heartbeat API.

## Installation

```bash
pip install hb-watcher
```

This installs:

- the Python package `hb_watcher`
- the CLI command `hbwatcher`

### Systemd install (homelab)

```bash
cp example-hbwatcher_config.json hbwatcher_config.json
nano hbwatcher_config.json
sudo ./install.sh
```

## Configuration

Default config path: `/etc/hbwatcher/hbwatcher_config.json`

```bash
hbwatcher --config /path/to/hbwatcher_config.json
```

See [CONFIG.md](CONFIG.md) for parameter reference.

## Monitoring logs

```bash
sudo journalctl -u hbwatcher -f
```

## Related projects

- `hb-client` (`hb_client`): heartbeat client library and CLI
- `hb-server` (`hb_backend`): API/authentication and key lifecycle services

See [MIGRATION.md](MIGRATION.md) for upgrades from older install paths.

## Uninstallation

```bash
sudo ./uninstall.sh
sudo ./uninstall.sh --purge
```
