Initial commit: SEO rule engine, auditor, validator, exceptions, mirror

Versioning ~/seo-tools as critical SEO infrastructure (was home-dir only).
Canonical home of seo_rules.py — ResearchOwl will vendor a copy with a CI diff
guard against this repo. No secrets; Ghost access is via the ghst-en wrapper.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ChemaVX
2026-06-24 08:01:44 +00:00
co-authored by Claude Opus 4.8
commit beae7c154a
9 changed files with 844 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
# seo-tools
SEO rule engine + tooling for the Ghost blogs (EN: theexclusionzone.com).
- `seo_rules.py` — shared rule engine (pure functions, no I/O). Single source of truth
for thresholds + checks. Consumed by the auditor, the validator, and (vendored) by
ResearchOwl's blog pipeline.
- `seo_audit.py` — Tool A: site-wide auditor (reads all published posts via `ghst-en`).
- `seo_validate.py` — Tool C: single-post pre-publish validator (`seo-check` wraps this).
- `seo_exceptions.py` — documented, consciously-accepted waivers (auditor reporting filter).
- `seo_mirror.py` — OG/Twitter mirroring helper.
- `phase2_*.py/json` — one-off batch helpers (kept for provenance).
No secrets live here. Ghost access is via the `ghst-en` wrapper (`~/.local/bin`), which
fetches a staff token on demand from the pod and never writes it to disk.