> ## Documentation Index
> Fetch the complete documentation index at: https://docs.open.cx/llms.txt
> Use this file to discover all available pages before exploring further.

# Content rules

> Write quality rules in plain language — OpenCX checks every article on save or publish and can block publish when a must-rule fails.

**Content rules** enforce quality on Help Center articles. Write each rule in plain English and OpenCX runs every article through them, either on save, on publish, or both. A rule with **must** severity can block publish when it fails; **should** rules warn but let the article ship.

<Tip>
  Manage rules at [**Help Center → Settings → Content Rules**](https://platform.open.cx/help-center).
</Tip>

## What a rule looks like

Every rule has three fields:

| Field           | What it controls                                                                                                                                                                  |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Applies to**  | `Main article` (checked during content-check runs) or `Translation` (injected into the AI's translation prompt so translations follow the rule by construction).                  |
| **Severity**    | One of `must`, `should`, `must not`, `should not`. `must`/`must not` can block publish when the **On publish** setting is **Block**; `should`/`should not` only surface warnings. |
| **Instruction** | The rule itself, written in plain language. Max 500 characters.                                                                                                                   |

### Examples

```
Applies to: Main article
Severity:   must
Instruction: Every article starts with a 1-2 sentence TL;DR under the title.
```

```
Applies to: Main article
Severity:   should not
Instruction: Avoid exclamation points and emoji in body copy.
```

```
Applies to: Translation
Severity:   must
Instruction: Keep product names (OpenCX, Autopilot, Assist Mode) in English in every language.
```

## When rules run

The **Automation** card on the Content Rules page controls when checks fire. Pick the combination that matches how your team ships content.

| Setting                | What it does                                                                                                                                                                                               |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Auto-check on edit** | Re-runs all Main-article rules every time you save a draft. Surfaces violations inline so you can fix them before publish. Off by default.                                                                 |
| **Throttle**           | Debounce for auto-checks, 5 to 300 seconds. Saves while you're typing collapse into one check run. Default 30 seconds.                                                                                     |
| **On publish**         | What happens when you hit **Publish** on an article that fails a `must` rule: `Disabled` (no check), `Warn` (shows the violation, allows publish), `Block` (rejects publish until the `must` rule passes). |

A `should`/`should not` violation always surfaces as a warning — it never blocks, no matter what the **On publish** setting says.

## Manual runs

Run a check on demand from the article editor — **Run content check** in the editor menu. The panel shows every rule, pass/fail, and the AI's reasoning per violation. Use this before bulk-publishing imported content or when tuning a new rule.

## Tune rules that fire too often

If a `should` rule flags valid articles constantly, the rule is probably too broad. A few patterns that work:

* **Anchor to a structural signal** — "The first heading under the title is a `##` heading" beats "Articles are well-structured".
* **Give an example** — `Instruction: "Every screenshot has a caption below it (example: 'Figure 1: the sidebar with categories expanded')"`.
* **Scope with applies-to** — a rule that belongs only to translations should target `Translation`, not `Main article`.

## Good to know

<AccordionGroup>
  <Accordion title="Rules check content, not SEO or links" icon="list-check">
    Content rules enforce editorial quality — tone, structure, terminology, factual claims. They don't check URLs for reachability, run spellcheck, or validate HTML. Those are separate tools.
  </Accordion>

  <Accordion title="Translation rules ship with the translation prompt" icon="language">
    A rule set to **Applies to: Translation** doesn't run as a check after translation — it's added to the AI's translation prompt so the output follows the rule by construction. This is how the glossary and translation rules stay consistent.
  </Accordion>

  <Accordion title="Blocking publish is org-wide" icon="ban">
    The **On publish** setting applies to every article in the Help Center. If one team needs block semantics and another doesn't, split Help Centers across orgs or split the rules by **Applies to** scope.
  </Accordion>

  <Accordion title="Article-specific overrides" icon="file-circle-check">
    Rules can target a single article by ID instead of the whole Help Center. Useful for imported content where one article needs a one-off rule without globalizing it.
  </Accordion>
</AccordionGroup>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Articles" icon="file-lines" href="/help-center/articles">
    Content rules run against articles on save or publish.
  </Card>

  <Card title="Translations" icon="language" href="/help-center/translations">
    Translation-scoped rules shape the AI's translation prompt.
  </Card>

  <Card title="Categories" icon="folder-tree" href="/help-center/categories">
    Organize the articles your rules apply to.
  </Card>

  <Card title="Help Center overview" icon="book-open" href="/help-center/overview">
    Everything the Help Center does.
  </Card>
</CardGroup>
