¿Qué hace opencode-browser-automator?
Autonomous Web Agent Toolkit 2026 - Automatización de navegador con IA para pruebas y extracción de datos.
Descripción
Este toolkit permite que un agente de IA controle un navegador web de forma autónoma para realizar tareas como pruebas funcionales, pruebas de regresión y extracción masiva de datos. Soporta múltiples plataformas de agentes (Claude Code, Cursor, Codex) y se integra fácilmente mediante scripts y una API simple.
Características
- Navegación autónoma: El agente puede navegar a URLs, hacer clic en elementos, rellenar formularios y esperar cargas.
- Extracción de datos: Obtén contenido estructurado de páginas web mediante selectores CSS o XPath.
- Soporte multiplataforma: Funciona con Claude Code, Cursor y Codex sin modificaciones.
- Configuración flexible: Usa variables de entorno y un archivo
config.yamlpara personalizar el comportamiento.
Requisitos
- Node.js 18+
- Navegador Chromium (instalado automáticamente por Puppeteer o Playwright)
- Variables de entorno:
BROWSER_AUTOMATOR_TIMEOUT(por defecto 30000 ms) yBROWSER_AUTOMATOR_HEADLESS(true/false)
Instalación
npm install @dario2003-droid/opencode-browser-automator
Uso básico
import { navigate, click, type, extract } from '@dario2003-droid/opencode-browser-automator';
// Navegar a una URL
await navigate('https://ejemplo.com');
// Hacer clic en un botón
await click('#mi-boton');
// Rellenar un campo de texto
await type('#campo-nombre', 'Juan Pérez');
// Extraer datos
const titulo = await extract('h1');
console.log(titulo);
Configuración
Crea un archivo config.yaml en la raíz de tu proyecto:
timeout: 30000
headless: true
viewport:
width: 1920
height: 1080
API
| Función | Parámetros | Descripción |
|---|---|---|
navigate(url) | url (string) | Navega a la URL especificada |
click(selector) | selector (string) | Hace clic en el elemento que coincide con el selector CSS |
type(selector, text) | selector, text | Escribe texto en un campo de entrada |
extract(selector) | selector (string) | Devuelve el texto del primer elemento que coincide |
Notas
- Asegúrate de que el navegador esté disponible en el sistema o permite que Puppeteer/Playwright lo descargue automáticamente.
- Para entornos sin interfaz gráfica (servidores), usa el modo headless.
- Los errores de tiempo de espera pueden ajustarse mediante la variable de entorno.
Licencia
MIT