Deno ejecuta TypeScript tal cual y carga paquetes de npm directamente desde tus imports. Para ejecutar un bot de Deno:
- Cambia el tipo: en la página Bot, sección Código, pulsa Cambiar lo que se ejecuta junto a Entorno de ejecución y elige Deno Bot.
- Sube tus archivos en Files.
- Comprueba el Archivo de entrada (
main.tspor defecto) en la página Bot, sección Código. - Pega tu token en la sección Discord y pulsa Conectar.
- Pulsa Iniciar y mira Console.
1. Cambia el tipo a Deno Bot
En la página Bot, sección Código, pulsa Cambiar lo que se ejecuta junto a Entorno de ejecución y elige Deno Bot. En un ordenador, la etiqueta del tipo en la parte superior de la página (por ejemplo Node.js Bot) abre el mismo diálogo. Deja sin marcar Eliminar mis archivos actuales y empezar de cero. para conservar tus archivos. Mira Cómo cambiar tu bot a otro lenguaje o a un bot listo para usar. La instalación descarga Deno en tu servidor.
2. Añade tu código
Sube tus archivos .ts (y deno.json si usas uno) en Files: comprime una carpeta en un zip, súbelo, márcalo y pulsa Extraer. O elige Repositorio Git como origen en la sección Código: Cómo desplegar y actualizar tu bot de Discord desde GitHub.
3. Define cómo se ejecuta
- Archivo de entrada (tarjeta Cómo se ejecuta):
main.tspor defecto, por ejemplosrc/bot.ts. - Versión de Deno (tarjeta Ajustes):
latest, o un número de versión como2.5.4.
No hay campo Paquetes: Deno descarga lo que nombran tus imports (npm:, jsr: o una URL) la primera vez que los carga, y los conserva para los inicios siguientes.

4. Pega el token e inicia
En la sección Discord, pega el token y pulsa Conectar. Pulsa Iniciar y abre Console. Ves la versión de Deno, por ejemplo [PlayNHost] Deno 2.5.4, y luego [PlayNHost] Starting your bot. Tu bot se ejecuta con deno run -A: todos los permisos, dentro de tu propio servidor, así que no necesitas ninguna opción --allow. Su memoria está limitada al 80 por ciento de la de tu plan.
Un bot mínimo de Deno con discord.js
main.ts
import { Client, Events, GatewayIntentBits } from "npm:discord.js@14";
const client = new Client({ intents: [GatewayIntentBits.Guilds] });
client.once(Events.ClientReady, (c) => {
console.log(`Logged in as ${c.user.tag}`);
});
client.login(Deno.env.get("DISCORD_TOKEN"));
El primer inicio descarga discord.js, así que tarda un poco más. Imprimir Logged in as cambia la etiqueta del Resumen a En línea en Discord. También puedes usar discordeno, una librería hecha para Deno.
Cambiar la versión de Deno
Deno se descarga cuando se instala el servidor. Para ejecutar otra versión:
- En la sección Código, tarjeta Ajustes, pon Versión de Deno con un número de versión, por ejemplo
2.5.4, y pulsa Guardar. - Reinicia el bot. La consola muestra
[PlayNHost] The Deno version changed to v2.5.4.y[PlayNHost] Downloading Deno v2.5.4, y luego inicia tu bot con ella.
latest conserva la versión que ya está descargada; no se actualiza sola. Para pasar a la última versión, escribe su número, o deja latest y pulsa Reinstalar al final de la sección Código: la instalación descarga Deno otra vez y tus archivos se quedan.
¿No pasa nada al reiniciar? Tu servidor todavía tiene un script de inicio antiguo que solo lee la versión al instalar. Pulsa Reinstalar una vez: instala la versión que pusiste y el script de inicio más reciente.
Si la consola dice que no se pudo descargar Deno, comprueba que la versión que escribiste es una versión real de Deno, en la sección Código, bajo Ajustes, Versión de Deno, y pulsa Iniciar de nuevo.
Otras líneas de la consola
| Línea | Qué hacer |
|---|---|
[PlayNHost] Your bot is not set up yet: the main file main.ts was not found. | Sube tus archivos, o pon en Archivo de entrada el nombre y la carpeta reales. |
Un error de import de un paquete npm: o jsr: | Revisa el nombre y la versión del paquete en el import. |
Las claves y contraseñas van en Entorno, y se leen con Deno.env.get: Cómo definir variables de entorno y secretos para tu bot de Discord. TypeScript en otros tipos: Cómo ejecutar un bot de Discord en TypeScript.



