Metadata-Version: 2.4
Name: threadkiller
Version: 2.2.5
Summary: Telegram bot to delete messages sent outside of threads
License-Expression: EUPL-1.2
License-File: LICENSE.txt
Keywords: telegram,chat-threads,telegram-bot,chat-moderation,python-telegram-bot
Author: Stefano Pigozzi
Author-email: me@steffo.eu
Maintainer: Stefano Pigozzi
Maintainer-email: me@steffo.eu
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 5 - Production/Stable
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: License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Topic :: Communications :: Chat
Classifier: Typing :: Typed
Requires-Dist: cfig[cli] (>=0.2.3,<=0.4.0)
Requires-Dist: python-telegram-bot (>=20.0a1,<=21.0)
Project-URL: Documentation, https://forge.steffo.eu/steffo/threadkiller/wiki
Project-URL: Issues, https://forge.steffo.eu/steffo/threadkiller/issues
Project-URL: Source, https://forge.steffo.eu/steffo/threadkiller
Project-URL: Telegram, https://t.me/the_threadkiller_bot?startgroup=yes
Description-Content-Type: text/markdown

<div align="center">
<img alt="" src="https://forge.steffo.eu/steffo/threadkiller/raw/branch/main/.media/icon-512.png" height="128" style="border-radius: 100%;">
<hgroup>
<h1>Threadkiller</h1>
<p>Telegram bot to delete messages sent outside of threads</p>
</hgroup>
</div>

## Quick setup

[Add @the_threadkiller_bot to a Telegram group](https://t.me/the_threadkiller_bot?startgroup=yes) of your choice, then give it permission to **Delete messages** and to **Pin messages**.

## Why?

Telegram discussion groups are buggy and weird.  
Sending a message there without it being a reply to any other message means that channel viewers will not see it, despite the message probably being a reply to the immediately previous message.

This bot deletes all messages sent in the groups it's in except for replies to channel messages or messages starting with `/thread`.

## Commands

- **/start** - In private chats, display information about Threadkiller.
- **/version** - View the currently running version of Threadkiller.
- **/thread** - Start a new thread with the given title.

## Link

### Use

<a href="https://t.me/the_threadkiller_bot?startgroup=yes">
    <img alt="Usable on Telegram" title="Usable on Telegram" src="https://img.shields.io/badge/telegram-@the__threadkiller__bot-27a7e7" height="30px">
</a>

### Tools

<a href="https://www.python.org/">
    <img alt="Written in Python" title="Written in Python" src="https://img.shields.io/badge/language-python-3775a9" height="30px">
</a>

### Packaging

<a href="https://pypi.org/project/threadkiller">
    <img alt="Available on PyPI" title="Available on PyPI" src="https://img.shields.io/pypi/v/threadkiller?label=pypi&color=ffd242" height="30px">
</a>
&hairsp;
<a href="https://forge.steffo.eu/steffo/-/packages/pypi/threadkiller">
    <img alt="Available on Forgejo Packages" title="Available on Forgejo Packages" src="https://img.shields.io/badge/forgejo%20packages-latest-ff6600" height="30px">
</a>

### Documentation

<a href="https://forge.steffo.eu/steffo/threadkiller/wiki">
    <img alt="Documentation available" title="Documentation available" src="https://img.shields.io/website?url=https%3A%2F%2Fforge.steffo.eu%2Fsteffo%2Fthreadkiller%2Fwiki&up_color=175d36&up_message=available&down_message=error&label=documentation" height="30px">
</a>
&hairsp;
<a href="https://interoperable-europe.ec.europa.eu/collection/eupl/eupl-text-eupl-12">
    <img alt="Licensed under EUPL-1.2" title="Licensed under EUPL-1.2" src="https://img.shields.io/badge/license-EUPL--1.2-003399" height="30px">
</a>

### Development

<a href="https://forge.steffo.eu/steffo/threadkiller">
    <img alt="Code repository" title="Code repository" src="https://img.shields.io/gitea/last-commit/steffo/threadkiller?gitea_url=https%3A%2F%2Fforge.steffo.eu&color=374351" height="30px">
</a>
&hairsp;
<a href="https://forge.steffo.eu/steffo/threadkiller/releases">
    <img alt="Releases" title="Releases" src="https://img.shields.io/gitea/v/release/steffo/threadkiller?gitea_url=https%3A%2F%2Fforge.steffo.eu&label=last+release&color=374351" height="30px">
</a>
&hairsp;
<a href="https://forge.steffo.eu/steffo/threadkiller/issues">
    <img alt="Issues" title="Issues" src="https://img.shields.io/gitea/issues/open/steffo/threadkiller?gitea_url=https%3A%2F%2Fforge.steffo.eu&label=issues&color=374351" height="30px">
</a>
&hairsp;
<a href="https://forge.steffo.eu/steffo/threadkiller/pulls">
    <img alt="Pull requests" title="Pull requests" src="https://img.shields.io/gitea/pull-requests/open/steffo/threadkiller?gitea_url=https%3A%2F%2Fforge.steffo.eu&color=374351" height="30px">
</a>

