Convierte teléfonos Android antiguos en agentes de IA | Tutorial de DroidClaw
EN INTRODUCCIÓN DroidClaw es un agente de IA de código abierto que convierte un teléfono Android en un asistente manos libres. Al emplear un modelo de lenguaje grande para interpretar el contenido de la pantalla y generar toques, deslizamientos y pulsaciones de teclas mediante ADB, puede realizar tareas como buscar en YouTube, enviar mensajes de WhatsApp o ejecutar flujos completos de múltiples aplicaciones—sin necesidad de APIs dedicadas.
QUÉ ES El núcleo de DroidClaw es un bucle de percepción → razonamiento → acción: 1. Lee la pantalla a través de un árbol de accesibilidad (o de una captura de pantalla si el árbol falta). 2. El estado de la pantalla, el objetivo del usuario en inglés sencillo y las acciones previas se envían a un LLM. 3. El modelo devuelve un plan de acciones de alto nivel (por ejemplo, tocar, escribir, deslizar). 4. DroidClaw ejecuta esas acciones mediante ADB, observa el resultado y lo devuelve al siguiente paso.
Características Clave • Selección de objetivos en lenguaje natural • Manejo automático de acciones repetidas y bucles bloqueados • Fallback visual para árboles de UI inaccesibles • Memoria conversacional de múltiples turnos • Soporte local de Ollama para uso completamente offline • Control remoto vía Tailscale
REQUISITOS DEL SISTEMA Hardware: teléfono Android (depuración USB habilitada) o teléfono con depuración Wi‑Fi Software: ADB (Android Platform Tools), entorno Bun, no se requiere Node/npm LLM: Cualquier proveedor compatible con DroidClaw (Groq, OpenAI, Ollama, OpenRouter, Bedrock)
PASOS DE INSTALACIÓN 1. Instalar Bun curl -fsSL https://bun.sh/install | bash 2. Instalar ADB • Mac: brew install android-platform-tools • Linux: sudo apt install android-tools-adb • Windows: descargar desde https://developer.android.com/tools/releases/platform-tools 3. Clonar el repositorio git clone https://github.com/unitedbyai/droidclaw.git cd droidclaw 4. Instalar dependencias del proyecto bun install 5. Copiar el archivo de ejemplo de entorno cp .env.example .env 6. Configurar el proveedor LLM en .env Ejemplo para Groq (nivel gratuito): LLM_PROVIDER=groq GROQ_API_KEY=TU_LLAVE_GROQ O para Ollama local: LLM_PROVIDER=ollama OLLAMA_MODEL=llama3.2-vision
CONECTAR TU TELEFONO • Habilitar Opciones de desarrollador → Depuración USB • Conectar el teléfono vía USB; aceptar el aviso • Verificar: adb devices Debería listar tu dispositivo.
CORRIENDO EL AGENTE Modo interactivo (objetivo en inglés sencillo): bun run src/kernel.ts # Escribe tu objetivo y pulsa Enter
Modo de flujo de trabajo (secuencia multi‑aplicaciones impulsada por IA): bun run src/kernel.ts --workflow examples/workflows/telegram-send-message.json
Flujo determinista (sin IA): bun run src/kernel.ts --flow examples/flows/send-whatsapp.yaml
USOS DE EJEMPLO - Abrir YouTube y buscar "lofi hip hop": $ bun run src/kernel.ts introduce tu objetivo: open youtube and search for "lofi hip hop" - Enviar un mensaje de WhatsApp mediante un flujo predefinido. - Ejecutar un briefing matutino nocturno que lea eventos del calendario, clima y mensajes de Slack sin leer.
CONTROL REMOTO CON TAILSCALE Instala Tailscale en el teléfono y en el host. Habilita la depuración inalámbrica en Configuración del teléfono → Opciones de desarrollador. Conéctate por red: adb connect : Ahora DroidClaw puede iniciarse desde cualquier VPS, portátil o tarea cron, permitiendo que un teléfono permanezca conectado en casa mientras tus scripts lo ejecutan desde cualquier lugar.
CARACTERÍSTICAS AVANZADAS • Fallback visual: cuando el árbol de accesibilidad está vacío, el agente envía una captura de pantalla al LLM. • Detección de bucle bloqueado: si la pantalla no cambia después de varios pasos, el agente inyecta pistas de recuperación. • Memoria de múltiples turnos: mantiene las últimas N acciones en el contexto de la conversación.
SOLUCIÓN DE PROBLEMAS • "adb: command not found" – asegúrate de que esté instalado y en $PATH o configura ADB_PATH en .env. • "no devices found" – verifica que la depuración USB esté habilitada y confirma que el cable soporta transferencia de datos. • Acciones repetidas – aumenta MAX_STEPS o cambia a un modelo mayor. • Árbol de accesibilidad vacío – establece VISION_MODE=always para forzar el envío de capturas.
CONCLUSIÓN DroidClaw demuestra cómo los LLM modernos pueden orquestar la automatización de la interfaz de usuario sin necesitar APIs dedicadas. Al combinar herramientas de código abierto (Bun, ADB, Ollama) con un sencillo bucle de percepción‑razonamiento‑acción, puedes convertir instantáneamente un teléfono viejo en un asistente personal siempre activo y poderoso. Ya sea que quieras automatizar publicaciones en redes sociales, ejecutar flujos de trabajo de investigación nocturnos o simplemente experimentar con el control de teléfono impulsado por IA, el proceso de instalación es sencillo y la flexibilidad es enorme. ¡Disfruta automatizando!