feat: Add new commands for Discord bot - Implemented "Everyone" command that replies to the user when executed. - Added "sdfsdfsdf" command with an alias "dfsf" that also replies to the user. - Enhanced the command structure with type definitions for better type safety.
11 KiB
🎯 Guía Práctica: Usando las Nuevas Funciones
📋 Tabla de Contenidos
- Usar EnvManager
- Eliminar Archivos Correctamente
- Interpretar Logs de Debugging
- Prevenir Errores Comunes
1. Usar EnvManager
Paso 1: Abrir el Manager
- Click en el botón "🔐 Variables ENV" en el sidebar izquierdo
- Se abrirá el panel del EnvManager
Paso 2: Escanear Variables
- Click en "🔍 Escanear Proyecto"
- Espera a que termine (aparecerá notificación)
- Verás algo como:
✅ Escaneadas 5 variables del código
➕ Se agregaron 3 variables nuevas
Paso 3: Ver Ubicaciones
Cada variable mostrará dónde se usa:
DATABASE_URL
📍 Usada en 2 ubicación(es) ▼
├─ src\core\prisma.ts:12 → const client = new PrismaClient({ datasourceUrl: process.env.DATABASE_URL })
└─ src\commands\admin\setup.ts:8 → if (!process.env.DATABASE_URL) throw new Error('Missing DB')
Explicación:
src\core\prisma.ts:12= Archivo y número de línea→ const client = ...= Código exacto donde se usa
Paso 4: Editar Variables
Opción A: Formulario (Recomendado)
- Busca la variable en la lista
- Escribe el valor en el input
- Click en 👁️ para mostrar/ocultar valores sensibles
- Click en "💾 Guardar .env"
Opción B: Editor Raw
- Scroll hasta "📝 Editor Raw (.env)"
- Edita el texto directamente:
DATABASE_URL=postgres://localhost:5432/mydb API_KEY=sk_test_123456789 DEBUG=true - Click en "🔄 Sincronizar desde Raw"
- Click en "💾 Guardar .env"
Paso 5: Agregar Variable Manual
Si necesitas una variable que no está en el código:
- Click en "➕ Agregar Variable"
- Escribe el nombre (ej:
MY_SECRET_KEY) - Se convierte automáticamente a mayúsculas:
MY_SECRET_KEY - Escribe el valor
- Guarda
Paso 6: Eliminar Variable
- Busca la variable en la lista
- Click en el botón "🗑️"
- Confirma la eliminación
- La variable desaparece del formulario Y del editor raw
- Click en "💾 Guardar .env" para aplicar
2. Eliminar Archivos
Problema: "Permiso Denegado"
Síntoma:
❌ Error eliminando: Permiso denegado para eliminar: src/test.ts
Ejecuta el editor como administrador
Solución Windows:
Método 1: Ejecutar como Admin
- Cierra la aplicación
- Click derecho en el ejecutable
- "Ejecutar como administrador"
- Intenta eliminar de nuevo
Método 2: PowerShell Elevado
# Abrir PowerShell como Admin
Start-Process -FilePath "C:\ruta\a\tu\editor.exe" -Verb RunAs
Método 3: Cambiar Permisos
- Click derecho en la carpeta del proyecto
- Propiedades → Seguridad → Editar
- Tu usuario → Control total ✅
- Aplicar → OK
Problema: "Archivo no Encontrado"
Síntoma:
❌ Archivo no encontrado: src/deleted.ts
Causa: Otro programa ya eliminó el archivo (Git, otro editor, etc.)
Solución: Refresca el árbol de archivos (F5 o click en "🔄 Refrescar")
Problema: "No es un Archivo"
Síntoma:
❌ La ruta no es un archivo: src/commands
Causa: Intentaste eliminar una carpeta con el botón de eliminar archivo
Solución: Usa el botón de eliminar carpeta (usualmente click derecho → Eliminar carpeta)
3. Logs de Debugging
Dónde Ver los Logs
Opción 1: Consola del Navegador (Desarrollo)
- Presiona F12
- Tab "Console"
- Verás todos los logs
Opción 2: Archivo de Log (Producción)
- Windows:
C:\Users\TuUsuario\AppData\Local\amayo-editor\logs\ - Linux:
~/.local/share/amayo-editor/logs/ - Mac:
~/Library/Application Support/amayo-editor/logs/
Logs del EnvManager
Carga Exitosa
📂 Cargando .env desde: C:/Users/Shnimlz/Documents/GitHub/amayo
✅ .env cargado, contenido: DATABASE_URL=postgres://localhost
PORT=3000
API_KEY=sk_test_123
🔍 Parseando .env, líneas: 3
✓ DATABASE_URL=postgres://localhost
✓ PORT=3000
✓ API_KEY=sk_test_123
✅ Variables parseadas: 3
Interpretación:
- ✅ Todo bien
- Se cargaron 3 variables correctamente
Archivo No Existe
📂 Cargando .env desde: C:/Users/Shnimlz/Documents/GitHub/amayo
❌ Error cargando .env: No such file or directory
ℹ️ No se encontró archivo .env, se creará uno nuevo
Interpretación:
- ⚠️ Normal en proyectos nuevos
- El archivo se creará cuando guardes
Error de Parseo
🔍 Parseando .env, líneas: 5
✓ DATABASE_URL=postgres://localhost
✗ Línea inválida: "INVALID LINE WITHOUT EQUALS"
✓ API_KEY=sk_test_123
✅ Variables parseadas: 2
Interpretación:
- ⚠️ Una línea no tiene formato válido
- Se ignoró y se cargaron las demás
Logs del Guardado
Guardado Exitoso
💾 Guardando .env...
Ruta del proyecto: C:/Users/Shnimlz/Documents/GitHub/amayo
Contenido a guardar: DATABASE_URL=postgres://localhost
PORT=3000
✅ Guardado exitoso
Interpretación:
- ✅ Archivo escrito en el disco
- Ubicación:
{projectRoot}/.env
Error de Permisos
💾 Guardando .env...
❌ Error guardando .env: Permission denied (os error 13)
Solución: Ejecutar como administrador
4. Prevenir Errores Comunes
Error 1: Variables No Se Guardan
Síntoma: Editas variables pero al reabrir están en blanco
Causa: No hiciste click en "💾 Guardar .env"
Prevención:
- Siempre busca el botón verde "💾 Guardar .env"
- Debe estar habilitado (no gris)
- Click y espera la notificación: "✅ Archivo .env guardado correctamente"
Error 2: Editor Raw y Formulario Desincronizados
Síntoma: El formulario muestra valores diferentes al editor raw
Causa: Editaste en raw pero no sincronizaste
Prevención:
- Si editas en raw, SIEMPRE click en "🔄 Sincronizar desde Raw"
- Espera la notificación: "🔄 Sincronizado desde editor raw"
- Verifica que el formulario se actualizó
- Ahora sí, guarda
Error 3: Loop Infinito (Navegador Colgado)
Síntoma: El navegador se congela al editar variables
Causa: Bug en el código (ya arreglado con isUpdatingRaw)
Si pasa:
- Cierra la aplicación
- Actualiza a la última versión
- El flag
isUpdatingRawpreviene este problema
Error 4: Variables Detectadas pero No en el .env
Síntoma: "⚠️ Sin definir: 3" pero no aparecen en la lista
Causa: No se auto-agregaron
Solución:
- Scroll hasta "⚠️ Variables sin definir encontradas en el código"
- Click en "➕ Agregar" en cada variable faltante
- O click en "🔍 Escanear Proyecto" de nuevo
Error 5: Ubicaciones No Aparecen
Síntoma: Las variables no muestran "📍 Usada en X ubicación(es)"
Causa: Versión vieja del backend
Solución:
- Verifica que
AEditor/src-tauri/src/lib.rstenga la funciónscan_env_variables_with_locations - Recompila el backend Rust:
cd AEditor npm run tauri build - Reinicia la aplicación
5. Ejemplos de Casos de Uso
Caso 1: Proyecto Nuevo
Escenario: Acabas de clonar un repo, no tiene .env
Pasos:
- Abre EnvManager
- Click "🔍 Escanear Proyecto"
- Se detectan automáticamente todas las variables del código
- Completa los valores:
DATABASE_URL=postgres://localhost:5432/mydb JWT_SECRET=supersecret123 API_KEY=sk_live_... - Guarda
- ¡Listo! Ya tienes tu .env
Caso 2: Migración de Variables
Escenario: Renombraste una variable en el código
Pasos:
- Cambia en el código:
// Antes const url = process.env.DATABASE_URL; // Después const url = process.env.DB_CONNECTION_STRING; - Abre EnvManager
- Click "🔍 Escanear Proyecto"
- Verás:
- ✅
DB_CONNECTION_STRINGdetectada - ⚠️
DATABASE_URLya no se usa
- ✅
- Elimina
DATABASE_URL - Agrega valor a
DB_CONNECTION_STRING - Guarda
Caso 3: Debugging de Variable Faltante
Escenario: Tu app dice "Missing environment variable: API_KEY"
Pasos:
- Abre EnvManager
- Click "🔍 Escanear Proyecto"
- Busca
API_KEYen la lista - Mira "📍 Usada en X ubicación(es)" para ver dónde se requiere:
src\server\api.ts:15 → headers: { 'Authorization': process.env.API_KEY } - Agrega el valor correcto
- Guarda
- Reinicia la app
Caso 4: Compartir .env.example
Escenario: Quieres compartir un template del .env sin valores sensibles
Pasos:
- Abre EnvManager
- Copia el contenido del editor raw
- Crea archivo
.env.example - Pega y reemplaza valores:
DATABASE_URL=postgres://localhost:5432/your_db_name JWT_SECRET=your_secret_here API_KEY=your_api_key_here - Commit
.env.examplea Git - NO comitees
.env(debe estar en.gitignore)
6. Atajos de Teclado
| Acción | Atajo |
|---|---|
| Guardar .env | Ctrl+S (cuando el botón está habilitado) |
| Abrir DevTools | F12 |
| Refrescar | F5 |
| Buscar en raw | Ctrl+F (dentro del textarea) |
| Seleccionar todo raw | Ctrl+A (dentro del textarea) |
7. Checklist de Verificación
Antes de cerrar EnvManager, verifica:
- Todas las variables tienen valores (no vacías)
- No hay "⚠️ Sin definir" (o las agregaste intencionalmente)
- Guardaste los cambios (botón "💾 Guardar .env" presionado)
- Viste la notificación: "✅ Archivo .env guardado correctamente"
- Si editaste en raw, sincronizaste primero
8. Troubleshooting Rápido
| Problema | Solución Rápida |
|---|---|
| No guarda cambios | ¿Hiciste click en "💾 Guardar .env"? |
| Permiso denegado | Ejecutar como administrador |
| Variables no aparecen | Click en "🔍 Escanear Proyecto" |
| Raw y formulario diferentes | Click en "🔄 Sincronizar desde Raw" |
| Ubicaciones no aparecen | Recompila el backend Rust |
| App se congela | Actualiza a última versión (tiene fix) |
9. Preguntas Frecuentes
P: ¿Dónde se guarda el .env?
R: En la raíz del proyecto: {projectRoot}/.env
P: ¿Puedo editar el .env manualmente en otro editor? R: Sí, pero después haz "🔄 Refrescar" en el EnvManager para recargar
P: ¿Las ubicaciones se actualizan en tiempo real? R: No, tienes que hacer "🔍 Escanear Proyecto" para actualizar
P: ¿Puedo agregar comentarios en el .env?
R: Sí, líneas que empiezan con # son comentarios
P: ¿Qué pasa si elimino una variable que se usa en el código? R: El código fallará en runtime. Verifica las ubicaciones antes de eliminar.
P: ¿Puedo tener múltiples .env?
R: Sí, pero el EnvManager solo maneja .env. Para .env.local, .env.production, etc., edítalos manualmente.
¡Eso es todo! Ahora eres un experto en usar el nuevo EnvManager 🎉