ZiGBoT AI
ZiGBoT AI is an AI Discord bot and web dashboard designed and built end to end by Bhavesh Kumar Tiwari. One bot covers AI chat with configurable personalities, user-controlled memory, reputation, moderation, music and Hindi/English voice chat, with safety rules enforced in code. The bot runs on Node.js and discord.js, the dashboard on Next.js, and replies are generated with Groq with an automatic NVIDIA fallback.
Channels
- general
- zig-chat
- mod-log
- music
Aarav
Riya
ZiGBoTBot
Server settings
- Persona
- Savage · Spicy
- Language
- Hinglish
- Gentle roles
- @mods
- Chat channel
- #zig-chat
- Safety rules
- always on
The problem
Most Discord servers run one bot for moderation, another for music and maybe a separate AI chatbot, each configured differently, and none of them feel like part of the community.
What I built
ZiGBoT is all of those in one bot with a personality. It began as a stress-relief companion that hangs out in chat, makes people laugh and supports them on bad days, and has grown into a full server assistant any server can add and configure.
- Talks on mention, reply or in open-chat channels: it reads the room, acts on requests (“play Believer”, “warn @spammer”) or just chats
- Personalities per server and per role: Gentle, Savage (mild / spicy / savage roasts with hard limits enforced in code), Neutral, or a Premium custom persona; in English or Hinglish
- User-controlled memory with /memory: view, search, correct, export or forget, with 30-day expiry, private by default
- 30-day reputation that warms or cools how ZiGBoT treats each member
- Moderation in plain language or slash commands, checked against real Discord permissions, with Confirm buttons and an audit log
- Premium music (YouTube, SoundCloud backup) and voice chat that understands Hindi and English speech
- Safety no setting can turn off: crisis helplines, no roasting for under-18 roles, no pings, never asks for Administrator
- Web dashboard at zigbotai.vercel.app: configure persona, roles, channels, music, voice and GIFs, test replies, and subscribe via Razorpay
Results and impact
- Live and open to any server: Add to Discord, then configure everything from the web dashboard
- 627 automated tests run on every change
- Free and Premium plans with Razorpay subscriptions built in
Tech stack
- Node.js
- discord.js
- Groq
- NVIDIA (fallback)
- MongoDB
- Next.js
- Supabase
- Razorpay
- Vercel
- Render
In detail
How a conversation works
- You get its attention by mentioning @ZiGBoT, replying to it, or talking in a channel admins set up for open chat.
- It works out what you want: an action (“play Believer”, “warn @spammer”) gets carried out, anything else gets a conversational reply.
- It reads the room: the last few messages, the server's personality and language, and your roles.
- It checks any memory you've allowed it to keep.
- The AI writes a reply and code checks it before sending. Anything unsafe, or a generic “I can't help with that”, is rewritten or replaced.
- It replies like a person: typing indicator, natural pacing, and long answers split cleanly across messages.
Personalities
- Gentle: warm, kind and encouraging, with cute emojis.
- Savage: a Gen-Z / desi roast comedian that roasts what you said, never who you are. Mild (friendly teasing), Spicy (default, desi slang and attitude) or Savage (brutal, mild swearing allowed).
- At every level: no sexual jokes, family insults, slurs, or jokes about caste, religion, gender, looks or disability. Enforced in code, not just the prompt.
- Neutral: a plain, helpful assistant with no persona.
- Custom persona (Premium): write your own, or start from Hype Gamer Coach 🎮, Chill Bestie 🌸 or Pirate Captain 🏴☠️.
- A real question always gets a real answer first; the personality only flavours how it's said.
- Language: English (international humour) or Hinglish (Sharma ji ka beta, board exams, chai, cricket).
- Swear at it in Savage mode and it fires back a comeback; sexual, family or violent abuse gets a refusal instead.
Memory, with you in control
- Short-term: remembers the last few messages in a channel for 15 minutes, so follow-ups make sense.
- Long-term: you choose what it keeps, e.g. /memory remember “I'm preparing for JEE”, and can view, search, correct, export, forget, clear or switch memory off.
- Memories expire after 30 days and stay private unless you share one with the server.
- Server owners see only how many memories you have, never what they say.
- Saved text is treated as data, so nobody can hide instructions in a memory.
- Optional summaries note short facts if the server enables them and you opt in. It never reads threads or age-restricted channels.
Reputation
- A 30-day record of each member's behaviour: helpful and kind messages versus toxic or spammy ones.
- A good record gets a warmer ZiGBoT; a toxic streak gets a colder one.
- Ask “what's my reputation?” and it shows the actual record rather than guessing.
Moderation
- Warn, timeout, kick, ban, unban and bulk-delete, in plain language or with slash commands.
- Checks your real Discord permissions every time; destructive actions need a Confirm click.
- Every admin action goes to an audit log.
- Stands up for members who get insulted; repeat offenders are suggested to mods, never punished automatically.
Music, voice and GIFs
- Music (Premium): YouTube with SoundCloud backup, queue, pause / skip / stop / loop buttons, volume, shuffle and search; leaves when the channel empties.
- Voice chat (Premium): joins your voice channel, understands Hindi and English speech, and talks back in a natural voice.
- Reaction GIFs: the occasional hug, cheer or mic drop. Roast GIFs only in Savage mode, all rated G, searched with the bot's own style words, never member text. Admins set rare, normal, often or off.
Safety no setting can switch off
- Crisis: if someone sounds suicidal or in crisis, it drops every joke and shares real helplines (Tele-MANAS 14416 in India, 988 in the US).
- Members with the under-18 role are never roasted, whatever the server's settings.
- It can't mass-ping or ping anyone.
- It never asks for Administrator permission.
Website and dashboard
- Landing page with a demo chat, Free vs Premium comparison and an Add to Discord button.
- Commands page listing every command with examples.
- Dashboard (sign in with Discord): personality, language, roast intensity, custom persona, role behaviours, free-chat and silent channels, music, voice and GIF settings.
- Test tab to preview exactly how it would reply, History tab for the audit log, and Premium checkout through Razorpay.
- Privacy and Terms pages.
Free vs Premium (per server)
- Free: chat in all personalities, English or Hinglish, memory and summaries, reputation, moderation, GIFs, up to 3 role mappings.
- Premium (₹399/month or ₹3,999/year): higher AI reply limits, custom persona and templates, up to 50 role mappings, music and voice chat.
- Extra: the owner can connect ZiGBoT to a YouTube live stream's chat with /watch, where it greets viewers and joins in.
Behind the scenes
- Bot: Node.js and discord.js on Render. Website: Next.js on Vercel.
- AI: Groq, with automatic NVIDIA fallback.
- Data: memories and reputation in MongoDB; server settings and billing in Supabase.
- 627 automated tests run on every change.
Need something like this built?
I'm Bhavesh Kumar Tiwari, an AI automation engineer in Bengaluru, India, open to full-time, freelance and remote roles. Email me at tiwaribhaveshkumar@gmail.com.