Cinco herramientas de línea de comandos que corren en tu computadora, solo con Python, sin API de pago y sin cuenta en ningún servicio aparte de Search Console y Bing Webmaster, que son gratuitos.

inemaseo-sistemas es un conjunto de cinco programas gratuitos para cuidar el SEO (cómo aparece el sitio en Google y en las IAs) de tu propio sitio. Sirve para quien tiene un sitio y quiere saber qué está roto, quién lo encuentra, qué robots de IA leen las páginas y si el sitio está listo para agentes de IA. Todo corre en tu computadora, con Python 3.10 o más nuevo, usando solo datos gratuitos: el sitio, el log del servidor y los archivos que Search Console y Bing Webmaster permiten descargar.
Cada herramienta responde una pregunta, lee un dato que ya tienes y entrega un informe HTML (estándar INEMA) más JSON y CSV para que otra herramienta los lea.
Cuántas búsquedas sin tu marca te encontraron, semana a semana, para siempre. Search Console solo guarda 16 meses; aquí queda en una base SQLite que nunca borra.
Dato: CSV de gsc_semanal.py (Search Console)
Qué páginas citaron Copilot y Bing en respuestas de IA y si también tienen clic en Google. Las consultas de la IA que aún no cubres se vuelven ideas de contenido.
Dato: export del informe AI Performance de Bing Webmaster
Qué robots de IA leyeron el sitio de verdad, separados por finalidad (búsqueda, pedido del usuario, entrenamiento), y cuáles son falsos, con la IP verificada en las listas oficiales.
Dato: log de acceso de tu servidor + listas oficiales de IP
Qué está roto en el HTML que entrega el servidor: canónico, hreflang, sitemap, robots.txt por finalidad de robot de IA, bloqueo de CDN, páginas huérfanas. Cada hallazgo con una línea de "cómo corregir".
Dato: tu sitio, rastreado con cortesía
Nota de 0 a 100 de preparación para IA y agentes, con pesos públicos en pesos.json: puedes discrepar, cambiar y comparar. Incluye WebMCP (document.modelContext).
Dato: tu sitio
Nombre de robot, IP oficial, columna de CSV y regla de Google solo entran con fuente (enlace en el README de cada herramienta). Donde no hay fuente, está escrito [por confirmar].
Licencia: MIT · solo biblioteca estándar de Python
Nada va a la nube. Apuntas la herramienta a un archivo o a la dirección del sitio, ella trabaja en tu computadora y guarda los resultados en una carpeta.
Los CSV semanales de Search Console entran en gsc-historico. El CSV de AI Performance entra en bing-ia, que lo cruza con la base de gsc-historico.
botlog lee nginx/Apache (combined, incluso .gz) y Cloudflare Logpush. Antes de compartir, el comando filtrar deja solo las líneas de robots con IP oficial (LGPD (ley brasileña de protección de datos)).
auditor y agente-ready leen el HTML como un robot que no ejecuta JavaScript: solo GET, pausa de 1 s, respetando el robots.txt. agente-ready importa el núcleo del auditor.
Para el auditor y agente-ready basta con Python e internet. Las otras tres piden un archivo tuyo.
Solo biblioteca estándar: no hay pip install.
python3 --version git clone https://github.com/inematds/inemaseo-sistemas cd inemaseo-sistemas
Para gsc-historico: los CSV de gsc_semanal.py (repositorio inemaseo-metodo). Para bing-ia: el CSV exportado de AI Performance en el panel de Bing Webmaster (no existe API para esos datos).
Para botlog: el access log de tu nginx/Apache o el JSON de Cloudflare Logpush. Solo lectura, por ejemplo:
ssh root@TU_SERVIDOR 'cd /var/log/nginx; zcat -f access.log.*.gz; cat access.log.1 access.log' > /tmp/site.log
Los comandos de abajo se ejecutan desde la raíz del repositorio. Toda herramienta tiene --help en portugués y un README con todas las opciones.
Rastrea hasta 50 páginas (cámbialo con --max) y guarda relatorio.html, auditoria.json, achados.csv y paginas.csv. En la terminal, el resumen y los 5 primeros hallazgos críticos/importantes.
python3 ferramentas/auditor/auditor.py https://tusitio.com --max 50 --saida saida/auditor python3 ferramentas/auditor/auditor.py https://usuario.github.io/repo/guia/ --max 20 # solo la carpeta de la guía
Lee la home y 4 páginas del sitemap (cámbialo con --paginas), unas 10 a 25 solicitudes. Salida: relatorio.html, agente-ready.json y criterios.csv. Un criterio que no aplica sale de la cuenta, no cuenta como falla.
python3 ferramentas/agente-ready/agente-ready.py https://tusitio.com --saida saida/agente-ready python3 ferramentas/agente-ready/agente-ready.py https://tusitio.com --paginas 8
Importa la carpeta de CSV (reimportar no duplica) y genera el informe de la semana: con marca × sin marca × anónimas, consultas que subieron y bajaron, temas pendientes (consulta nueva sin página dueña) y páginas con impresiones y 0 clics.
python3 ferramentas/gsc-historico/gsc_historico.py importar exemplos/gsc-historico/entrada --db dados/gsc.sqlite python3 ferramentas/gsc-historico/gsc_historico.py relatorio --db dados/gsc.sqlite --site inema.club --saida saida/inema.club
Importa los CSV de AI Performance y cruza con la base de gsc-historico. Si la herramienta no reconoce las columnas, pide el mapa con --colunas (Microsoft no documenta el export).
python3 ferramentas/bing-ia/bing_ia.py importar exemplos/bing-ia/entrada/*.csv --db dados/bing.sqlite python3 ferramentas/bing-ia/bing_ia.py relatorio --db dados/bing.sqlite --gsc-db dados/gsc.sqlite --site inema.pro --saida saida/inema.pro
Analiza el log (varios archivos, .gz incluido). Con --sitemap, muestra también las páginas que ningún robot logró leer. Antes de mostrar o publicar un log, usa filtrar.
python3 ferramentas/botlog/botlog.py analisar /tmp/site.log --sitemap https://tusitio.com/sitemap.xml --saida saida/site python3 ferramentas/botlog/botlog.py filtrar /tmp/site.log --saida /tmp/solo-robots.log # solo robots con IP oficial
Las pruebas no usan red: el auditor y agente-ready se prueban contra un sitio falso en tests/fixtures/.
for t in ferramentas/*/; do [ -d $t/tests ] && python3 -m unittest discover -s $t/tests; done
Los ejemplos del repositorio se generaron de verdad el 19/10/2026, solo con GET en sitios públicos de INEMA. Cada informe se abre en el navegador.
En los tres últimos, la categoría entidad quedó en 0 (sin Organization/Person con @id en el JSON-LD) y WebMCP en 29 (ninguna herramienta registrada). inema.club registra una herramienta WebMCP y sacó 100 en esa categoría. · inema.club · eventos · news · guía REA
1 hallazgo importante: 2 páginas de curso con menos de 80 palabras en el HTML entregado (77 y 78). En las mejoras: 28 títulos fuera del rango de 15–65 caracteres (rango práctico, no regla de Google) y una entidad sin @id.
Ningún hallazgo crítico ni importante en 50 páginas. 4 mejoras: títulos largos, títulos repetidos, más de un H1 y páginas sin JSON-LD.
En la guía rea-engenharia-reversa: sitemap no encontrado y 3 páginas sin enlace canónico. El robots.txt de github.io pertenece a otro repositorio.
impresiones de búsquedas sin la marca, con 0 clics (de 702 impresiones en total). El informe sacó 18 consultas para temas pendientes y 5 páginas con impresiones y ningún clic.
líneas del log del 05 al 19/10 eran de robots con IP oficial: GPTBot (4), ClaudeBot (2) y OAI-SearchBot (2). El resto (personas, escáneres, curl) salió con filtrar.
El ejemplo de bing-ia usa un CSV con números inventados (las URL son reales de inema.pro), cruzados con la base real de gsc-historico. Los nombres de las columnas son una suposición [por confirmar] con un export real.
El repositorio no promete lo que el dato gratuito no entrega. Lo que exige datos de pago queda fuera de él, como opción.
Para eso existen DataForSEO, Firecrawl, Apify, Semrush y Ahrefs: opcionales, fuera de este repositorio. Comparativo en docs/ESPEC.md (en portugués).
Con --max 50 en un sitio de mil URL, "huérfana" significa "sin enlace de entrada en las 50 páginas leídas". agente-ready lee la home y 4 páginas: es un termómetro.
El log muestra quién pidió la página, no si la IA usó el contenido en una respuesta. Para citas, bing-ia. Detrás de una CDN, usa el log de la CDN.
Nada ejecuta JavaScript, a propósito. El auditor no mide velocidad (Core Web Vitals) ni backlinks.
inemaseo-sistemas forma parte de inemaSEO y es la base del curso 7 de la Formação inemaSEO.
El área de inemaSEO, con los cursos de la formación.
eventos.inema.pro/inemaseo
Curso 7 de 7El curso que enseña estas cinco herramientas, en 8 clases con salida real. También en portugués e inglés.
inematds.github.io/formacao-inemaseo-sistemas-v72/es