01 / REVIEW BEFORE PUBLISH

Why SEO automation belongs in pull requests, not live databases

When an SEO plugin or cloud automation tool writes directly to a live website, every mistake is immediately public—and immediately visible to Googlebot. A hallucinated statistic, a broken YAML frontmatter quote that crashes a build, or a rewritten title that misses the point of a product page goes straight to production.

Routing SEO changes through GitHub pull requests solves three structural problems at once:

02 / WHAT THE WORKFLOW PRODUCES

Three concrete SEO actions—grounded in your site’s own evidence

An AI SEO content workflow should never generate articles in a vacuum. In Searchbop, repository proposals are triggered either from your direct conversation in chat or from the scheduled daily pipeline, and fall into three specific categories:

03 / MONOREPO & SCHEMA SAFETY

How Searchbop safely handles Markdown blogs in monorepos

Modern engineering teams rarely keep a blog in a flat root folder. A typical Turborepo or pnpm workspace might host marketing docs in apps/site, the main web app in apps/web/content/blog, and a sub-brand in apps/docs/pages. If an SEO tool guesses file paths blindly, it will commit files to the wrong package or invent frontmatter keys your parser rejects.

Before drafting or editing a single line, Searchbop’s repository adapter performs four safety checks:

  1. Explicit path and URL pattern mapping: Each site workspace configures its exact contentDir (for example, apps/web/content/blog), publicDir (such as apps/web/public for llms.txt or IndexNow keys), file format (md or mdx), and urlPattern (for example, /blog/{slug}).
  2. Frontmatter schema sampling: Instead of assuming every blog uses title, date, and description, the pipeline reads existing posts in your contentDir to mirror your actual YAML keys (such as publishedAt, summary, category, or author), quoting style, and heading hierarchy.
  3. Verified internal link injection: Generic AI writers invent plausible-sounding URLs like /blog/seo-guide that return 404 on your site. Searchbop passes the actual list of crawled, live 200 OK URLs and titles from your site audit into the drafting context, so internal links only point to pages that genuinely exist.
  4. Scoped technical code fixes: When you ask Searchbop to fix a missing canonical tag, JSON-LD block, or robots.ts rule in a Next.js repository, the code-fix sheet isolates the exact route file (such as apps/web/app/layout.tsx) and requires explicit approval before opening a PR.
04 / INSIDE THE DIFF

What a proposed change looks like before you approve it

Whether you initiate a draft from the interactive workspace or inspect a queued opportunity, you always see the target file path, the unified diff, and the reasoning behind the edit:

PROPOSED PULL REQUEST DIFFapps/web/content/blog/nextjs-sitemap-indexing.mdx
--- a/apps/web/content/blog/nextjs-sitemap-indexing.mdx
+++ b/apps/web/content/blog/nextjs-sitemap-indexing.mdx
@@ -1,7 +1,7 @@
 ---
-title: "Sitemaps in Next.js: A Complete Overview for Developers"
-description: "Learn how sitemaps work in Next.js applications."
+title: "Next.js Sitemap Not Indexed? 6 Checks for App Router (2026)"
+description: "Fix 'Sitemap could not be read' and unindexed URLs in Next.js App Router: trailing slashes, canonical mismatches, and dynamic route lastmod dates."
 publishedAt: "2026-09-14"
-updatedAt: "2026-09-14"
+updatedAt: "2026-11-02"
 category: "Technical SEO"
 ---
05 / HUMAN-IN-THE-LOOP CONTROLS

Choose how much autonomy each site workspace gets

Not every site in your workspace needs the same publishing rules. A personal content site might welcome daily pull requests, while a client’s production application might require strictly read-only diagnostics. Each site in Searchbop has an independent mode setting and weekly rate limits (maxOptimizationsPerRun and maxNewPostsPerWeek):

Workspace Mode What Happens During a Run Repository Impact Best For
Report Only (report) Crawls pages, syncs Search Console/Bing data, and logs prioritized opportunities locally. Zero repository writes. Default mode for newly split subdomains. Client audits, non-Git sites, or teams that edit code manually.
Pull Request (pr) Prepares meta rewrites, content refreshes, and new Markdown drafts on a branch and opens a GitHub PR. Opens a reviewable PR; nothing reaches production until you merge on GitHub. Solo founders, engineering teams, and Markdown/Next.js blogs.
Auto-Merge Meta (auto) Can merge low-risk frontmatter title/description optimizations within your configured cap while keeping larger changes reviewable. Commits within your configured folder and rate limits. High-volume content portfolios where you own the deployment pipeline.

Honest boundaries & Google’s AI content policy

Quality over volume: Google’s Search Essentials explicitly warn against scaled content abuse—generating large numbers of unreviewed, low-value pages simply to manipulate search rankings. Searchbop is designed around capped, evidence-backed drafts where you supply your own brief, review the diff, verify factual claims, and merge through GitHub.

Stack compatibility: Automated content and code pull requests work with Markdown/MDX and Next.js repositories hosted on GitHub (or local Git folders). Searchbop does not write directly into hosted WordPress, Shopify, or Webflow databases—though you can still audit any public website and its Search Console data in Report-Only mode. Reference: Google Search Guidance on AI-Generated Content.

Research context & topics covered on this page Content Workflow · P0

Cluster & intent: content-workflow (Commercial · P0) · Planned URL: /features/seo-content-workflow/

Topics addressed: SEO automation, SEO content optimization tool, AI SEO content workflow, GitHub SEO automation, AI article writer for Markdown.

Primary documentation source: Google Search Central — Using Generative AI Content.