Install
openclaw skills install seo-geo-workflow-for-clawliteUse when Ray asks about the OpenClaw SEO-GEO Workflow, ClawLite/OpenClaw daily SEO/GEO workflow, Hunter/Tony/Peter blog production, daily blog factory delivery, source publish readiness, live publish QA, SEO/GEO patrol, ranking/indexing/GA4/DataForSEO blockers, or why a blog/workflow did not publish.
openclaw skills install seo-geo-workflow-for-clawliteThis is the controlling runbook for Ray's OpenClaw SEO-GEO daily workflow. It coordinates Hunter discovery, Tony content production, the 12-post SEO/GEO factory, Peter publish/build/live QA, and daily SEO patrol for ClawLite/OpenClaw marketing.
Use this skill as the first stop. Do not invent a parallel workflow. The source of truth is the deterministic scripts and receipts under /Users/m1/.openclaw/workspace.
STAGED_LOCAL, Peter local build success, and source publish are not live deployment.SKIPPED, NEEDS_DATA, or PASS_WITH_WARNINGS, not silent success./Users/m1/Projects/clawlite project take over clawlite.ai production aliases unless Ray explicitly asks./Users/m1/Projects/clawlite/content/blog from chat-triggered workflow runs unless Ray explicitly asks for main-site local apply and the command uses --allow-main-site-write.Run from /Users/m1/.openclaw/workspace.
Full daily workflow, recommended default:
node scripts/run-hunter-tony-seo-geo-workflow.mjs --date YYYY-MM-DD
Factory-only workflow:
node scripts/run-daily-seo-geo-blog-factory.mjs --date YYYY-MM-DD
Safe full workflow with no live deploy:
node scripts/run-hunter-tony-seo-geo-workflow.mjs \
--date YYYY-MM-DD \
--peter-skip-live-deploy \
--peter-skip-live-qa
Protected main-site local apply requires an explicit override. Do not add this flag unless Ray asked to modify the main ClawLite repo:
node scripts/run-clawlite-publish-apply.mjs \
--date YYYY-MM-DD \
--allow-main-site-write
Live deploy path requires explicit evidence:
node scripts/run-hunter-tony-seo-geo-workflow.mjs \
--date YYYY-MM-DD \
--peter-allow-live-deploy \
--peter-deploy-command "npm exec -- vercel deploy --prod --prebuilt" \
--peter-deploy-evidence-path /path/to/deploy-evidence.json \
--peter-live-qa-base-url https://clawlite.ai
Environment equivalents:
CLAWLITE_PETER_DEPLOY_COMMANDCLAWLITE_PETER_DEPLOY_EVIDENCE_PATHCLAWLITE_PETER_SKIP_LIVE_DEPLOY=1OPENCLAW_SEO_PATROL_MODE=liveDATAFORSEO_B64llms.txt, GA4, canonical/cannibalization, locale paths, and rescue signals.Every generated article should have receipts for:
keyword-research, competitor-analysis, serp-analysis, content-gap-analysisseo-content-writer, geo-content-optimizer, meta-tags-optimizer, schema-markup-generatoron-page-seo-auditor, technical-seo-checker, internal-linking-optimizer, content-refresherrank-tracker, backlink-analyzer, performance-reporter, alert-managercontent-quality-auditor, domain-authority-auditor, entity-optimizer, memory-managementMonitor receipts may be NEEDS_DATA until live URLs, rank provider data, analytics, and backlink data exist.
Core daily receipts:
mission-control/data/runner/hunter-tony-seo-geo-YYYY-MM-DD.jsonmission-control/data/runner/hunter-daily-topic-delivery-YYYY-MM-DD.jsonmission-control/data/runner/clawlite-publish-apply-build-YYYY-MM-DD.jsonmission-control/data/content-delivery/hunter-daily-topic-radar-raw-YYYY-MM-DD.jsonmission-control/data/content-delivery/hunter-daily-topics-YYYY-MM-DD.jsonmission-control/data/content-delivery/tony-keyword-brief-YYYY-MM-DD.jsonmission-control/data/content-delivery/tony-content-quality-audit-YYYY-MM-DD.jsonmission-control/data/content-delivery/tony-blog-preflight-YYYY-MM-DD.jsonmission-control/data/content-delivery/tony-blog-source-publish-YYYY-MM-DD.jsonmission-control/data/peter/peter-blog-closeout-verify-YYYY-MM-DD.jsonmission-control/data/peter/peter-live-publish-qa-YYYY-MM-DD.jsonmission-control/data/seo-patrol/gr-seo-patrol-YYYY-MM-DD.jsonmission-control/data/seo-patrol/gr-seo-patrol-YYYY-MM-DD.mdDaily package outputs:
delivery/seo-geo/YYYY-MM-DD/manifest.mddelivery/seo-geo/YYYY-MM-DD/manifest.jsondelivery/seo-geo/YYYY-MM-DD/blogs/delivery/seo-geo/YYYY-MM-DD/metadata/delivery/seo-geo/YYYY-MM-DD/audits/delivery/seo-geo/YYYY-MM-DD/skills/<phase>/<skill>/delivery/seo-geo/YYYY-MM-DD/repairs/delivery/seo-geo/YYYY-MM-DD/publish/clawlite-content/synthadoc/wiki/*hunter-daily-topic*mission-control/data/runner/hunter-tony-seo-geo-YYYY-MM-DD.json.delivery/seo-geo/YYYY-MM-DD/manifest.md and manifest.json before judging article readiness.repairSummary, skillPipeline, publishQueue, deploy, patrol, and Peter closeout.humanReviewRequired > 0, inspect repairs/ and failed skill receipts before editing.peter-live-publish-qa.READY: publish-queue eligible.BLOCKED: at least one blocking gate failed.PASS: a required step completed successfully.FAIL: a blocking step failed and needs repair or human review.NEEDS_DATA: non-blocking monitor step is waiting for live URL or connector data.PASS_WITH_WARNINGS: delivery may continue, but connector data or non-blocking checks are missing.STAGED_LOCAL: source files or local repo changes were prepared; production publication is not proven.SKIPPED: a step intentionally did not run and must include a reason.An article can enter publish queue only when:
PASSPASS90NOT_NEEDED or REPAIREDFAILIf a blocking gate fails:
BLOCKED.delivery/seo-geo/YYYY-MM-DD/repairs/<article>.json.PASS and score >= 90.FAIL with humanReviewRequired: true.Check in order:
mission-control/data/runner/hunter-tony-seo-geo-YYYY-MM-DD.jsondelivery/seo-geo/YYYY-MM-DD/manifest.mdmission-control/data/runner/clawlite-publish-apply-build-YYYY-MM-DD.jsonmission-control/data/peter/peter-blog-closeout-verify-YYYY-MM-DD.jsonmission-control/data/peter/peter-live-publish-qa-YYYY-MM-DD.jsonReport the exact stage: Hunter, Tony, Factory, Peter local apply/build, live deploy, live QA, or patrol.
Check delivery/seo-geo/YYYY-MM-DD/skills/ and manifest.json. The expected skill family is seo-geo-claude-skills, with article-level receipts for the phase matrix. Do not answer from memory.
Check:
/Users/m1/.openclaw/logs/*.loglaunchd/ai.openclaw.daily-seo-geo-blog-factory.plistmission-control/data/runner/If a chat-triggered task timed out, use the receipts to determine whether work completed after the chat reply failed.
Known examples:
GA4_TAG_MISSING: Peter/build/live site issue. Verify built layout and live HTML.DATAFORSEO_B64_MISSING: connector/env issue. Configure env/Keychain before rank/index checks can be complete./en/, /ja/, /ko/ 404 or redirect warnings: usually non-blocking unless Ray wants locale pages live.If clawlite.ai shows old Mission Control or /mission-control unexpectedly returns 200, suspect the legacy Vercel project clawlite reclaimed the alias. Restore to the verified safe ClawLite main deployment before claiming live success.
Every daily run should produce a gr-seo-patrol receipt. Patrol checks include SERP rank diff when DATAFORSEO_B64 exists, Google index count when supported, llms.txt, GA4, canonical/cannibalization, rescue signals, rank-tracking slots, and redirect-aware locale checks.
ray-tony-seo-geo: use for single-article Tony keyword/content/audit/source-publish work.gr-seo-patrol: use for focused patrol/rescue work./Users/m1/seo-geo-claude-skills: upstream SEO/GEO phase skill library.references/clawlite-seo-geo-workflow.md: workflow reference notes.