The Pipeline

Walk every site from first copy to final delivery through a structured 9-step process.

Overview

The Pipeline Panel occupies the bottom half of the main window. Each row represents one lead — a business whose site you copied during Lead Evaluation. Every row shows the business name, URL links, and a cell for each of the 9 pipeline steps.

Steps run independently per lead. You can have multiple leads at different stages simultaneously.

The 9 Pipeline Steps

#StepTriggerWhat Happens
1DemoManualAI (Claude or Gemini) rebuilds the original downloaded site into a modern static site (HTML5 + CSS + GSAP). Opens a new terminal window where the AI works autonomously.
2Copy Check 1ManualPlaywright opens the built demo site images in Google Lens to check for stock photos. Results are shown in a popup.
3Host DemoManualThe built site in edited_sites/<slug>/ is deployed to Cloudflare Pages at <slug>.demos.yourdomain.net. Any .md files in the folder are encrypted and published to the shared client-docs viewer.
4Cold CallManualAI scrapes the original business website to extract phone numbers, email addresses, and social media links. Results shown in a popup and cached.
5Form / ImplementManualYou select a .txt file containing the client's form response. The AI reads it and applies the requested revisions. A site backup is automatically created after completion.
6Copy Check 2ManualSecond stock photo audit after any client-requested image changes.
IterateManualSend further .txt revision instructions to the AI. Available after Form completes. Tracks revision count (v1, v2, …). Not a formal pipeline step — it re-triggers the Form flow.
7Final HostingManualPublishes the approved site to the client's real Cloudflare domain (apex + www). Verifies the domain is a zone on your account, deploys to a <slug>-live project, and refuses to overwrite existing records unless you re-run to force.
8EmailManualProvisions a contact@<domain> mailbox on Purelymail and writes the MX / SPF / DKIM / DMARC / ownership DNS into the domain's Cloudflare zone. Requires PURELYMAIL_API_TOKEN.
9SEOManualOpens a full multi-tab SEO suite (technical, local, AI/GEO, performance, keywords, report). The Enhancement tab can loop AI enhancement until all four categories score 100%.

Step Status Indicators

Each step cell shows a color-coded status:

StatusColorMeaning
Not StartedGreyStep has not been started yet.
In ProgressAmberStep is currently running (AI terminal open, deploy in progress, etc.).
CompleteGreenStep completed successfully.
FailedRedStep encountered an error. You can retry it.

Running the Demo Step

Click the Demo cell on any pipeline row to start. A dialog asks which AI model to use (defaulting to your Settings choice). Clicking OK does the following:

Prompt is constructed

The app assembles a detailed prompt containing the downloaded site's file structure, any example sites in the same niche, and your instructions for the AI.

Prompt saved to temp file

The prompt is written to a temporary .txt file in data/temp/ to avoid Windows command-length limits.

New terminal opens

A new PowerShell window opens, changes directory to edited_sites/<slug>/, and runs claude --dangerously-skip-permissions --model <model> --effort <effort> $task.

AI works autonomously

Claude builds a complete static site in the site folder. This typically takes 3–10 minutes. You can watch progress in the terminal. The step turns green automatically when the terminal closes.

ℹ️

You can start Demo on multiple leads simultaneously — each gets its own terminal window. The pipeline tracks them independently.

Running the Host Demo Step

After the Demo step is green, click Host Demo. This runs deploy-demo.ps1 silently in the background (no visible terminal). The step shows "deploying…" and turns green when the site is live. The demo URL (slug.demos.yourdomain.net) appears as a clickable link in the pipeline row.

Running the Cold Call Step

Click Cold Call after the demo is hosted. The AI scrapes the business's original website and returns structured contact information in a popup. Each contact entry shows:

Running the Form / Implement Step

After the client has reviewed the demo and sent feedback (typically via a Google Form), click Form. A file picker opens — select a .txt file containing the client's response. The AI opens the edited site and applies the changes. A new terminal opens and Claude makes the revisions autonomously. When the terminal closes, a backup of the current site is automatically created at Site Backups/<slug>/Edition N/.

Iterate

The ITERATE cell (positioned between Copy Check 2 and Final Hosting) unlocks after the Form step completes. Click Reiterate to send a further .txt revision file to the AI — this re-runs the Form flow with the new instructions and auto-increments the version counter shown in the cell (v1, v2, …). Each reiterate also triggers a new site backup.

SEO Audit

Click SEO to open the SEO audit window. It scores the built site across four categories — Technical, Local SEO, AI/GEO readiness, and Performance — and the Enhancement tab's Enhance to 100% (loop) button repeats AI enhancement and re-audits until every category reaches 100% (capped by SEO_MAX_ITERATIONS). Example on-page checks include:

CheckPass Criteria
Title tag length30–60 characters
Meta description length70–160 characters
H1 countExactly one per page
H2 presenceAt least one on pages with significant content
Image alt textAll <img> tags must have non-empty alt
Word countAt least 100 words on main content pages

Row Actions

Each pipeline row has controls on the right side of Row 1:

ControlAction
NOTES cellOpens a free-text note popup for this lead. The cell highlights blue when a note has been written.
📁 buttonOpens edited_sites/<slug>/ in Windows Explorer.
Remove buttonRemoves the row from the pipeline. Files on disk are kept.
Delete buttonPermanently removes the row and deletes edited_sites/<slug>/, downloaded_sites/<slug>/, and Site Backups/<slug>/ from disk. Shows a confirmation dialog listing all folders to be deleted.

Row 2 shows three clickable URL labels: Original (the original business site), Demo (the Cloudflare Pages demo URL, filled after Host Demo), and Final (the client's permanent domain, filled after Final Hosting).