> ## Documentation Index
> Fetch the complete documentation index at: https://docs.criminal.work/llms.txt
> Use this file to discover all available pages before exploring further.

# Message Events

> Deletions, edits, snipes and everything Criminal notices about chat.

Criminal keeps a short in-memory history of messages it sees, which is what makes snipes and
deletion logs work.

| Event | What happens |
| - | - |
| Message deleted | Cached copy feeds `/snipe`; log entry posted if a log channel is set |
| Message edited | Previous content available through `/editsnipe` |
| Message contains `y/n` or `v/s` | Prompt reactions added · [Prompt reactions](https://docs.criminal.work/features/events/prompts.md) |
| Message mentions an AFK member | AFK reply · [Mentions & AFK](https://docs.criminal.work/features/events/mentions.md) |
| Message matches a trigger | Reply or reaction · [Triggers](https://docs.criminal.work/features/triggers.md) |

## Snipes

* `/snipe` shows the most recent deleted message in the channel, with pagination when several are
  cached.
* `/editsnipe` shows the last edit's previous text.
* `/clearsnipe` (`,cs`) wipes both for the channel · needs **Manage Messages**.

The cache is memory-only and cleared on restart, so a snipe after a deploy comes back empty. That's a
cache limit, not a bug.

## Deletion logs

With a log channel configured, deletions are logged with the author, channel and content when it was
cached. Servers with **Message logs** enabled also keep text and attachment links for **7 days**, so a
deletion stays readable after Discord's own cache forgets it · see [Server logs](https://docs.criminal.work/features/logging.md).

## What it can't see

Messages sent while the bot was offline, and messages in channels it can't read, are invisible to all
of the above. Enabling the **Message Content** intent is what makes the cache possible in the first
place.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.