¡Ahora desde tu Apple Watch! Ejecutá flujos de KrakBot directo desde la muñeca. ⌚ Descargar atajo Watch
🐙 KrakBot ⚡

Tu Telegram.
Tus agentes.
Una sola interfaz.

Gateway de Telegram hacia Claude Code, Gemini CLI y OpenAI Codex CLI. Mandá mensajes, archivos o notas de voz; elegí un agente, creá agentes propios o dejá que el Root Agent orqueste equipos multi-agente.

Cómo funciona

Tres pasos. Sin configuración adicional.

1

Mandás el mensaje

Desde Telegram con @menciones, o via HTTP API desde n8n, iOS Shortcuts o cualquier script.

2

KrakBot despacha

KrakBot enruta el mensaje al agente elegido — Claude, Gemini o Codex — en tu máquina local.

3

La respuesta llega

De vuelta a tu chat de Telegram, o como JSON en la respuesta HTTP — con contexto de la sesión.

Los agentes

Elegí el mejor para cada tarea, o creá los tuyos y dejá que el Root Agent los enrute.

🤖
Claude Code
Anthropic

Código, análisis, razonamiento complejo y edición de archivos. El más capaz para tareas de ingeniería profunda.

CLI nativo
Gemini CLI
Google

Búsquedas en tiempo real, síntesis de información y procesamiento multimodal. Ideal para investigación y resúmenes.

CLI nativo
Codex CLI
OpenAI

Especializado en código y refactors quirúrgicos. Rápido y preciso para tareas de transformación de código.

CLI nativo
🧩
Agentes personalizados
Claude · Gemini · Codex

Creá especialistas con nombre, descripción, system prompt, voz propia y CLI base. Se activan con /setagent o @mención.

/newagent
👥
Equipos multi-agente
Coordinator · Worker · Reviewer

Armá equipos con wizard IA, asigná modelos por rol y ejecutá tareas con revisión automática, manual o sin revisión.

/buildteam

Novedades

Lo último de KrakBot.

Todo lo que necesitás

Desde Telegram o via HTTP API — KrakBot arma contexto, respeta políticas, enruta al agente correcto y devuelve la respuesta donde la pediste.

🔀
Multi-agente

Cambiá entre Claude, Gemini y Codex con /claude, /gemini, /codex o /default. También podés usar @menciones por mensaje.

@
@menciones

Usá @claude, @gem o @codex para dirigir cada mensaje al agente exacto.

💬
Historial de sesión

Ventana activa configurable, memoria persistente y compactación automática en LTM para conversaciones largas.

🎭
Personalización (Soul)

Cargá un SOUL.md como personalidad del bot, recargalo con /reloadsoul o saltalo una vez con /skip.

🧠
Memoria persistente

Guardá notas y el bot las recuerda entre sesiones. Tu contexto siempre disponible.

🏠
Self-hosted

Corre en tu máquina. Tus datos nunca salen de tu entorno. Control total, zero vendor lock-in.

🎤
Mensajes de voz

Mandá un audio por Telegram. KrakBot lo transcribe y se lo pasa a tu agente.

🤖
Custom Agents Nuevo

Creá agentes especializados con system prompt, descripción, voz TTS y CLI base. Editalos con /editagent cuando cambie el trabajo.

🧭
Root Agent

El Root Agent lee tus agentes y equipos, después elige el mejor destino con /auto o con /automode activado.

👥
Equipos multi-agente Nuevo

Organizá agentes en equipos con roles: coordinator, worker y reviewer. Creá el equipo con /buildteam y el wizard IA arma la estructura por vos.

🔍
Live Dialog View Nuevo

Activá "Ver diálogo interno" al lanzar una tarea y mirá en tiempo real la conversación entre coordinator, worker y reviewer.

📋
Gestión de tareas Nuevo

Historial completo con estados: pendiente, en curso, en revisión, completada, fallida. Consultá cualquier tarea con /taskstatus <id>.

