Biblioteca de agentes de IA para navegar la web sin depender de lo omnimodal, usando compresión del DOM amigable con tokens
(tidesurf.org)Normalmente solo leo GN de vez en cuando; esta es mi primera vez publicando. ¡Mucho gusto!
Esta es una biblioteca que hice a partir de la idea: ¿y si, en lugar de un Web Surf agent actual y poco claro basado en lo omnimodal, tomamos el DOM obtenido por CDP, lo formateamos y comprimimos al mínimo para que un LLM pueda entenderlo, y luego lo convertimos en MCP?
Por qué la hice
- Los agentes web basados en capturas de pantalla requieren modelos de visión y consumen una cantidad enorme de tokens.
- La serialización tradicional del DOM incluye clases CSS,
divenvoltorios e incluso scripts, por lo que una sola página puede terminar con entre 50 mil y 100 mil tokens. - Lo que el agente necesita son botones, enlaces, entradas de texto y texto; usar toda la ventana de contexto solo para eso es ineficiente.
Cómo funciona
- Tras conectarse a una instancia de Chrome mediante CDP, elimina todo excepto los elementos mínimos necesarios para distinguir la estructura dentro del DOM.
- Después, asigna un ID corto a cada elemento y le entrega ese contenido al agente.
- También soporta interacciones sobre elementos interactivos desde el agente, como
click("B1"),type("I1", "término de búsqueda").
Benchmark
- GitHub: 84,357 -> 2,593 tokens (32x)
- Wikipedia: 123,615 -> 12,097 tokens (10x)
- MDN: 24,923 -> 1,793 tokens (14x)
- HN: 8,736 -> 1,038 tokens (8.4x)
- En promedio, 93% de reducción de tokens y tiempo de parsing de ~30 ms
Especificaciones sobre el papel
- Basado en TypeScript; como runtime soporta Bun Native y también Node 18+
- Dependencia del runtime
chrome-remote-interface - Backend basado en ElysiaJS
Enlaces
- GitHub: https://github.com/TideSurf/core
- npm: https://www.npmjs.com/package/@tidesurf/core
- Documentación/demo: https://tidesurf.org
Lo hice originalmente para depuración personal y, después de usarlo, me sorprendió que resultara bastante útil, así que decidí liberarlo como OSS. ¡Pruébenlo y agradeceré mucho su feedback!
Aún no hay comentarios.