Rules & Prompts Engine
31 enabled rules. Editing is done via MCP (update_rule).
| Category | Name | Type | Prompt | Validator |
|---|---|---|---|---|
| competitor | No banned competitors | both | Never mention CTV ad-platform competitors (MNTN, Vibe, Creatify, tvScientific, Simpli.fi, Simulmedia) except on dedicate | function |
| voice | No emdashes | both | NEVER use emdashes (—). Replace with commas, parentheses, colons, or separate sentences. | function |
| voice | Avoid AI telltale words | both | Avoid AI telltale words: delve, landscape, leverage, robust, seamless, utilize, myriad, realm, embark, paradigm, compreh | function |
| quality | Cite all statistics | prompt_instruction | Every market size, percentage, projection, and expert quote MUST have a verifiable linked source (eMarketer, Nielsen, IA | none |
| boundary | Outrank boundary | prompt_instruction | Paid advertising (TV/CTV, Google/Meta/YouTube/Reddit Ads, programmatic, ad costs, industry advertising guides, competito | none |
| seo | Primary keyword in title | both | Include the primary keyword in the title within the first 60 characters. | function |
| voice | Use contractions | both | Always use contractions (you'll, it's, here's) instead of full forms (you will, it is, here is). | function |
| ai_extractability | Answer first | both | State the direct answer or core thesis in the opening paragraphs (before the first H2), naming the primary topic explici | function |
| seo | Minimum internal links | both | Include at least 3-5 internal links with descriptive anchor text. Verify every internal link exists in the sitemap. Neve | function |
| quality | FAQ section required | both | Every article must include a "Common questions answered" FAQ section with 4-6 prose answers, placed near the end before | function |
| ai_extractability | Self-contained sections | both | Open every H2/H3 section by restating its subject; never start a section with 'This', 'It', 'These', or 'As mentioned'. | function |
| voice | Speak directly to the reader | prompt_instruction | Speak directly to "you" (the reader), not "businesses" or "marketers". | none |
| seo | Answer-first sections (GEO) | both | Open every H2 section with a direct, self-contained 40-60 word answer to the question the heading implies, BEFORE any li | function |
| quality | Author assigned | validation_check | function | |
| ai_extractability | Descriptive headings | both | Write H2 headings a searcher could have typed (descriptive or question-shaped), not single-word labels like 'Overview' o | function |
| ai_extractability | Front-load evidence | both | Include at least one concrete statistic, figure, or cited source in the first 300 words. Citations, quotations, and stat | function |
| ai_clarity | Audience-affirming specificity | prompt_instruction | Name explicitly who each piece (and each recommendation within it) is for: role, business size, and situation. Where an | none |
| seo | Industry pages need taxonomy | validation_check | function | |
| seo | Title length 50-60 | both | Keep the SEO title between 50-60 characters; front-load keywords. | function |
| ai_clarity | Use audience language | prompt_instruction | Write in the audience's own vocabulary (the problems they name, the category words they search), not only the brand's in | none |
| formatting | Wrap tables in placeholders | prompt_instruction | Markdown tables cannot go directly into Contentful RichText. Wrap every table in <!-- TABLE: id --> ... <!-- /TABLE --> | none |
| images | Minimum 4 images | both | Every article needs at least 4 images (1 hero + 3 body) in the digital-scrapbook style using only the brand palette (nav | function |
| seo | SEO description under 160 | both | Write a meta/SEO description within 150-155 characters including the primary keyword. | function |
| voice | Acknowledge reality before solutions | prompt_instruction | Acknowledge reality before offering solutions, e.g. "TV advertising used to be expensive. The good news? That's changed. | none |
| product | Adwave mention cadence | both | Mention Adwave 2-3 times naturally, positioned as one option (not the only one). Pricing: "from $50" / "starting at $50" | function |
| seo | Short description present | both | Provide a 1-2 sentence shortDescription (~150-180 chars), specific and benefit-oriented. | function |
| formatting | Word count by type | validation_check | function | |
| seo | Question-style headings (GEO) | prompt_instruction | Where it reads naturally, phrase H2/H3 headings as the questions searchers actually ask ("What does TV advertising cost? | none |
| seo | Year-dated title for evergreen types | both | For Guides, Comparison/Best-X, and Statistics posts, place the current year at the END of the title in parentheses, e.g. | function |
| seo | Direct quotes in long-form (GEO) | both | In long-form content (1,500+ words), include at least one direct, attributed quote from a named source (an expert, a stu | function |
| formatting | No manual table of contents | both | Do NOT include a manual table of contents; TOCs are auto-generated from headings. | function |