Executive Summary: Hana is a strictly GDPR-compliant, privacy-first Discord bot. We collect minimal personal operational data and store configuration states alongside extensive system-performance and behavioral analytics in a secure cloud-native database. Hana does not use your message content or images to train AI models. All AI processing is routed via enterprise APIs with zero-training legal guarantees. Users have the absolute right to request full data erasure at any time.
Hana operates on a foundation of absolute data sovereignty. We process AI prompts utilizing Google Gemini (Enterprise Tier), Groq (Llama 3), and Inception AI. We pay premium rates for enterprise-level APIs that provide strict, legally binding data protections:
- No AI Training: Data processed via our connected APIs is never used to train or improve their foundational AI models. Your conversations remain your intellectual property.
- No Human Review: Your prompt interactions are strictly programmatic and are never stored for human review at these external endpoints.
- Transient Context: Your server's message history is processed in-memory purely for conversational context and is not permanently stored in any external knowledge base.
To operate at scale, defend against automated bot raids, and optimize command latencies, Hana collects and processes detailed telemetry and behavioral metrics. This data is strictly utilized to enhance your experience and secure our communities, we never sell or monetize your data. Our tracking system is categorized as follows:
- Command Execution Metrics: When you trigger a slash command or a legacy prefix command, we log the command name, command type (SLASH or PREFIX), User ID, Guild ID, Channel ID, and the exact execution duration (measured in milliseconds). If a command encounters an error, we log the error type, truncated error string, and a comprehensive, raw traceback of the exception to our database to quickly resolve runtime anomalies.
- Daily Coalesced Channel Activity: To prevent database write exhaustion, we buffer channel-level statistics in system RAM before writing them to the database. We track aggregate metrics per channel on a daily basis: message count, attachment count, sticker count, embed count, total word count, and character counts. Individual message text is parsed in-memory and discarded immediately; we only store the resulting aggregate numbers.
- Voice Connection & Telemetry Sessions: We log precise connection durations for voice sessions, including the channel ID and join/leave timestamps. To analyze voice server performance and prevent zombie connection drops, we monitor the duration of mute and deafen states (both self-imposed and server-enforced) down to the millisecond.
- Server Event & Growth Logs: To track bot growth trends and analyze user adoption, we log server join and leave parameters (
hana_analytics_guild_events). When Hana is added to or removed from a guild, we capture the Guild ID, Guild Name, Member Count, and Owner ID. This tracks net server growth safely under strict developer guidelines.
- Behavioral Profiling & Anti-Bot Heuristics: We analyze user-specific messaging patterns (total messages, accumulated words, characters, and average message length). To detect automated self-bots, spam scripts, and raid accounts, our engine processes advanced linguistic and structural metrics—including capitalization ratios (uppercase-to-alphabetic characters), exclamation and question mark densities, and 24-hour activity distribution patterns. To map typing velocities and verify account humanity, we track message typing latency (measuring the duration between the start of typing and the actual dispatch of a message) to build average typing durations per message. Our engine combines these telemetry inputs to calculate a "Bot Probability Score." Accounts with perfect, clockwork-like precision are flagged for review.
- Aesthetic Customizer & Moderation Logs: When administrators alter Hana's style profiles using
/hana_profile, we log User and Guild IDs along with image URLs to audit copyright and DMCA compliance. Actions executed by moderators (warnings, mutes, kicks, bans) are permanently logged, including internal case notes on user profiles.
Hana utilizes a high-performance, cloud-native storage architecture powered by Supabase PostgreSQL combined with a local RAM cache to maintain total data sovereignty.
- Zero-Egress Read Caching: All user preferences, leveling XP, inventory balances, and configuration states are cached directly in the bot's system RAM. This ensures near-zero latency and completely eliminates excessive database query calls.
- Non-Blocking Threaded Writes: When updates occur (such as earning Chips, gaining XP, or changing settings), the data is safely written back to our secure cloud database asynchronously using background threads, preventing chat flow interruptions.
- Analytical Buffering & Flushing: To protect database resources, our analytics engine holds all daily activities, behavioral metrics, and diagnostic stack traces in temporary memory queues, flushing them in bulk to our protected Supabase
hana_analytics_daily_activity, hana_analytics_behavioral, hana_analytics_errors, hana_analytics_guild_events, and hana_analytics_daily_bot_stats tables every 60 seconds.
- Data Isolation: Stored data is indexed strictly by numeric Discord snowflakes (User IDs, Guild IDs, and Role IDs). We do not store real-world names, physical addresses, or payment details.
Hana requires access to Message Content to process AI conversations, image generation, and vision analysis commands in active channels.
- Conversational History Context: When you chat with Hana, she temporarily reads the recent message history of the channel (up to 25 messages) to build a coherent dialogue context. This history is parsed entirely in-memory and is never stored permanently.
- AI Vision Processing: Images or videos attached to chats are analyzed using parallelized low-latency vision cascades (utilizing Gemini Vision). The image data is converted to an in-memory base64 string, processed to extract a textual description, and then immediately discarded.
- Strict Anti-Spam Filtering: To prevent voice chat and text buffer overloads, Hana processes all text inputs through an anti-bypass transliteration matrix, translating homoglyphs and clearing malicious characters before the AI processes the prompt.
Hana supports both Guild Installations (added to a server) and User Application Installations (authorized directly on your personal Discord account).
- User-Level Invocations: When you add Hana as a User-Installed App in private DMs, Group Chats, or third-party servers, we process your user ID, the command ran, and any attachments or context necessary to complete the interaction.
- Data Minimization in External Chats: When running commands in group chats or servers where Hana is not a joined member, we only read the specific message invoking the command and its immediate attachments. We do not read or scrape the general chat history of that external channel.
Hana provides specialized profile and server utility tools that process and store user-submitted data vectors:
- Timezones & Nickname Syncing: If configured, we store your selected timezone. If you enable nickname syncing, the bot will periodically update your nickname in all mutual guilds to append your local timezone abbreviation.
- Birthdays & Zodiacs: Storing your birthday allows Hana to calculate your zodiac and next birthday countdown. If requested, we will send an automated DM to your subscribed friends at midnight in your local timezone. You can completely customize your global or server-specific visibility.
- Inactivity Kick Queue: To safely clean servers, Hana’s inactivity module monitors last-active timestamps based on message and voice events, compiling a drip-feed kick queue that processes members while respecting Discord's API limits.
Hana supports a web-based dashboard allowing you to customize your preferences (Timezone, VC TTS, Roleplay blocks, and Economy settings) on our website.
- Secure Dashboard API: The bot communicates with our web dashboard securely over HTTPS using encrypted SSL/TLS. All requests and transmissions are protected by a secure authorization token (
API_SECRET_TOKEN) and are encrypted in-transit to prevent unauthorized packet interception, complying fully with Discord Developer Policy 5c.
- Zero Plaintext Credentials: Your website login is handled securely via Discord OAuth2. We never request, see, or store your Discord password.
In full compliance with the General Data Protection Regulation (GDPR) and global privacy laws, we provide effortless tools to wipe your data:
- Instant In-App Deletion: You can permanently wipe your personal profile and relationship data at any time using our built-in commands:
/timezone-remove, /birthday remove, and the global /rp wipe (which completely obliterates all of your roleplay stats, preferences, and daily limits in Supabase).
- Analytics and Behavioral Purging: All coalesced behavioral entries, voice logs, diagnostic stack traces, and command statistics are tied strictly to your numeric Discord User ID. If you request a full account wipe, we will permanently purge all matching rows from our
hana_analytics_behavioral, hana_analytics_commands, hana_analytics_errors, and hana_analytics_voice_sessions tables within 30 days.
- Guild Owner Data Erasure: When a server administrator kicks Hana Bot, the join/leave history recorded in
hana_analytics_guild_events remains strictly as an anonymized growth point. Upon explicit data erasure request by a verified Guild Owner through our support server, we will permanently purge all server-specific activity rows from our daily databases within 30 days.
- Data Erasure Requests: If you wish to have all data associated with your Discord User ID (including economy balances, inventories, and case history) wiped permanently, you can submit a manual erasure request by opening a ticket on our Support Server. All requests are processed within 30 days.
- Internal Security Blacklist Ledger: If you are found to be abusing the bot, attempting exploits, or violating these Terms of Service, your account may be permanently blacklisted. To maintain network safety, banned/blacklisted User IDs are stored in an internal, securely encrypted security ledger strictly for access-control and ban-enforcement purposes (recognized as a Legitimate Interest under GDPR Article 6(1)(f)), ensuring your personal identifying information is never displayed publicly.