Effective Date: April 30, 2026
This policy explains what information BotHaus collects when you interact with its applications on Discord, how that information is used, and how long it is kept. This policy applies uniformly across all seven BotHaus Discord applications: BratBot, CamiBot, ZenBot, MarthaBot, KitsuneBot, BonnieBot, and BotHaus.
The BotHaus applications collect the minimum information needed to operate. The table below lists every category of data, where it is stored, how long it is kept, and why.
| Data | Storage | Retention | Purpose |
|---|---|---|---|
| Discord User ID | Redis | Permanent | Key for storing your preferences (verbosity, pronouns, age verification) |
| Verbosity preference (1–3) | Redis | Permanent | Controls response length |
| Pronoun preference | Redis | Permanent | Used by the language model to address you correctly |
| Age verification flag | Redis | Permanent | Records that you accepted our Terms of Service |
| Channel ID | Redis | 60 seconds | Per-channel rate limiting |
| Guild ID | Redis | 5 seconds | Message deduplication on reconnect |
| Message content (in-flight) | In-memory only | Discarded after response | Sent to a locally-hosted language model to generate a reply; not written to disk |
| Recent conversation history | Redis (keyed by bot, channel, and user) | Rolling window (last ~10 exchanges per bot/channel) | Provides short-term context so the bot can follow a conversation. Older messages are evicted automatically as new ones arrive. Cleared on request via /forget (per bot) or /forgetall, or by deletion request (Section 5). |
| Message IDs | In-memory deque (max 1,000) | Session only | Prevents duplicate responses after Discord reconnections |
Permanent means no automatic expiry — data remains in Redis until you request deletion (see Section 5).
The full text of an in-flight message is held in memory only for the duration of generating a reply and is never written to disk.
To allow the bot to follow a conversation, a short rolling window of recent messages (yours and the bot’s) is stored in Redis, keyed by which bot you spoke to, the Discord channel, and your Discord User ID. The window is automatically trimmed as new messages arrive — older messages drop off. You can clear this history at any time using the /forget command (clears history for one bot in the current scope) or /forgetall (clears history for all bots), or by submitting a deletion request as described in Section 5.
Preference data and your Discord User ID are stored in Redis with no expiry and persist until you request deletion. Temporary rate-limiting and deduplication data expires automatically within seconds.
You may request deletion of all data associated with your Discord User ID at any time using one of two channels:
Standard deletion requests (preferences, conversation history, age verification flag):
You can also clear conversation history yourself at any time using the /forget or /forgetall commands.
Expedited removal of non-consensual intimate content: If you believe content depicting you (or someone you legally represent) was generated without consent, do not use a public GitHub issue. Email takedown@bothaus.chat directly. We respond within 24 hours and act on valid requests within 48 hours. See our Terms of Service, Section 4 for the full process.
If you are in the European Economic Area (EEA), United Kingdom, or California, you may also have rights to access, correct, or port your data under GDPR, UK GDPR, or CCPA/CPRA. Use the same GitHub issue process for these requests, or email takedown@bothaus.chat if the request is sensitive.
All Discord interaction webhooks are verified using Ed25519 signatures before processing. Message content is discarded immediately after a response is generated. Bot tokens and Redis credentials are stored as environment variables and are never logged or exposed.
BratBot, CamiBot, MarthaBot, KitsuneBot, BonnieBot, and BotHaus are not intended for users under the age of 18 and generate adult-themed content. ZenBot is safe-for-work and has no age restriction. We do not knowingly collect data from minors on the age-gated applications.
If we make material changes to this policy we will update the effective date at the top of this page. Continued use of the bot after changes constitutes acceptance of the updated policy.
For general questions about this policy or to exercise standard data rights, open an issue at github.com/z0rd0n88/BratBot/issues.
<<<<<<< claude/funny-rubin-ad873cFor removal requests involving non-consensual intimate content (including AI-generated digital forgeries), email takedown@bothaus.gg. Do not use a public GitHub issue for these requests — the email channel is private.
=======For removal requests involving non-consensual intimate content (including AI-generated digital forgeries), email takedown@bothaus.chat. Do not use a public GitHub issue for these requests — the email channel is private.
>>>>>>> main