💸
Consumo Claude Nuevo

Usá /cost para ver el consumo estimado de tokens de la sesión cuando trabajás con Claude.

🔊
Respuestas en voz Nuevo

El bot puede responder en audio. /voicemode para respuestas solo voz, /ttsbutton para un botón 🔊 al pie de cada mensaje.

🌍
Voces multiidioma Nuevo

24 voces Neural en 12 idiomas via /ttsvoice. Selector en 2 pasos: idioma → voz. Cada agente custom puede tener la suya.

📎
Archivos e imágenes Nuevo

Adjuntá imágenes, PDFs, texto o código. Los binarios van a Claude; Gemini y Codex aceptan archivos de texto.

🔗

Exponé una API REST local para que n8n, iOS Shortcuts o cualquier script llamen a KrakBot directamente. Fire-and-poll o streaming SSE. Opt-in: solo arranca si configurás HTTP_PORT.

📱
iOS Shortcuts Nuevo

Importá el atajo oficial de KrakBot en tu iPhone o iPad. Configuralo con tu IP y API Key en segundos — hablale a tus agentes de IA desde cualquier pantalla.

🛡️
Tailscale Nuevo

Accedé al gateway desde cualquier dispositivo de tu red privada sin abrir puertos. Tailscale actúa como proxy seguro entre tu iPhone, n8n y el servidor donde corre KrakBot.

HTTP Gateway

API REST local para n8n, iOS Shortcuts y scripts. Opt-in, sin cloud.

¿Qué es?

El HTTP Gateway expone una API REST en tu máquina local. Otros procesos — n8n, scripts, iOS Shortcuts — pueden enviar mensajes a tus agentes de IA sin pasar por Telegram. Es completamente opt-in: si no configurás HTTP_PORT en el .env, el gateway no arranca.

Setup rápido

.env
# Solo localhost HTTP_PORT=3000 # Con Tailscale (acceso desde otros dispositivos) HTTP_PORT=3000 HTTP_HOST=0.0.0.0 HTTP_API_KEY=tu-clave-secreta

O configuralo directamente desde Telegram con /config_gateway.

Endpoints

Método Ruta Descripción
GET/healthHealth check — sin auth requerida
POST/sessionCrear sesión persistente
POST/messageEnviar mensaje al agente → devuelve task_id
GET/task/:idConsultar estado de una tarea
GET/task/:id/streamStreaming en tiempo real (SSE)

Autenticación

Incluí el header X-API-Key en cada request. Es requerido solo cuando HTTP_API_KEY está definido en el .env. Sin esa variable, el gateway corre sin auth — recomendado solo para localhost.

Ejemplo: fire-and-poll

bash
# 1. Enviar mensaje curl -X POST http://localhost:3000/message \ -H "X-API-Key: tu-clave" \ -H "Content-Type: application/json" \ -d '{"agent":"claude","message":"hola"}' # → {"task_id":"A1B2C3D4","status":"accepted"} # 2. Obtener resultado curl http://localhost:3000/task/A1B2C3D4 \ -H "X-API-Key: tu-clave" # → {"status":"done","output":"¡Hola!..."}

iOS Shortcuts

Importá el atajo oficial de KrakBot en tu iPhone o iPad y reemplazá las dos variables:

📱 Descargar atajo iPhone / iPad ⌚ Descargar atajo Apple Watch
VariableValor
TU_IP_AQUIhttp://<tailscale-ip>:3000
TU_API_KEY_AQUILa API Key configurada en .env

En la acción Get contents of URL, configurá el método POST, agregá el header X-API-Key y el body JSON con agent y message.

Configurar desde Telegram

Podés configurar el gateway sin tocar el .env directamente desde el bot:

  1. Enviá /config_gateway al bot
  2. El wizard te pide puerto, host y API Key (podés dejarlo en blanco para correr sin auth)
  3. El bot actualiza el .env y reinicia automáticamente

