Metadata-Version: 2.4
Name: ctf-watch
Version: 1.0.0
Summary: A lightweight surveillance tool for CTFd competitions
Author: MushroomWasp
License: MIT
Project-URL: Homepage, https://github.com/MushroomWasp/ctf-watch
Project-URL: Repository, https://github.com/MushroomWasp/ctf-watch
Keywords: ctf,ctfd,security,monitoring,notifications
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Security
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.25.0
Dynamic: license-file

# ctf-watch

A lightweight surveillance tool for CTFd competitions. Get desktop notifications when teams solve challenges or when challenges are added/updated.

## Installation

```bash
# Install dependencies
sudo apt install libnotify-bin  # Debian/Ubuntu
sudo dnf install libnotify       # Fedora
sudo pacman -S libnotify         # Arch

# Install ctf-watch
pip install -e .
```

## Usage

Start the setup wizard:

```bash
ctf-watch -w
```

Stop active watchers:

```bash
ctf-watch -s
```

## Features

- **Solve notifications**: Get notified when a team solves a challenge
- **Challenge tracking**: Monitor new, updated, or removed challenges (requires authentication)
- **Background daemon**: Runs silently in the background
- **Minimal overhead**: Configurable polling interval

## Authentication

Challenge notifications require a CTFd access token. Generate one from your user settings page and provide it during setup.

Without a token, you'll still get solve notifications for public teams.
