- Core bot with slash command tree (discord.py 2.7.x compatible) - Commands: /ping, /info, /hello, /emoji, /app-emoji - Admin: /upload-emoji, /list-emojis, /delete-emoji - GIF emote detection and reaction handling - Message reactions with percentage-based triggers and cooldowns - Voice/music cog with YTDLSource, skip, volume, pause, resume, stop - Global error handler and voice state change logging - Environment config via .env (DISCORD_TOKEN, COMMAND_PREFIX, etc.)
1.7 KiB
1.7 KiB
A.B.I.N.A.S.H — Knowledge Base
Generated: 2026-08-27T13:39:00Z Branch: master
OVERVIEW
Python Discord bot using discord.py. Loads commands from a commands/ subdirectory and configuration from bot.json. Supports GIF emotes, voice channels, and message reactions.
STRUCTURE
ia_bot/
├── .codegraph/ # codegraph index
├── .git/
├── .omo/ # OpenCode session data
├── AGENTS.md # this file
├── README.md
├── bot.json # secrets & config
├── commands/ # runtime-loadable command modules
└── venv/ # virtual environment (optional)
WHERE TO LOOK
| Task | Location |
|---|---|
| Bot entry point | main.py (to be created) |
| Config/secrets | bot.json |
| Commands | commands/*.py |
| Discord client | bot.py (to be created) |
| GIF emote handler | handlers/gif_emotes.py (to be created) |
| Voice handler | handlers/voice.py (to be created) |
| Message reaction logic | handlers/reactions.py (to be created) |
CONVENTIONS
- Commands live in
commands/as individual.pyfiles. bot.jsonholds secrets (tokens, bot token, prefix, etc.).- Use
discord.ext.commandsfor bot commands. - GIF emotes are fetched from a remote URL or local cache.
ANTI-PATTERNS (THIS PROJECT)
- Never commit
bot.jsonto git (use.gitignore). - Never hardcode secrets in source files.
- Never mix
discord.pyandaiohttpwithout proper async/await discipline.
COMMANDS
python3 -m venv venv
source venv/bin/activate
pip install discord.py pillow requests
# Run the bot
python main.py
NOTES
- The bot is currently a placeholder (2 files, 0 LOC).
- GIF emotes require an external API or image host.