This commit is contained in:
oliver
2026-08-28 10:11:11 -03:00
parent f533ff8e36
commit 585951c8ce
1380 changed files with 1540268 additions and 0 deletions
+76
View File
@@ -0,0 +1,76 @@
# BLOG-PIPELINE.md - per-article workflow for W12 & W13 (claude-blog full pipeline + kie.ai z-image)
Driven by seo-audit-2026-05-27\goals\MASTER-SEO-75.txt.
## Foundation (run ONCE before any article)
1. `/blog brand init` -> BRAND.md + VOICE.md at repo root (autoloads into every subskill).
2. `/blog persona create "Equipo Odoo Expertos"` -> personas/equipo-odoo-expertos.md (REPLACES every "Dr. Maria Elena Rodriguez").
3. `/blog flow sync` -> FLOW framework prompts cached locally for downstream skills.
4. `/blog strategy "odoo erp consulting LATAM"` -> strategy doc; informs cluster + persona angles.
## IMAGE GENERATION POLICY (overrides /blog image default; z-image ONLY)
**Pre-flight (run ONCE in Phase 0, BEFORE any article):**
```
powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Prompt "abstract data visualization, blue gradient, no text" -OutPath "seo-audit-2026-05-27\scripts\.zimage-probe.png" -Model z-image -Aspect 16:9 -Resolution 1K
```
If this FAILS, abort the goal with status "z-image unavailable on this kie.ai account — fix model access before proceeding". NO fallback to other models.
**Per article: generate >=3 images via z-image only.**
1. Hero/OG (16:9, 2K) -> `images/<slug>-hero.png`
2. Inline mid-body (16:9 or 4:3, 1K) -> `images/<slug>-fig1.png`
3. Inline end (16:9 or 4:3, 1K) -> `images/<slug>-fig2.png`
**Prompt rules (HARD):**
- Every prompt MUST end with: ", NO text, NO letters, NO numbers, NO logos, NO watermarks."
- Editorial illustration aesthetic, neutral palette, clean enterprise feel, no stock-photo cliches.
- Distinct subject per image (hero = topic metaphor; fig1 = mechanism/architecture motif; fig2 = outcome/comparison motif).
**Insertion:**
- Set `<meta property="og:image" content="https://www.odoo-expertos.com/images/<slug>-hero.png">` and add `<link rel="preload" as="image" href="/images/<slug>-hero.png">` in <head>.
- Place fig1 after the 2nd H2, fig2 after the 4th H2. Both `<img>` tags need unique `alt=""` descriptions derived from the surrounding H2 + body.
- Add ImageObject schema for the hero (and fig1/fig2 if relevant) inside the Article JSON-LD.
Helper: `powershell -File seo-audit-2026-05-27\scripts\kie-image.ps1 -Prompt "<prompt>" -OutPath "images/<slug>-<role>.png" -Model z-image -Aspect 16:9 -Resolution 2K`
## Per-article (run for EVERY URL in OPPORTUNITIES sec 1 and sec 2)
For each article slug like `odoo-hosting/odoo-vs-sap-hosting-2026/index.html`:
1. **Research** - `/blog discourse "<topic phrase>"` -> DISCOURSE.md with last-30-days sources, debates, gaps. If a Google AI / NotebookLM key is configured, also `/blog notebooklm "<question>"`.
2. **Flow framing** - `/blog flow find "<topic phrase>"` -> pick the strongest FLOW prompt for this article. `/blog flow optimize` to refine.
3. **Brief** - `/blog brief "<topic phrase>"` -> audience, intent, angle, key entities, SERP context.
4. **Outline** - `/blog outline "<topic phrase>"` -> SERP-informed H2/H3 skeleton.
5. **Rewrite** - `/blog rewrite <relative-path>` using BRAND.md + VOICE.md + persona + FLOW + blog-rewrite humanized cadence. HARD CONSTRAINTS to state in the rewrite request:
- Preserve <head> EXCEPT add ONE marker (W12-deep-rewrite or W13-ai-search) + the og:image/preload set by step 8.
- Preserve hreflang, canonical, OG, header/footer/nav, breadcrumb (W6), ALL D3.js <script> refs.
- Replace every "Maria Elena Rodriguez" with "Equipo Odoo Expertos" (visible byline + Article schema author + Person @id).
- W12: >=1,200 unique body words, direct-answer 60-150w opening, 4-6 question-led H2s.
- W13: deepen with 8+ FAQ Q&A, HTML comparison <table>, per-claim source URLs.
6. **Fact-check** - `/blog factcheck <path>` -> the skill actively fetches and verifies source URLs. Must show 0 unverified numeric claims. On FAIL: drop the number or add a source via `/blog discourse`, re-run.
7. **SEO check** - `/blog seo-check <path>` -> title length, meta, schema validity, internal links, image alts. Must pass.
8. **Image** - generate hero/OG image via the helper above; update og:image and add the preload link. Add `alt="..."` to any new <img>.
9. **Schema** - `/blog schema <path>` -> regenerate Article + FAQPage JSON-LD reflecting actual H2 questions; ImageObject for the new hero image.
10. **GEO gate** - `/blog geo <path>` -> AI-citation readiness audit. Must show direct-answer-first opening, question-led H2s, FAQ schema present, sourced stats. Address top findings if any.
11. **Quality gate** - `/blog analyze <path>` -> 0-100 score. Must be >=80. If <80, address top 3 Critical/High findings and re-run.
12. **Commit** - `git add <path> images/<slug>-hero.png; git commit -m "fix(<W#>): rewrite <slug> via blog pipeline (analyze=<score>, geo=<score>)"`.
## Stop conditions per article
- If `/blog analyze` stays <80 after 3 retries OR `/blog geo` stays FAIL after 3 retries -> log slug + lowest categories to seo-audit-2026-05-27\BLOG-FAILURES.md and skip. Do not block the master.
- If `/blog factcheck` cannot source a claim after 2 retries -> remove the unsourced claim. NEVER fabricate.
## After all articles in a cluster
- `/blog cluster plan "<seed>"` (if not already done in master Phase 2).
- `/blog cluster execute "<seed>"` -> applies internal pillar<->spoke links.
## After all clusters
- `/blog taxonomy sync` -> aligns tag/category slugs to the cluster plan.
- `/blog cannibalization .` -> re-sweep. Resolve any 301 flags (e.g., the 2025/2026 mejores-proveedores collision per OPPORTUNITIES sec 5).
- `/blog locale-audit .` -> hreflang/parity/freshness across the 6 languages. Pages noindexed by W7 are expected to show parity gaps; that is fine.
## Post-deploy (after main is live on Vercel)
- `/blog google psi https://www.odoo-expertos.com/` -> CWV lab.
- `/blog google crux https://www.odoo-expertos.com/` -> CWV field (if available).
- `/blog google gsc submit` -> resubmit each sitemap; "Validate Fix" on coverage issues if the skill supports.
- `/blog google ga4` -> baseline organic traffic (only if creds configured).
- `/blog audit .` -> post-deploy site health. Target: 0 Critical.
- `/blog calendar` -> generate forward editorial plan for the surviving thin pages so iteration is structured.
- `/blog repurpose <pillar-path>` -> extend Cluster A/B/C pillars to social/email snippets (non-gating output).