Seguridad

Construido para entornos reales. Sin compromisos.

🔒
Aislamiento de entorno

Los procesos CLI hijo solo reciben las variables estrictamente necesarias. TELEGRAM_TOKEN y claves del bot nunca llegan a los agentes.

CHILD_ENV_EXTRA
Rate limiting por usuario

Límite configurable de requests por ventana de tiempo. Evita abusos sin bloquear usuarios legítimos.

RATE_LIMIT_MAX · RATE_LIMIT_WINDOW_SECONDS
📋
Audit log

Todos los eventos de seguridad se registran en data/logs/audit.log como JSON lines — autenticación, rate limit, path traversal y más.

data/logs/audit.log
🛡
Validación de archivos

Los adjuntos de Telegram se verifican contra el directorio de uploads antes de escribirse al disco. Cualquier intento de escape queda bloqueado y logueado.

path.resolve() · uploads/
🔐
Encriptación en reposo

Sesiones y memorias se guardan cifradas con AES-256-GCM. Se activa con SESSION_SECRET. Retrocompatible — los archivos existentes se migran automáticamente.

SESSION_SECRET · AES-256-GCM
📄
Políticas de comportamiento

Archivos Markdown en data/policies/ inyectados en el contexto de cada agente. Soporta política global y por agente. Editables con /policy desde Telegram.

/policy · data/policies/

¿Qué podés agregar?

Cada agente soporta sus propios módulos. Elegí el tuyo y expandí las capacidades de KrakBot.

Listo en 30 segundos

Un comando. Un wizard. Sin tocar código.

Mac / Linux — Terminal
$ curl -fsSL https://raw.githubusercontent.com/DiegoBoni/KrakBot/main/bootstrap.sh | bash

Abre un wizard visual en el browser — no hace falta saber de programación.
Te guía paso a paso para configurar tu bot de Telegram y los agentes.

Windows
bootstrap.ps1

Descargá el ZIP desde GitHub y ejecutá el script de PowerShell.

Ya tenés Node.js
npm run setup

Cloná el repo y ejecutá el setup directamente desde la raíz del proyecto.

Manual / headless
cp .env.example .env

Editá el token y la config, instalá dependencias con npm install y arrancá con npm start.

Comandos del bot

Copiá esto en BotFather → /mybots → Edit Bot → Edit Commands

BotFather — Edit Commands
start - Bienvenida e instrucciones ayuda - Instrucciones de uso claude - Cambiar agente activo a Claude Code gemini - Cambiar agente activo a Gemini CLI codex - Cambiar agente activo a Codex CLI agents - Listar todos los agentes disponibles setagent - Activar un agente por su ID newagent - Crear un agente personalizado editagent - Editar un agente personalizado delagent - Borrar un agente personalizado buildteam - Wizard IA para crear un equipo teams - Listar equipos creados task - Crear y ejecutar una tarea en un equipo tasks - Ver tareas activas e historial taskstatus - Ver detalle completo de una tarea canceltask - Cancelar una tarea activa teamstatus - Ver estado de un equipo auto - Enviar una tarea al Root Agent automode - Activar o desactivar routing automatico session - Ver info de la sesion actual cost - Ver consumo estimado de tokens de Claude clear - Borrar historial de conversacion soul - Ver el soul activo reloadsoul - Recargar el soul desde archivo skip - Saltar el soul en la proxima respuesta remember - Guardar una memoria persistente memories - Ver memorias guardadas forget - Borrar una memoria policy - Ver y editar politicas de comportamiento voicemode - Activar respuestas solo audio ttsbutton - Activar boton Escuchar en respuestas listen - Escuchar el ultimo mensaje del bot ttsvoice - Cambiar la voz TTS ping - Health check de agentes CLI update - Chequear actualizaciones disponibles config_gateway - Configurar el HTTP Gateway desde el chat (puerto, host, API Key)