new site
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
GOAL - Drive ALL SEO fix workstreams W1..W11 for odoo-expertos to PASS. Repo root = current folder; work ONLY in this repo. Use ONE branch fix/seo-all (create with: git checkout -B fix/seo-all).
|
||||
Source of truth: seo-audit-2026-05-27\GOAL-FIX-PLAN.md and the per-workstream goal files seo-audit-2026-05-27\goals\W1.txt .. W11.txt (each describes its exact tasks + acceptance). Read them as needed.
|
||||
WORK ORDER (do in this order; W7 LAST because it depends on the others): W2, W11, W1, W9, W3, W4, W5, W6, W8, W10, W7. For each workstream perform the tasks in its goal file, commit with a clear message ("fix(W#): ..."), and move to the next. For the bulk-HTML workstreams (W3, W4, W5, W6, W7) write a single codemod script per workstream and run it over all <slug>/index.html files (exclude .git, node_modules, seo-audit-2026-05-27, website, directory). For W8 also fix the run-together H1 spacing on every homepage.
|
||||
EACH TURN: (a) state which workstream you are on and why; (b) do the work; (c) commit; (d) run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only all and PASTE THE FULL OUTPUT verbatim; (e) state which W# are PASS and which remain FAIL.
|
||||
DONE WHEN: that pasted REVIEW.ps1 -Only all output contains the eleven lines "W1: PASS", "W2: PASS", "W3: PASS", "W4: PASS", "W5: PASS", "W6: PASS", "W7: PASS", "W8: PASS", "W9: PASS", "W10: PASS", "W11: PASS" (all eleven PASS), AND all changes are committed on branch fix/seo-all (show: git log --oneline -n 15).
|
||||
IF BLOCKED on one workstream after 6 attempts, skip it (note the FAIL detail in your turn), proceed to the next, and revisit at the end. Stop after 80 turns total if not all green, and report the exact remaining FAIL lines from REVIEW.ps1 -Only all.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B01 (W13 - deep AI-citation upgrade of vs/review pages) for odoo-expertos. Branch: fix/seo-batch-b01. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W13-ai-search"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo-hosting/odoo4projects-hosting-review-2026/
|
||||
- /odoo-hosting/mejor-hosting-odoo-2026/
|
||||
- /odoo-hosting/mejores-proveedores-hosting-odoo-2026/
|
||||
- /odoo-hosting/comparativa-precios-odoo-2026/
|
||||
- /odoo-hosting/cloudpepper-vs-odoo-sh-2026/
|
||||
- /odoo-hosting/opiniones-hosting-odoo-2026/
|
||||
- /odoo-hosting/odoo-vs-sap-hosting-2026/
|
||||
- /odoo-hosting/alternativas-odoo-sh-2026/
|
||||
- /odoo-hosting/odoo-community-vs-enterprise-hosting-2026/
|
||||
- /odoo-ia/alternativas-odoo-ia-comparativas-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b01 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b01 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B02 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b02. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo-hosting/hosting-odoo-gratis-gratuito-2025/
|
||||
- /odoo-ia/que-es-odoo-ia-guia-basica-2025/
|
||||
- /odoo-hosting/servidor-dedicado-odoo-2026/
|
||||
- /odoo-hosting/odoo-docker-hosting-2026/
|
||||
- /odoo-hosting/hosting-odoo-mexico-2026/
|
||||
- /odoo-hosting/hosting-odoo-sin-tarjeta-2026/
|
||||
- /odoo-hosting/hosting-odoo-argentina-2026/
|
||||
- /odoo-hosting/hosting-hibrido-odoo-2026/
|
||||
- /odoo-hosting/managed-odoo-hosting-2026/
|
||||
- /odoo/odoo-compras-gestion-proveedores-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b02 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b02 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B03 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b03. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo/odoo-argentina-implementacion-local-2025/
|
||||
- /odoo-hosting/migracion-hosting-odoo-2026/
|
||||
- /odoo-hosting/vps-odoo-hosting-2026/
|
||||
- /odoo/curso-odoo-aprender-completo-2025/
|
||||
- /odoo/dashboard-ninja-odoo-avanzado-2025/
|
||||
- /odoo/descargar-odoo-instaladores-oficiales-2025/
|
||||
- /odoo/empleos-odoo-oportunidades-carrera-2025/
|
||||
- /odoo/empresa-odoo-historia-fundacion-2025/
|
||||
- /odoo/freelance-odoo-consultores-independientes-2025/
|
||||
- /odoo/instalar-odoo-guia-paso-a-paso-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b03 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b03 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B04 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b04. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo/odoo-17-funciones-caracteristicas-2025/
|
||||
- /odoo/odoo-18-nuevas-funciones-2025/
|
||||
- /odoo/odoo-api-integraciones-desarrollo-2025/
|
||||
- /odoo/odoo-bolivia-implementacion-local-2025/
|
||||
- /odoo/odoo-chatbot-atencion-cliente-2025/
|
||||
- /odoo/odoo-chile-implementacion-local-2025/
|
||||
- /odoo/odoo-colombia-implementacion-local-2025/
|
||||
- /odoo/odoo-community-enterprise-diferencias-2025/
|
||||
- /odoo/odoo-contabilidad-modulo-completo-2025/
|
||||
- /odoo/odoo-costa-rica-implementacion-local-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b04 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b04 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B05 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b05. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo/odoo-crm-gestion-clientes-2025/
|
||||
- /odoo/odoo-demo-prueba-gratuita-2025/
|
||||
- /odoo/odoo-docker-contenedores-implementacion-2025/
|
||||
- /odoo/odoo-ecuador-implementacion-local-2025/
|
||||
- /odoo/odoo-el-salvador-implementacion-local-2025/
|
||||
- /odoo/odoo-erp-sistema-empresarial-2025/
|
||||
- /odoo/odoo-espana-implementacion-local-2025/
|
||||
- /odoo/odoo-facturacion-electronica-completa-2025/
|
||||
- /odoo/odoo-gestion-proyectos-completa-2025/
|
||||
- /odoo/odoo-github-desarrollo-codigo-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b05 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b05 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B06 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b06. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo/odoo-gratis-vs-pago-diferencias-2025/
|
||||
- /odoo/odoo-guatemala-implementacion-local-2025/
|
||||
- /odoo/odoo-helpdesk-atencion-cliente-2025/
|
||||
- /odoo/odoo-honduras-implementacion-local-2025/
|
||||
- /odoo/odoo-hosting-cloud-infraestructura-2025/
|
||||
- /odoo/odoo-inteligencia-artificial-ia-2025/
|
||||
- /odoo/odoo-inventario-gestion-almacen-2025/
|
||||
- /odoo/odoo-manufactura-produccion-industrial-2025/
|
||||
- /odoo/odoo-marketplace-multi-vendor-2025/
|
||||
- /odoo/odoo-mexico-implementacion-local-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b06 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b06 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B07 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b07. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo/odoo-nicaragua-implementacion-local-2025/
|
||||
- /odoo-hosting/apps-terceros-odoo-instalacion-2025/
|
||||
- /odoo-hosting/aws-hosting-odoo-2026/
|
||||
- /odoo-hosting/aws-hosting-odoo-amazon-cloud-2025/
|
||||
- /odoo-hosting/azure-hosting-odoo-microsoft-2025/
|
||||
- /odoo-hosting/cliente-odoo-hosting-acceso-2025/
|
||||
- /odoo-hosting/como-usar-odoo-hosting-guia-2025/
|
||||
- /odoo-hosting/configuracion-contabilidad-odoo-hosting-2025/
|
||||
- /odoo-hosting/configuracion-hosting-odoo-optimizacion-2025/
|
||||
- /odoo-hosting/desarrollo-website-odoo-14-2025/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b07 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b07 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B08 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b08. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo-hosting/digitalocean-hosting-odoo-deployment-2025/
|
||||
- /odoo-hosting/documentacion-hosting-odoo-guias-2025/
|
||||
- /odoo-hosting/email-dominio-hosting-odoo-2025/
|
||||
- /odoo-hosting/gestion-inmobiliaria-odoo-hosting-2025/
|
||||
- /odoo-hosting/gestion-suscripciones-odoo-hosting-2025/
|
||||
- /odoo-hosting/hosting-compartido-odoo-2026/
|
||||
- /odoo-hosting/hosting-compartido-odoo-shared-2025/
|
||||
- /odoo-hosting/hosting-odoo-29-euros-2026/
|
||||
- /odoo-hosting/hosting-odoo-barato-2026/
|
||||
- /odoo-hosting/hosting-odoo-chile-2026/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b08 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b08 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B09 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b09. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo-hosting/hosting-odoo-colombia-2026/
|
||||
- /odoo-hosting/hosting-odoo-community-edition-gratuita-2025/
|
||||
- /odoo-hosting/hosting-odoo-completo-guia-2025/
|
||||
- /odoo-hosting/hosting-odoo-costa-rica-2026/
|
||||
- /odoo-hosting/hosting-odoo-descuento-2026/
|
||||
- /odoo-hosting/hosting-odoo-economico-2026/
|
||||
- /odoo-hosting/hosting-odoo-ecuador-2026/
|
||||
- /odoo-hosting/hosting-odoo-enterprise-empresarial-2025/
|
||||
- /odoo-hosting/hosting-odoo-enterprise-precios-2026/
|
||||
- /odoo-hosting/hosting-odoo-espana-2026/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b09 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b09 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,23 @@
|
||||
GOAL - Batch B10 (W12 - thin-content rewrite) for odoo-expertos. Branch: fix/seo-batch-b10. Repo root = current folder (a git worktree off fix/seo-all). Work ONLY here.
|
||||
|
||||
PIPELINE: for EACH of the 10 URLs below, run seo-audit-2026-05-27\BLOG-PIPELINE.md steps 1-12 (discourse -> flow find -> brief -> outline -> /blog rewrite -> blog-factcheck -> seo-check -> kie.ai z-image >=3 per article NO text/letters/numbers/logos -> /blog schema -> /blog geo gate -> /blog analyze >=80 -> commit). Add <meta name="content-version" content="W12-deep-rewrite"> to each rewritten page's <head>. Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos".
|
||||
|
||||
URLS (10):
|
||||
- /odoo-hosting/hosting-odoo-espana-proveedores-2025/
|
||||
- /odoo-hosting/hosting-odoo-gestionado-managed-2025/
|
||||
- /odoo-hosting/hosting-odoo-gratis-2026/
|
||||
- /odoo-hosting/hosting-odoo-internacional-alemania-suiza-2025/
|
||||
- /odoo-hosting/hosting-odoo-local-on-premise-2025/
|
||||
- /odoo-hosting/hosting-odoo-mensual-2026/
|
||||
- /odoo-hosting/hosting-odoo-nube-cloud-2025/
|
||||
- /odoo-hosting/hosting-odoo-nube-cloud-2026/
|
||||
- /odoo-hosting/hosting-odoo-oferta-2026/
|
||||
- /odoo-hosting/hosting-odoo-panama-2026/
|
||||
|
||||
CONSTRAINTS: preserve <head> tags except the marker + og:image + preload; preserve hreflang/canonical/OG/header/footer/nav/breadcrumb/D3.js refs; blog-factcheck mandatory (no fabricated stats); all images via powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (NO fallback - probe was done in SETUP).
|
||||
|
||||
PROVE each turn: list which of the 10 URLs are COMPLETE (committed + analyze>=80 + geo PASS), which are IN PROGRESS, which FAILED (logged to BLOG-FAILURES.md). Paste latest /blog analyze score per completed URL.
|
||||
|
||||
DONE WHEN: at least 9 of the 10 URLs are committed on branch fix/seo-batch-b10 with analyze>=80 AND geo PASS AND content-version marker present. Run: git log fix/seo-batch-b10 --oneline -n 12 and paste it.
|
||||
|
||||
STOP after 60 turns if <9 done; report which URLs blocked and why.
|
||||
@@ -0,0 +1,29 @@
|
||||
GOAL - FINAL: merge 10 batches, run W5b + cluster wiring, gate, deploy, re-audit to >=75/100. Repo root = current folder. Work ONLY here.
|
||||
|
||||
PHASE A Merge: on fix/seo-all, merge each branch fix/seo-batch-b01..b10 in order with --no-ff. Resolve any conflicts conservatively (prefer the batch's content for article files, prefer fix/seo-all for shared infra). Paste git log --oneline -n 20.
|
||||
|
||||
PHASE B W5b titles+metas: implement OPPORTUNITIES sec3 codemod over every <slug>/index.html (now includes the freshly rewritten ones). Commit fix(W5b). Verify: powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W5b -> "W5b: PASS".
|
||||
|
||||
PHASE C Cluster wiring + taxonomy + cannibalization re-sweep: /blog cluster execute "odoo-hosting"; ditto "odoo-comparativas"; ditto "odoo-alternativas"; /blog taxonomy sync; /blog cannibalization . (resolve any 301s incl. 2025/2026 mejores-proveedores collision); /blog locale-audit .
|
||||
|
||||
PHASE D Local gate: REVIEW.ps1 -Only all -> every W1..W11, W5b, W12, W13 must say PASS. Paste output.
|
||||
|
||||
PHASE E Push + merge + deploy:
|
||||
git push -u origin fix/seo-all
|
||||
git checkout main && git pull
|
||||
git merge --no-ff fix/seo-all -m "merge SEO restoration W1-W13 (100 articles, 10 batches)"
|
||||
git push origin main
|
||||
Then every 60s for up to 12 min curl https://www.odoo-expertos.com/robots.txt; deploy live when "Disallow: /*#" is ABSENT.
|
||||
|
||||
PHASE F Re-audit (multi-judge):
|
||||
- /blog google psi https://www.odoo-expertos.com/ ; /blog google crux ditto ; /blog google gsc resubmit+validate (if supported).
|
||||
- /blog audit . ; /blog locale-audit . ; /blog geo on 5 sampled batch URLs.
|
||||
- Skill seo-audit args="https://www.odoo-expertos.com/" -> paste full report; extract "Overall SEO Health Score: X/100".
|
||||
|
||||
PHASE G Editorial (on PASS): /blog calendar (90-day plan); /blog repurpose <Cluster A pillar> (non-gating).
|
||||
|
||||
DONE WHEN: pasted "Overall SEO Health Score" >=75/100 AND main deployed AND REVIEW.ps1 -Only all all PASS AND /blog audit shows 0 Critical.
|
||||
|
||||
IF SCORE <75: lowest-scoring category, branch fix/seo-iter2 from main, fix with matching skill, merge, redeploy, re-audit. Stop after 200 turns. If still <75 report 3 lowest categories + recommendations.
|
||||
|
||||
CONSTRAINTS: no fabricated stats; preserve design + D3.js; no edits outside this repo.
|
||||
@@ -0,0 +1,42 @@
|
||||
GOAL - Restore odoo-expertos.com to a re-audited live SEO health >=75/100. ONE session supervises the launcher; the launcher runs the heavy parallel work (1 SETUP + 10 parallel BATCH worktrees + 1 FINAL). Repo root = current folder. Work ONLY here.
|
||||
|
||||
KEY FILES (read for context):
|
||||
- seo-audit-2026-05-27\run-parallel-100.ps1 (orchestrator)
|
||||
- seo-audit-2026-05-27\goals\SETUP.txt, B01..B10.txt, FINAL.txt
|
||||
- seo-audit-2026-05-27\BLOG-PIPELINE.md (12-step per-article pipeline; kie.ai z-image policy)
|
||||
- seo-audit-2026-05-27\OPPORTUNITIES-2026-05-28.md
|
||||
- seo-audit-2026-05-27\batches\URL-BATCHES.json (100 URLs in B01..B10)
|
||||
- seo-audit-2026-05-27\REVIEW.ps1 (deterministic local gate)
|
||||
|
||||
TURN 1 - FIRE LAUNCHER (background): use Bash run_in_background=true:
|
||||
powershell -File seo-audit-2026-05-27\run-parallel-100.ps1 -Phase all -MaxConcurrent 10 -Model sonnet > seo-audit-2026-05-27\launcher.log 2>&1
|
||||
Note the bg task id. Do NOT block. Runtime: 8-16 hours.
|
||||
|
||||
TURN 2..N - MONITOR each turn until launcher exits:
|
||||
- Tail seo-audit-2026-05-27\launcher.log (last 30 lines).
|
||||
- git log fix/seo-all --oneline -n 8.
|
||||
- For each batch B01..B10 still active: tail ..\odoo-wt-bNN\BNN.log.
|
||||
- Report phase (SETUP / BATCHES x/10 / FINAL).
|
||||
- If launcher.log contains "z-image unavailable" -> ABORT and paste the kie.ai error verbatim. NO model fallback.
|
||||
- A single failing batch is OK; FINAL handles partial if >=7 batches succeed.
|
||||
|
||||
TURN VERIFY (when launcher exits):
|
||||
- powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only all - paste output; W1..W11, W5b, W12, W13 all PASS.
|
||||
- git log main --oneline -n 5 - shows FINAL merged to main.
|
||||
- curl -sI https://www.odoo-expertos.com/ - X-Content-Type-Options + X-Frame-Options present (W11 live).
|
||||
- curl -s https://www.odoo-expertos.com/robots.txt | findstr "/\*#" - EMPTY (W2 live).
|
||||
|
||||
TURN AUDIT:
|
||||
Invoke Skill tool: skill="seo-audit", args="https://www.odoo-expertos.com/". Paste the full report. Extract the "Overall SEO Health Score: X/100" line.
|
||||
|
||||
DONE WHEN: extracted Overall SEO Health Score >=75/100 AND REVIEW.ps1 -Only all all PASS AND main is deployed.
|
||||
|
||||
IF SCORE <75: identify lowest-scoring category (Technical/Content/On-Page/Schema/Performance/AI Search/Images), then EITHER (a) re-run powershell -File seo-audit-2026-05-27\run-parallel-100.ps1 -Phase batches -MaxConcurrent 5 (resumes failed batches in existing worktrees), OR (b) fix that category inline with the matching /blog skill. Then merge to main, wait for Vercel (poll robots.txt as in VERIFY), re-audit. Hard cap 200 total turns. If still <75 report 3 lowest categories with their recommended fixes.
|
||||
|
||||
CONSTRAINTS (already enforced by per-batch goals; restated for supervisor):
|
||||
- blog-factcheck mandatory; NEVER fabricate stats (drop unsourced numbers).
|
||||
- Preserve design + ALL D3.js refs; preserve <head> except the content-version marker + og:image + preload.
|
||||
- "Equipo Odoo Expertos" replaces every "Maria Elena Rodriguez" in W12/W13 marked pages.
|
||||
- >=3 z-image images per article (hero+fig1+fig2); every image prompt ends with ", NO text, NO letters, NO numbers, NO logos, NO watermarks.".
|
||||
- All image gen via seo-audit-2026-05-27\scripts\kie-image.ps1 -Model z-image only (no fallback). NEVER /blog image generate.
|
||||
- No edits outside this repo.
|
||||
@@ -0,0 +1,19 @@
|
||||
GOAL - SETUP for parallel SEO restoration on odoo-expertos. Branch: fix/seo-all (continue from current; W1..W11 already committed). Repo root = current folder. Work ONLY here.
|
||||
|
||||
OBJECTIVE: produce the shared foundation that all 10 BATCH agents will branch from. Output: BRAND.md, VOICE.md, personas/equipo-odoo-expertos.md, strategy + cluster plans, diagnostics baseline, z-image probe success.
|
||||
|
||||
STEPS:
|
||||
1) z-image probe: powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Prompt "abstract data visualization, blue gradient, NO text, NO letters, NO numbers, NO logos" -OutPath "seo-audit-2026-05-27\scripts\.zimage-probe.png" -Model z-image -Aspect 16:9 -Resolution 1K. If ERROR: ABORT the goal with "z-image unavailable". NO fallback.
|
||||
2) /blog brand init -> BRAND.md + VOICE.md at repo root.
|
||||
3) /blog persona create "Equipo Odoo Expertos" -> personas/equipo-odoo-expertos.md.
|
||||
4) /blog flow sync.
|
||||
5) /blog strategy "odoo erp consulting LATAM" -> strategy doc.
|
||||
6) /blog audit . -> baseline site health.
|
||||
7) /blog cannibalization . -> baseline.
|
||||
8) /blog locale-audit . -> baseline.
|
||||
9) /blog cluster plan "odoo-hosting" (Cluster A); /blog cluster plan "odoo-comparativas" (B); /blog cluster plan "odoo-alternativas" (C).
|
||||
10) git add -A; git commit -m "setup(SEO): brand+persona+flow+strategy+clusters baseline for parallel batches"
|
||||
|
||||
DONE WHEN: BRAND.md AND personas/equipo-odoo-expertos.md AND the 3 cluster plan files exist locally, AND the z-image probe image was saved, AND a setup commit appears on fix/seo-all (paste git log -1 --oneline).
|
||||
|
||||
STOP after 25 turns if blocked; if z-image probe failed, abort immediately and report the kie.ai error verbatim.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W1 Sitemap & redirect hygiene (odoo-expertos). Branch: fix/w1-sitemaps.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo; never touch any other folder.
|
||||
Context: seo-audit-2026-05-27\FULL-AUDIT-REPORT.md (Part B). Sitemaps list redirecting + non-canonical URLs, wasting crawl budget. vercel.json redirects the country-variant hosting pages and /index.html.
|
||||
TASK: (1) In every sitemap-*.xml remove each <loc> that ends in /index.html, OR is a redirecting country-variant under /(en|fr|pt|ar)/odoo-hosting/ (bestes-/cheap-/kostenloses-/best-/free-odoo-hosting-2026, odoo-hosting-deutschland/oesterreich/schweiz/germany/uk-2026, odoo-sh-alternatives-2026, odoo-vps-hosting-2026), OR has no local <slug>/index.html. (2) Create the missing index pages odoo-hosting/index.html under en/, fr/, pt/ by mirroring de/odoo-hosting/index.html (translate visible text to the right language). (3) Keep the sitemap-index structure.
|
||||
CONSTRAINTS: edit only sitemap*.xml and the 3 new index.html files. Do not change other pages.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W1 and paste the full output.
|
||||
DONE WHEN: the pasted output contains a line "W1: PASS", AND you committed all changes on branch fix/w1-sitemaps (show git log -1 --oneline). If not PASS, keep fixing; stop after 20 turns and report the exact FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W10 Performance / Core Web Vitals (odoo-expertos). Branch: fix/w10-perf.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A sec 5). Homepage has ~33KB inline CSS (should be <14KB); D3 is loaded from the d3js.org CDN at runtime (should be self-hosted); all assets serve Cache-Control: max-age=0.
|
||||
TASK: (1) Move non-critical CSS out of index.html's inline <style> into css/main.min.css so the inline style is under 14KB (keep only true above-the-fold critical CSS inline). (2) Download d3 v7 minified to js/d3.v7.min.js and reference it locally instead of https://d3js.org; remove the misplaced d3js.org preconnect on pages that do not use D3. (3) In vercel.json add a headers rule giving Cache-Control: public, max-age=31536000, immutable to /css, /js, /components assets.
|
||||
CONSTRAINTS: do not change visible layout; keep the homepage rendering identical.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W10 and paste the full output.
|
||||
DONE WHEN: the output contains "W10: PASS" (inline CSS <14336 bytes AND self-hosted D3 exists AND immutable cache header present), AND you committed on branch fix/w10-perf (show git log -1 --oneline). Stop after 20 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W11 Security headers (odoo-expertos). Branch: fix/w11-headers.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A sec 1). HSTS is present but X-Content-Type-Options, X-Frame-Options, and Referrer-Policy are missing.
|
||||
TASK: In vercel.json add a headers rule for source "/(.*)" applying: X-Content-Type-Options: nosniff; X-Frame-Options: SAMEORIGIN; Referrer-Policy: strict-origin-when-cross-origin. Merge with any existing headers block; do not remove existing headers.
|
||||
CONSTRAINTS: edit only vercel.json.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W11 and paste the full output.
|
||||
DONE WHEN: the output contains "W11: PASS" (all 3 headers present), AND you committed on branch fix/w11-headers (show git log -1 --oneline). Stop after 10 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,17 @@
|
||||
GOAL - W12 Rewrite 20 thin articles via /blog-rewrite, preserving design + D3.js (odoo-expertos). Branch: fix/w12-rewrite-thin.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: ~587 article pages were "crawled but not indexed" because they are thin/templated. The audit confirmed bodies of ~400-450 words even where the wrapper is 1200+. The blog skill set (claude-blog) is installed at ~/.claude/skills/blog* with sub-skills /blog rewrite, /blog factcheck, /blog geo, /blog schema.
|
||||
TASK PER ARTICLE: invoke the /blog rewrite skill mentally (read ~/.claude/skills/blog-rewrite/SKILL.md) to:
|
||||
1. Read the existing <slug>/index.html and EXTRACT only the <article> body. Keep the rest of the file unchanged: <head>, header/footer/nav, JSON-LD blocks, D3.js script tags, CSS classes, image refs, the breadcrumb baked by W6.
|
||||
2. Rewrite the article body to >=1,200 unique words of substantive content with: opening 60-150 word direct-answer passage; 4-6 H2 sections each opening with a direct answer in the first 40-60 words; sourced statistics (cite source domain inline, no fabricated numbers); a "Key takeaways" bullet list; 6+ FAQ Q&A reflected in a FAQPage JSON-LD block.
|
||||
3. Replace any "Dr. Maria Elena Rodriguez" author reference with "Equipo Odoo Expertos" (until a real author bio exists) in both visible byline AND Article JSON-LD author.
|
||||
4. Keep the page's existing D3-driven chart container untouched; do not remove any <script src="...d3..."> tag.
|
||||
PRIORITY LIST: pick 20 from seo-audit-2026-05-27\gsc\crawled-not-indexed.txt that are Spanish-root or English-translated pages (skip pages already noindex'd by W7).
|
||||
CONSTRAINTS: only edit <article> body + Article/FAQPage JSON-LD + visible byline. Never touch <head> tags, hreflang, canonical, OG, nav, footer, sitemap, D3 scripts, CSS. No fabricated statistics. Cite a real source domain inline for every numeric claim.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W12 and paste full output.
|
||||
DONE WHEN: that output contains "W12: PASS" (>=20 rewritten files committed AND sampled rewritten pages have >=1,200 body words AND >=6 FAQ Q&A AND no "Maria Elena Rodriguez" remaining in the rewritten set), AND committed on branch fix/w12-rewrite-thin (show git log -1 --oneline). Stop after 40 turns if blocked, listing which articles still FAIL.
|
||||
|
||||
MARKER (required for REVIEW): you may add EXACTLY ONE meta tag to each rewritten page's <head>: <meta name="content-version" content="W12-deep-rewrite">. Do not change any other <head> tags. REVIEW.ps1 -Only W12 counts pages with this marker.
|
||||
|
||||
|
||||
CONCRETE TARGETS: read seo-audit-2026-05-27\OPPORTUNITIES-2026-05-28.md section 2 for the prioritized list of 20 thin pages with proposed angle + target word count + AI-search query per page. Rewrite those 20.
|
||||
@@ -0,0 +1,18 @@
|
||||
GOAL - W13 Deepen 10 vs-competitor / "best/review" pages for AI-search citations (odoo-expertos). Branch: fix/w13-ai-search.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: AI engines (ChatGPT, Perplexity, Google AIO, Bing Copilot) most reliably cite "X vs Y" and "best of" pages with direct-answer passages, structured data, comparison tables, and verifiable sources. You ALREADY have 13 such slugs (odoo-vs-sap-hosting-2026, odoo-vs-zoho-books-hosting-2025, cloudpepper-vs-odoo-sh-2026, alternativas-odoo-sh-2026, odoo-community-vs-enterprise-hosting-2026, odoo-gratis-vs-pago-diferencias-2025, comparativa-precios-odoo-2026, mejor-hosting-odoo-2026, mejores-proveedores-hosting-odoo-2025, mejores-proveedores-hosting-odoo-2026, opiniones-hosting-odoo-2026, odoo4projects-hosting-review-2026, alternativas-odoo-ia-comparativas-2025). Pick the top 10.
|
||||
TASK PER PAGE: apply the /blog geo skill principles (read ~/.claude/skills/blog-geo/SKILL.md):
|
||||
1. Open the page in opening with a 60-150 word "direct answer" paragraph that an LLM can quote verbatim (lead with the answer, then the qualifier).
|
||||
2. Each H2 section starts with a 40-80 word direct-answer passage before any detail.
|
||||
3. Add or expand FAQPage JSON-LD to >=8 high-intent Q&A reflecting common AI prompts (e.g., "Cual es mejor: X o Y para empresa pequena?").
|
||||
4. Add an HTML comparison <table> with rows for: pricing, hosting requirements, learning curve, scalability ceiling, TCO 5-year, ideal company size. Every numeric cell must include a citation marker linking to the source (footnote or inline <a>).
|
||||
5. Replace fabricated "Dr. Maria Elena Rodriguez" byline + Article JSON-LD author with "Equipo Odoo Expertos" (or a real author if one exists).
|
||||
6. Add Review/AggregateRating JSON-LD ONLY if real reviews exist on the page (no fabrication).
|
||||
CONSTRAINTS: only edit body + JSON-LD on the 10 selected pages. Preserve design, D3.js refs, hreflang, canonical, nav.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W13 and paste full output.
|
||||
DONE WHEN: that output contains "W13: PASS" (10 target pages each have: >=8 FAQ items, comparison <table>, direct-answer opening, no fabricated author) AND committed on branch fix/w13-ai-search (show git log -1 --oneline). Stop after 30 turns if blocked.
|
||||
|
||||
MARKER (required for REVIEW): you may add EXACTLY ONE meta tag to each updated page's <head>: <meta name="content-version" content="W13-ai-search">. Do not change any other <head> tags. REVIEW.ps1 -Only W13 counts pages with this marker.
|
||||
|
||||
|
||||
CONCRETE TARGETS: read seo-audit-2026-05-27\OPPORTUNITIES-2026-05-28.md section 1 (top 10 AI-search pages, ranked with current weakness + concrete fix) and section 4 (cluster grouping). Apply both: deepen the 10 pages with the per-page fixes; add the pillar/spoke internal links per the cluster structure.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W2 robots.txt cleanup (odoo-expertos). Branch: fix/w2-robots.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A, sec 1). robots.txt has TWO "User-agent: *" groups (2nd is ignored by crawlers), duplicate Bingbot and CCBot groups, and a meaningless "Disallow: /*#".
|
||||
TASK: Edit robots.txt so there is exactly ONE "User-agent: *" group; move the useful "Disallow: /*?" and "Disallow: /*&" into that first group; delete the second "User-agent: *" block, the duplicate Bingbot group, the duplicate CCBot group, and the "Disallow: /*#" line. Keep all AI-crawler Allow rules and the "Sitemap:" line.
|
||||
CONSTRAINTS: edit only robots.txt.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W2 and paste the full output.
|
||||
DONE WHEN: the output contains "W2: PASS", AND you committed on branch fix/w2-robots (show git log -1 --oneline). Stop after 12 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W3 Structured data / schema (odoo-expertos). Branch: fix/w3-schema.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A, sec 3). JSON-LD across ~1,168 pages uses the dead domain "odooexpertos.com" (no hyphen) and non-www URLs; canonicals use www. This breaks entity consolidation.
|
||||
TASK: Write ONE codemod (Node or Python) that rewrites all <slug>/index.html files: replace every "odooexpertos.com" with "www.odoo-expertos.com"; replace JSON-LD "url"/"item"/"@id"/"logo" values "https://odoo-expertos.com" with "https://www.odoo-expertos.com". Run it over the whole repo. Keep HTML otherwise identical. (Bonus if quick: add a valid absolute Organization logo + populate it; but the PASS gate is only the URL/domain fixes.)
|
||||
CONSTRAINTS: only change schema/JSON-LD URLs and the dead domain. Do not alter visible content. Exclude .git, node_modules, seo-audit-2026-05-27, website, directory.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W3 and paste the full output.
|
||||
DONE WHEN: the output contains "W3: PASS" (dead-domain=0 AND non-www JSON-LD=0), AND you committed on branch fix/w3-schema (show git log -1 --oneline). Stop after 20 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W4 Hreflang correctness (odoo-expertos). Branch: fix/w4-hreflang.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A sec 1). Category index pages (odoo/, odoo-hosting/, odoo-ia/) have ZERO hreflang. Some pages emit hreflang="es" pointing into a /de//fr//pt//ar/ subtree (a Spanish-slug URL under a language prefix) which 404s; the es alternate and x-default must point to the ROOT Spanish URL (no language prefix).
|
||||
TASK: Write a codemod over all <slug>/index.html: (1) ensure each page has a hreflang block for the languages that actually exist for it, all on www, plus x-default pointing to the ROOT es URL. (2) Fix any hreflang="es" or x-default href that contains /de/ /fr/ /pt/ /ar/ /en/ so it points to the root path (strip the language segment). (3) Add the hreflang block to the 3 category index pages.
|
||||
CONSTRAINTS: only touch <head> hreflang/link-alternate tags. Don't change body content.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W4 and paste the full output.
|
||||
DONE WHEN: the output contains "W4: PASS" (category pages without hreflang=0 AND es-hreflang into a /lang/ subtree=0), AND you committed on branch fix/w4-hreflang (show git log -1 --oneline). Stop after 20 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W5 Titles & meta descriptions (odoo-expertos). Branch: fix/w5-titles-meta.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part A sec 2, Part B). ~1,120 pages have <title> over 65 chars (category titles are 260+ char keyword stuffing); ~192 meta descriptions are templated duplicates ("Guia completa sobre Odoo X con Odoo. Descubre las mejores practicas...").
|
||||
TASK: Write a codemod over all <slug>/index.html: (1) rewrite every <title> to <=60 chars in the page language, pattern "[primary keyword] - [short value] | Odoo Expertos" (derive the keyword from the H1/slug). (2) make every <meta name=description> UNIQUE and useful (derive from the page H1 + first paragraph; no shared template string). (3) set og:locale to match the page language (es_ES/en_US/de_DE/fr_FR/pt_PT/ar_SA).
|
||||
CONSTRAINTS: only edit <title>, meta description, og:locale. Keep them factual; do not invent stats.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W5 and paste the full output.
|
||||
DONE WHEN: the output contains "W5: PASS" (titles>65chars=0 AND duplicate meta descriptions=0), AND you committed on branch fix/w5-titles-meta (show git log -1 --oneline). Stop after 25 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,14 @@
|
||||
GOAL - W5b Truly unique titles + meta descriptions per page (odoo-expertos). Branch: fix/w5b-unique-meta.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: The W5 codemod appended slug+lang as a meta-suffix to dedupe, which produces ugly truncated SERP previews like "...cuando elegir cad - Odoo Vs Sap Hosting 2026 | ES" and still leaves 194 duplicate titles. AI engines and Google reward genuinely-unique, content-derived metadata.
|
||||
TASK: Write ONE codemod (Node or Python) that for every <slug>/index.html:
|
||||
(a) Extracts the page's H1, its first H2, and the first 2 sentences of body prose (skip nav/footer/script/style).
|
||||
(b) Generates a UNIQUE <title> tag of 50-60 characters from {H1-core-phrase} - {value-fragment derived from first H2} | Odoo Expertos. If the produced title would clash with any other page's title, append the most distinctive noun phrase from the first H2.
|
||||
(c) Generates a UNIQUE <meta name="description"> of 140-160 characters from the first 2 sentences, lightly cleaned (no run-on, ends with action verb where natural), in the page's declared language. Do NOT use the slug+lang suffix trick.
|
||||
(d) After rewriting, verify uniqueness corpus-wide: no two pages share a title; no two pages share a meta description.
|
||||
CONSTRAINTS: only edit <title>, <meta name="description">, and (if present) <meta property="og:title"> / <meta property="og:description"> to mirror. Do not touch body content. Preserve language per page.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W5b and paste full output.
|
||||
DONE WHEN: that output contains "W5b: PASS" (duplicate titles=0 AND duplicate metas=0 AND all titles 40-65 chars AND all metas 130-165 chars), AND committed on branch fix/w5b-unique-meta (show git log -1 --oneline). Stop after 25 turns if blocked.
|
||||
|
||||
|
||||
CONCRETE TARGETS: read seo-audit-2026-05-27\OPPORTUNITIES-2026-05-28.md section 3 for the exact content-derived title+meta generator pseudocode and 5 worked examples. Implement that rule (extract H1 + first H2 + first 2 body sentences; skip nav/header/breadcrumb when scanning paragraphs; uniqueness registry across the corpus).
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W6 Internal linking & crawl depth <=3 clicks (odoo-expertos). Branch: fix/w6-internal-links.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part B sec B1). The header/nav is injected client-side by createHeader() (JS), so ~1,163 pages have no nav in static HTML; ~37 articles/lang are orphaned; article bodies have no internal links.
|
||||
TASK: (1) Write a codemod that bakes the header and footer into static HTML in every <slug>/index.html (replace the JS createHeader()/createFooter() injection with the equivalent static <header>/<footer> markup containing real <a> links to /, /odoo/, /odoo-hosting/, /odoo-ia/; keep the mobile-toggle script). (2) Add a static breadcrumb (HTML <a>) + a parent-category link + 3 related-article links to each article page (codemod). (3) Create an HTML sitemap page at mapa-del-sitio/index.html linking all category + article pages, and link it in the footer.
|
||||
CONSTRAINTS: keep visible design; only add static nav/links and the sitemap page.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W6 and paste the full output.
|
||||
DONE WHEN: the output contains "W6: PASS" (createHeader pages=0 AND HTML sitemap exists=True), AND you committed on branch fix/w6-internal-links (show git log -1 --oneline). Stop after 25 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,8 @@
|
||||
GOAL - W7 De-index untranslated/duplicate pages (SUBTRACTIVE) (odoo-expertos). Branch: fix/w7-deindex.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part B B0). Google flags ~103 pages as duplicates (PT/FR untranslated = duplicates of the Spanish original) and 587 crawled-not-indexed. This goal does NOT translate (humans do that later) - it removes the duplicate/thin pages from the index cleanly so they stop dragging the domain down.
|
||||
INPUT LISTS (already in repo): seo-audit-2026-05-27\gsc\duplicate-canonical.txt and seo-audit-2026-05-27\gsc\crawled-not-indexed.txt (URL lists from Search Console).
|
||||
TASK: For each URL in gsc\duplicate-canonical.txt that maps to a local <slug>/index.html: (1) add <meta name="robots" content="noindex,follow"> in its <head>, and (2) remove its <loc> entry from the matching sitemap-*.xml. Do NOT delete the files (keep them for later translation). Do the same for clearly-untranslated non-ES pages you can confirm. Keep ES (root) pages indexable.
|
||||
CONSTRAINTS: only add the noindex meta + remove sitemap entries. Never noindex Spanish root pages or genuinely-translated pages.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W7 and paste the full output.
|
||||
DONE WHEN: the output contains "W7: PASS" (sampled duplicate URLs still-indexable=0), AND you committed on branch fix/w7-deindex (show git log -1 --oneline). Stop after 25 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W8 Homepage rebuild (odoo-expertos). Branch: fix/w8-homepage.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part B B2). The homepage is visually broken: empty dark sections, broken hero D3 viz, run-together H1 words (rendered "ParaRobarte","withOdoo"), and combat/fear hype (H1 "...Robarte Clientes", CTA "DESTRUIR COMPETENCIA AHORA", "CONQUISTA","DESTRUIDOS"), unsourced "280% ROI".
|
||||
TASK (all 6 homepages: index.html, en/ de/ fr/ pt/ ar/ index.html): (1) replace combat/hype copy (remove Robarte/DESTRUIR/DESTRUIDOS/CONQUISTA/DOMINACION and the unsourced "280% ROI") with factual, keyword-led E-E-A-T copy. (2) fix the H1 markup so words have proper spaces (no run-together spans). (3) make hero/section content render without JS (remove opacity:0-until-scroll gating or give a visible default) and fix/remove the broken hero visualization so there are no empty sections. (4) keep/repair Organization JSON-LD.
|
||||
THEN (manual gate, required): capture fresh screenshots with powershell -File seo-audit-2026-05-27\... (use the agent-browser or capture_screenshot script) and describe the rendered desktop+mobile result in your message; the page must look complete and professional (target >=8/10).
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W8 and paste the full output.
|
||||
DONE WHEN: the output contains "W8: PASS" (hype tokens=0) AND you have captured + described a clean screenshot AND committed on branch fix/w8-homepage (show git log -1 --oneline). Stop after 25 turns if blocked and report the FAIL detail.
|
||||
@@ -0,0 +1,7 @@
|
||||
GOAL - W9 Fix 404 sources (odoo-expertos). Branch: fix/w9-404s.
|
||||
Repo: C:\Users\eugen\.cursor\projects\Odoo Expertos\odoo-expertos. Work ONLY in this repo.
|
||||
Context: FULL-AUDIT-REPORT.md (Part B B3) + seo-audit-2026-05-27\gsc\not-found-404.txt. Causes: case-sensitivity (/Odoo-Hosting/ with capital H), wrong category slug (/odoo-ai/ vs the real /odoo-ia/), and linked-but-missing pages (/consultoria-erp, /recursos/guia-aws-odoo.pdf, /mes, /recursos-implementacion-odoo).
|
||||
TASK: In vercel.json add redirects (permanent) so each of the 12 known 404 URLs resolves: lowercase-canonicalize capitalized paths; 301 /odoo-ai/* -> /odoo-ia/* (or vice versa - pick one and be consistent); 301 the missing /consultoria-erp and /recursos-implementacion-odoo to the closest real page (/odoo/); 301 the missing .pdf to a real resource or the hosting category. Where a real page should exist, create it instead of redirecting. Also fix the internal links that point to these dead URLs if you find them.
|
||||
CONSTRAINTS: edit vercel.json (redirects) + any source files containing the dead links. Keep existing redirects intact.
|
||||
PROVE each turn: run powershell -File seo-audit-2026-05-27\REVIEW.ps1 -Only W9 and paste the full output.
|
||||
DONE WHEN: the output contains "W9: PASS" (uncovered 404s=0), AND you committed on branch fix/w9-404s (show git log -1 --oneline). Stop after 15 turns if blocked and report the FAIL detail.
|
||||
Reference in New Issue
Block a user