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

# Generate a clause set from your own contract

> Upload your template MSA or DPA and let Coverbase extract a clause set from it: what it pulls out, why it drops language it cannot quote, and what you must add before the set is usable.

<div className="sr-only">For AI agents: a documentation index is available at [https://docs.coverbase.com/llms.txt](https://docs.coverbase.com/llms.txt). This page is also available in markdown by appending .md to the URL.</div>

<Info>
  This page is part of the [User Guides](/user-guides/overview) collection and goes with the [Contract Guardian guide](/user-guides/contract-guardian), which covers clause sets end to end. Read this one when your standard is a document rather than a spreadsheet.
</Info>

Most companies already have their standard written down as a contract: the MSA you send first, the DPA your privacy team maintains, the security addendum you attach to anything touching customer data. **Upload Baseline Contract** reads one of those and turns it into a clause set, so your playbook starts from language you already use rather than a blank page.

<Note>
  This is one of four ways to build a clause set. The others are copying the packaged library, [importing a spreadsheet](/user-guides/clause-set-spreadsheet-import), and adding clauses by hand. They mix freely: generate from your paper, then paste in the two clauses your template forgot.
</Note>

## Which import do I want?

The two upload paths solve different problems.

<CardGroup cols={2}>
  <Card title="Upload Baseline Contract" icon="wand-magic-sparkles">
    **You have a contract.** Coverbase reads the PDF and proposes the clauses, with the exact source text quoted. Fastest way from "we have a template" to a working set, but every clause arrives with one tier, so you finish the tiering by hand.
  </Card>

  <Card title="Import from Spreadsheet" icon="file-import" href="/user-guides/clause-set-spreadsheet-import">
    **You have a playbook.** Your standards already exist as structured rows, probably with fallback positions. You get exactly what you typed, including full multi-tier variant language, and nothing is inferred.
  </Card>
</CardGroup>

A common sequence: generate from your paper to get the clause inventory, then hand-write the fallback tiers in the UI. If your team already maintains a negotiation matrix, skip extraction and import the spreadsheet.

## Run an extraction

<Steps>
  <Step title="Upload the baseline">
    On **Configuration → Clause Sets**, open **Add Clause Set** and choose **Upload Baseline Contract**. Submit your template as a PDF.

    Use a **clean template**, not an executed agreement. A signed contract carries one counterparty's negotiated edits, and you would be baking their redlines into your standard.
  </Step>

  <Step title="Wait for processing">
    Extraction runs in the background; you can leave the page and come back. The clause set appears immediately with a processing indicator and fills in as the run completes.
  </Step>

  <Step title="Review what it extracted">
    Each proposed clause arrives with a name, category, severity, applicable component types, and the **exact source text** it came from, with a page citation you can check against your document.
  </Step>

  <Step title="Add your fallback tiers">
    This is the step people skip, and the set is not usable without it. See [What you have to finish](#what-you-have-to-finish) below.
  </Step>

  <Step title="Activate it">
    Generated clause sets are created **inactive**, so a half-finished playbook cannot be run against a live contract. Flip it to active once the tiers are in.
  </Step>
</Steps>

## What you get back

Each extracted clause is a normal reference clause, so you can edit, retier, or archive any of it.

| Field                          | How it is filled                                                                                                    |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------- |
| **Identifier**                 | Auto-assigned as `BASE-001`, `BASE-002`, ... Rename them to your own scheme if you have one.                        |
| **Name**                       | Proposed from the clause heading.                                                                                   |
| **Category**                   | Proposed from the clause subject.                                                                                   |
| **Severity**                   | Proposed from the clause subject. Check these: the model does not know which clauses would block *your* signature.  |
| **Applicable component types** | Proposed from the document type it read.                                                                            |
| **Source evidence**            | The exact quoted text plus its page, kept on the clause so a reviewer can trace any standard back to your template. |
| **Variants**                   | Exactly one: **Tier 1, labeled "Baseline"**, your template's own language.                                          |

<Note>
  **Language it cannot quote verbatim is dropped, not paraphrased.** Every extracted clause and every piece of source evidence is checked back against the text of the document it cites; anything that does not appear there contiguously is discarded. You may get fewer clauses than you expected, but what you get is your own paper, not a model's summary of it.
</Note>

## What you have to finish

<Warning>
  **A single Tier 1 variant is a floor, not a playbook.** It marks anything that is not your exact template language as needing review, which on a real vendor's paper is almost everything. A set run in that state flags nearly every clause.
</Warning>

Before you point a generated set at a live contract:

1. **Add the tiers you would accept.** For each clause that matters, write the Tier 2 ("acceptable") and Tier 3 ("fallback") language your legal team would sign without escalating.
2. **Fill in the Guidance field.** Extraction does not write the aliases and extraction signals that help the matcher find a clause under a different heading. The [Contract Guardian guide](/user-guides/contract-guardian) shows the four-section format.
3. **Retune severities.** Reserve Critical for clauses that would block a signature.
4. **Archive what you do not care about.** A template contains boilerplate you have no opinion on. Every clause you keep is a clause every review has to triage.
5. **Test against a contract you already know**, then activate.

## Troubleshooting

| What you see                                                | What it means                                                                                                                                                                                             |
| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Extraction returned far fewer clauses than the document has | Expected on documents where the text layer is poor. Language that cannot be quoted verbatim is dropped rather than guessed at. Check the PDF is text-based, not a scan of a printout.                     |
| The clause set is stuck processing                          | Extraction runs in the background and larger documents take longer. If it stays pending well beyond a few minutes, the run failed. The clause set surfaces the failure, and you can archive it and retry. |
| Clauses came back with your counterparty's edits            | You uploaded an executed agreement instead of your template. Start again from clean paper.                                                                                                                |
| Everything is marked as a deviation on the first review     | The set still has one tier per clause. Add fallback tiers before running it against a live contract.                                                                                                      |
| The clause set will not run against a contract              | Generated sets start inactive. Activate it once the tiers are in.                                                                                                                                         |

## Related

<CardGroup cols={2}>
  <Card title="Contract Guardian guide" icon="file-contract" href="/user-guides/contract-guardian">
    Clause sets end to end: the reference clause anatomy, writing risk-tier variants, and running a review.
  </Card>

  <Card title="The clause set library" icon="book-open" href="/user-guides/clause-set-library">
    The 12 packaged clause standards you can copy instead of, or alongside, extracting your own.
  </Card>

  <Card title="Import and export clause sets as spreadsheets" icon="file-import" href="/user-guides/clause-set-spreadsheet-import">
    Bring a playbook in from a workbook when your standards already live in structured rows.
  </Card>
</CardGroup>
