Step 1
Discovery and monitoring run first
Scripts like skills/seo-agent/scripts/seo-discover.sh and the monitoring jobs pull rankings, strike-zone keywords, and
client performance data.
SEO Operating System
System View
What you are seeing is not one single process. It is the combined output of discovery, monitoring, content generation, quality checks, review queue building, workflow decisions, Git sync, and Cloudflare deployment.
Step 1
Scripts like skills/seo-agent/scripts/seo-discover.sh and the monitoring jobs pull rankings, strike-zone keywords, and
client performance data.
Step 2
bin/build-opportunities.py turns raw discovery, monitoring, and gap data into one canonical opportunity list per client.
Step 3
bin/build-action-queue.py picks the next best tasks from those opportunities so the team is not just looking at raw SEO data.
Step 4
The content pipeline and service-page pipeline generate or refresh drafts, then normalize them into usable article files.
Step 5
bin/check-content-quality.py gives each draft a review state like editor review, strategist review, or ready to publish.
Step 6
The cross-client dashboards are built from per-client queue files. The UI does not invent the data; it reads from those generated artifacts.
Dashboard Mapping
A merged operating layer. It combines review queue items and action queue items, then overlays human decisions like owner, status, and irrelevant.
Only review queue items. This is content status across all clients, grouped by publish stage.
The selected client’s review queue plus their ranked action queue. This is the best place to understand one account in isolation.
The SEO opportunity backlog across the portfolio. This is driven by action-queue data, not by article review status.
Feedback Loop
Assigns the work to Pamela, Ravel, Shastine, or JM so the board becomes role-based instead of just status-based.
Changes whether the task is in triage, SEO review, in progress, blocked, or ready to publish.
Hides weak tasks from the active board so the system stops resurfacing items you already know are bad fits.
Stores the human reason behind a decision so later you can see why something was approved, blocked, or rejected.
Common Issue
SEO opportunities, content review states, and workflow decisions are different layers. If the dashboard does not explain that, it feels like mixed signals.
If discovery, action queues, or review queues have not been rebuilt recently, the dashboard may be accurately showing outdated pipeline output.
If the workflow database is not configured, the board can display tasks but cannot persist decisions, which makes it feel fake.
Before this page existed, the UI mostly showed status snapshots. That made it harder to understand the actual sequence of work underneath.