Dinoer

Un asistente que busca en la web le entrega su respuesta, no las páginas que leyó. El 14 de agosto de 2026, un modelo encargado de redactar un informe a partir de páginas ya recopiladas lanzó por su cuenta doce búsquedas en la web. Ninguna aparecía en el informe, y parte de la respuesta procedía de páginas que nadie había recopilado. Solo el registro de todos los eventos que emitió el modelo las sacó a la luz.

La herramienta de este sitio conserva en su disco las páginas en las que se basa un informe y prohíbe al modelo que lo redacta buscar otras. No intenta encontrar más páginas que un asistente de búsqueda web. Para qué sirve y para qué no →

Antes del nombre, la prueba

Un comando y su salida real, registrada el 15 de agosto de 2026 sobre https://example.com con Dinoer 1.0.0 y la guía en su versión 1.6. La salida está abreviada: la respuesta completa incluye además estadísticas del DOM, la duración de cada acción y el contador de navegación. Las claves están en francés porque el programa las nombra así.

/opt/dinoer/venv/bin/python3 /opt/dinoer/shot.py \
  --url https://example.com --a11y --guide-version 1.6
{"succes": true, "http_status": 200,
 "a11y_tree": "- heading \"Example Domain\" [level=1]\n- paragraph: This domain is for use in documentation examples…\n- paragraph:\n  - link \"Learn more\":\n    - /url: https://iana.org/domains/example",
 "boussole": {"titre_page": "Example Domain", "dernier_code_http": 200,
              "respect": {"actions_executees": 0, "duree_totale_ms": 2910}},
 "etat": {"pret_a_agir": true, "niveau_confiance": "eleve"}}

La salida no contiene ninguna imagen: Dinoer nunca genera una. Sin --guide-version, el programa responde {"succes": false, "erreur": "guide_non_lu"} y no hace nada más: un agente tiene que haber leído la guía y citar su número de versión antes de actuar sobre una página. Por qué este bloqueo →

Qué es Dinoer

Dinoer consulta fuentes públicas, guarda en su disco las páginas que recopila y hace que un modelo redacte un informe basado solo en esas páginas. La lista de fuentes al final del informe la escribe Dinoer, no el modelo.

Es una bifurcación de Diwall, una herramienta de automatización de navegador para modelos de lenguaje que trabaja con capturas de pantalla. Dinoer eliminó esa capa por completo: ni capturas, ni numeración Set-of-Mark, ni modelo de visión. Lee una página como texto: el DOM, el árbol de accesibilidad, el texto depurado. Funciona en Debian 13 y Ubuntu 24.04; el paquete se ha instalado y ejecutado en una Raspberry Pi 4 con 8 GB de memoria.

Consulta → búsqueda con SearXNG → recopilación HTTP ligera
         → navegador real solo para las páginas que lo necesitan
         → redacción por un LLM delegado → informe Markdown fechado y con fuentes

Lo que no hace mejor Un asistente de búsqueda web respaldado por buscadores comerciales, con cuenta y cookies, encuentra páginas que una instancia de SearXNG sin autenticación no alcanza. Medido el 14 de agosto de 2026: la medición →

El corpus es la garantía, no la respuesta

Cada página que conserva una campaña se escribe en collecte.jsonl; cada intento, con éxito o sin él, en operations.jsonl. El informe se redacta solo a partir de collecte.jsonl: en cada llamada, Dinoer retira al modelo sus herramientas websearch y webfetch. Queda una vía abierta: el modelo conserva bash, y uno ya llegó a la web con curl. Qué cubre esto y qué no →

{"id_campagne": "concerts-finistere-2026-07-28",
 "cibles": [{"type": "query", "valeur": "concerts finistere sud ete"}]}

Un manifiesto solo necesita estas dos claves. campagne.py --manifeste manifeste.json recopila las páginas, con una pausa entre dos solicitudes, y después redacta el informe. Lanzar una campaña →

Cómo lee Dinoer una sola página →

Secciones