📝 SEO Fix Summaries (meta descriptions de blogs)
Archivo: agentes/marketing/seo-fix-summaries.ts · Plist: _(ninguno)_ · Horario: Manual / one-shot
Qué hace
Genera con IA la meta description (summary_html) de los artículos del blog que no la tienen, optimizada para Google (150–160 caracteres, persuasiva, con keyword principal, en castellano de España). Recorre los últimos 20 artículos del blog (id 75567464627), salta los que ya tienen summary >50 chars y rellena el resto. Mejora el CTR en SERP de los blogs.
Cómo funciona
1. Carga .env.
2. GET /blogs/75567464627/articles.json?limit=20 (campos id/title/handle/summary_html/body_html).
3. Por artículo sin summary: limpia el body de HTML, toma el primer fragmento (~1500 chars) y lo pasa al binario gemini-cli con un system prompt SEO copywriter.
4. Hace PUT /blogs/.../articles/{id} con summary_html=<p>…</p>. Throttle 800ms.
5. Cuenta blogs corregidos.
Datos/APIs
- Shopify Admin API (
2024-10): blog articles read + PUT. - gemini-cli local para la meta description.
- Vars .env:
SHOPIFY_STORE,SHOPIFY_ACCESS_TOKEN. - Constante en código: blog id
75567464627.
Cómo probarlo
cd /Users/user/rifai-agents && npx tsx agentes/marketing/seo-fix-summaries.ts
Espera: por artículo ⏭ (ya tiene summary) o ✅ con la meta description generada, y "N blogs con meta description SEO añadida". Escribe en los artículos reales del blog.
Si se rompe / recuperar
- Sin plist (acción puntual). El blog id está hardcodeado (
75567464627); si cambia el blog hay que actualizarlo. - Si
gemini-clifalla en un artículo, lo salta y sigue. - Logs: stdout (redirigir a
/Users/user/rifai-agents/logs/seo-fix-summaries.log).
Cómo replicarlo
- Lectura de artículos del blog + filtro por summary existente.
- LLM local con system prompt "meta description 150–160 chars".
- PUT de
summary_html. Procesa solo 20 artículos por simplicidad.