Skip to content

AndresMoros/discord-simple-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Simple Discord Bot

Un bot de Discord simple pero potente, powered by Google Gemini AI. Fácil de configurar y desplegar, perfecto para principiantes y desarrolladores experimentados.

Discord Python Gemini AI License

✨ Características

  • 🧠 IA Potente: Integración con Google Gemini 2.0 Flash
  • ⚡ Dos Modos de Respuesta: Completas (/ask) y rápidas (/quick)
  • 💬 Comandos Slash: Interfaz moderna y intuitiva
  • 📏 Auto-división: Maneja respuestas largas automáticamente
  • 🌐 Hosting Gratis: Despliegue fácil en Railway
  • 📊 Tracking: Estadísticas de uso con /stats
  • 🔧 Código Simple: Fácil de entender y modificar

🚀 Instalación en 4 Pasos

1. Clonar el Repositorio

git clone https://github.com/andresjmorosa/simple-discord-bot.git
cd simple-discord-bot

2. Instalar Dependencias

pip install -r requirements.txt

3. Configurar Variables

Crea un archivo .env:

DISCORD_TOKEN=tu_token_aqui
GEMINI_API_KEY=tu_gemini_key_aqui

4. Ejecutar

python bot_gemini.py

🔑 Obtener Credenciales

Discord Bot Token

  1. Ve a Discord Developers
  2. Crea New Application → Bot → Copy Token
  3. Activa Message Content Intent (importantísimo)

Gemini API Key

  1. Visita Google AI Studio
  2. Get API Key → Create API Key
  3. Copia tu clave

🚀 Despliegue en Railway (Recomendado)

Deploy on Railway

  1. Haz click en el botón de arriba
  2. Conecta tu GitHub
  3. Configura las variables:
    • DISCORD_TOKEN = tu_token_discord
    • GEMINI_API_KEY = tu_api_key_gemini
  4. ¡Listo! Tu bot estará online 24/7

📋 Comandos

Comando Descripción Uso
/ask [pregunta] Respuesta completa (puede ser larga) /ask pregunta: Explícame la teoría de la relatividad
/quick [pregunta] ⚡ Respuesta rápida (siempre en 1 mensaje) /quick pregunta: ¿Qué es Python?
/stats Ver estadísticas de uso /stats
/clear Limpiar historial de conversación /clear

🎯 ¿Cuándo usar cada comando?

  • /ask: Para respuestas detalladas y explicaciones completas
  • /quick: Para respuestas concisas, definiciones rápidas y resúmenes

🏗️ Estructura del Proyecto

simple-discord-bot/
├── 📄 bot_gemini.py          # Código principal (menos de 200 líneas)
├── 📄 requirements.txt       # Dependencias (solo 3 paquetes)
├── 📄 Procfile              # Configuración para Railway
├── 📄 LICENSE               # Licencia MIT
├── 📄 .env.example          # Ejemplo de variables de entorno
└── 📄 README.md            # Este archivo

🛠️ Personalización Fácil

Cambiar Prefijo de Comandos

bot = commands.Bot(command_prefix='!', intents=intents)  # Cambia '!' por tu prefijo

Modificar Modelo de IA

self.model = genai.GenerativeModel('gemini-2.0-flash')  # ⚡ Más rápido
self.model = genai.GenerativeModel('gemini-1.5-pro')    # 🧠 Más potente

Ajustar Límites de Respuesta

# En el comando quick:
respuesta_corta = ensure_short_response(respuesta, 1500)  # Cambia 1500 por tu límite

🤝 Para Contribuir

¡Las contribuciones son bienvenidas! Para contribuir:

  1. Fork el proyecto
  2. Crea una feature branch: git checkout -b feature/nueva-feature
  3. Commit tus cambios: git commit -m 'Agrega nueva feature'
  4. Push a la rama: git push origin feature/nueva-feature
  5. Abre un Pull Request

📝 Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

❓ Preguntas Frecuentes

¿Es completamente gratis?

Sí! Discord + Gemini + Railway = 100% gratis para uso personal

¿Necesito saber programar?

No! Solo sigue los pasos de instalación paso a paso

¿Funciona en Discord móvil?

Sí! Discord móvil soporta comandos slash perfectamente

¿Hay límite de preguntas?

🔷 Gemini tiene límites generosos en su plan gratuito

¿El bot recuerda las conversaciones?

🔷 , durante la misma sesión. Usa /clear para reiniciar

🆘 Soporte y Troubleshooting

Problemas comunes:

  1. ❌ Bot no responde: Verifica que activaste "Message Content Intent"
  2. ❌ Error de conexión: Revisa que las API keys sean correctas
  3. ❌ Comandos no aparecen: Espera hasta 1 hora para que se propaguen

¿Necesitas ayuda?

  1. Revisa los Issues
  2. Crea un nuevo issue con detalles de tu problema
  3. Error común: No activar "Message Content Intent" en Discord

¿Te gustó el bot? ¡Dale una estrella al repositorio!

🎯 Perfecto para:

  • Servidores de amigos y comunidades
  • Aprendizaje y educación
  • Proyectos de programación
  • Primer bot de Discord
  • Experimentar con IA conversacional

¡Disfruta de tu nuevo bot inteligente! 😊🚀

About

Un bot de Discord simple que usa IA

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published