Contract Review Checklist skill for Codex
Know what you are signing before counsel does. Codex reads an MSA, SaaS agreement, SOW or NDA from your side of the deal, extracts the key terms into one table, walks a clause-by-clause checklist, and ranks issues with the quoted text, why it matters, an ask and a fallback. It checks definitions, cross-references and documents incorporated by URL, labels everything as preparation for legal review, and never sends redlines itself.
curl -fsSL codexskills.dev/install.sh \ | sh -s -- contract-review-checklist Installs to ~/.agents/skills/contract-review-checklist/ for every project on this machine.
curl -fsSL codexskills.dev/cli.mjs -o codex-skills.mjsnode codex-skills.mjs install contract-review-checklist The CLI also searches, updates and removes skills. Run it with no arguments to pick from a list. Needs Node 20.12+.
curl -fsSL codexskills.dev/install.sh \ | sh -s -- --project contract-review-checklist Installs to .agents/skills/contract-review-checklist/ in the current repository. Commit it and everyone who runs Codex there gets it.
curl -fsSLO codexskills.dev/downloads/contract-review-checklist.zipunzip -o contract-review-checklist.zip -d ~/.agents/skills/ The archive holds the skill folder with its generated agents/openai.yaml. Unzip into .agents/skills/ to scope it to a repo.
& ([scriptblock]::Create((irm codexskills.dev/install.ps1))) contract-review-checklist PowerShell 5.1 or 7. Installs to %USERPROFILE%\.agents\skills\. Add -Project for the current repo.
104-line POSIX script. No sudo, no telemetry. Read install.sh
Use it in Codex
Start a prompt with $contract-review-checklist, or pick it from /skills.
You can also just describe the task: Codex reads the description below and loads the playbook when your request matches.
What Codex reads before loading it
Reviews commercial contracts against a structured checklist - MSAs, SaaS subscription agreements, SOWs, NDAs, DPAs, consulting and vendor agreements - extracting key terms, flagging one-sided or missing clauses (liability caps, indemnities, IP, termination, auto-renewal, data protection, payment), and producing an issues list with suggested asks for a lawyer to confirm. Not legal advice. Use when asked to review a contract, summarise an agreement's key terms, compare a redline to the original, or prepare questions for counsel.
Use it when
- You received a vendor, customer or partner contract and need a first pass before legal
- You want a key-terms summary and dates to calendar
- A counterparty sent back a redline and you need to see what changed
- Preparing questions for outside counsel to keep the bill focused
Use something else when
- You need a final legal opinion or advice on enforceability: hire a qualified lawyer
- You are drafting a privacy policy for your own product: use privacy-policy-drafting
- You are choosing between vendors before any contract exists: use vendor-evaluation
How to check the result
Every high-rated issue cites a clause number and short quoted text with an ask and fallback, the key-terms table is complete, and all documents incorporated by reference were requested or reviewed.
The mistake it prevents
Reviewing only the MSA while an order form saying 'notwithstanding the MSA' quietly overrides the negotiated liability or renewal terms.
A good first-pass review tells the business owner, in plain language, what they are agreeing to, which terms are unusual or one-sided for their position, and exactly what to ask for, while making clear that a qualified lawyer makes the final call. Miss nothing that moves money, liability, data or ownership.
State this at the top of every output: “This is a checklist-based review to prepare for legal review. It is not legal advice, and a lawyer qualified in the governing law should review before signing.” Do not tell the user a contract is safe to sign.
Before reading
- Establish the user’s side: customer, vendor, licensor, contractor, discloser, recipient. The same clause is good or bad depending on side.
- Identify the document set and order of precedence: MSA, order form, SOW, DPA, SLA, policies incorporated by URL. Ask for every referenced document; terms “incorporated by reference” at a URL bind just as much as the PDF.
- Ask for the user’s playbook if one exists (standard positions, fallback positions, approval thresholds) and the deal value. A $5k tool and a $2M platform deal warrant different effort.
- Get text you can search. Convert files locally:
pdftotext -layout contract.pdf contract.txt # poppler-utils
pandoc contract.docx -t plain -o contract.txt # Word files
Scanned PDFs need OCR first; say so if text extraction returns nothing.
Workflow
- Build the defined-terms list (every capitalised defined term and its definition). Many problems hide in definitions: a broad “Confidential Information” or a narrow “Fees” changes the whole agreement.
- Extract the key-terms summary (template below)
- Walk the clause checklist for this contract type; read references/clause-checklist.md for the detailed checks, red flags and typical asks per clause
- Check cross-references: every “Section 9.2” points to the right clause, and carve-outs referenced in the liability cap actually exist
- Check what is missing, not only what is present (no DPA when personal data flows, no SLA credits, no termination for convenience)
- Rank issues and draft asks
- List questions only counsel or the business owner can answer
Clauses that matter most, by side
| Clause | Customer wants | Vendor wants |
|---|---|---|
| Limitation of liability | Cap at least 12 months’ fees; super-cap or uncapped for data breach, confidentiality, IP indemnity | Cap at fees paid in prior 12 months or less; exclude indirect damages broadly |
| Indemnification | Vendor indemnifies for IP infringement, data breach, legal violations | Narrow IP indemnity with remedies (modify, replace, refund); customer indemnifies for its content |
| IP ownership | Owns its data and deliverables made for it | Retains platform IP, aggregated/anonymised data, improvements |
| Term and renewal | No auto-renewal, or long notice window and price-increase cap | Auto-renewal, short notice window |
| Termination | For convenience with notice; for breach with cure period; data export on exit | Only for breach; fees for full term due on termination |
| Payment | Net 30-45, disputed amounts withheld in good faith | Net 15-30, late interest, suspension for non-payment |
| Data protection | DPA, sub-processor list and notice, breach notification within a fixed time, deletion on exit | Notification “without undue delay”, broad sub-processor rights |
| Warranties | Conforms to documentation, no material decrease in functionality | “As is” beyond narrow express warranties |
| Assignment | Consent needed before vendor assigns, except to acquirer | Free assignment on merger or sale |
| Governing law / venue | Home jurisdiction | Vendor’s jurisdiction |
Key-terms summary template
| Term | Value | Clause |
|---|---|---|
| Parties / user's side | | |
| Effective date / term | | |
| Renewal and notice window | e.g. auto-renews 12 months; notice 60 days before end | |
| Fees, increases, payment terms | | |
| Liability cap and carve-outs | | |
| Indemnities (each direction) | | |
| Termination rights (each side) | | |
| Data: personal data? DPA? location? | | |
| IP / deliverables ownership | | |
| Confidentiality duration | | |
| Governing law, venue, dispute process | | |
| Exclusivity, non-solicit, non-compete, MFN | | |
| Documents incorporated by reference | | |
Rating issues
| Rating | Meaning | Example |
|---|---|---|
| High | Unlimited or uncapped exposure, loss of IP or data, lock-in, legal non-compliance | Customer indemnifies vendor for any claim “arising from use of the Services” without a cap |
| Medium | Off-market but bounded; costs money or flexibility | 90-day non-renewal notice with uncapped renewal price increases |
| Low | Drafting quality, ambiguity, minor deviations | Inconsistent defined term “Customer Data” vs “Client Data” |
| Question | Cannot judge without facts | Will any EU personal data be processed? |
For each issue write: clause number, quoted text (short), why it matters for the user’s side, the ask, and a fallback if the counterparty refuses.
**High - 11.2 Limitation of liability.** Cap is "fees paid in the three (3) months
preceding the claim" and applies to data breaches. For a $4k/month contract that caps
recovery for a breach of customer data at $12k.
Ask: cap at 12 months' fees; separate cap of 3x annual fees (or uncapped) for breach of
the data protection and confidentiality obligations.
Fallback: 12 months' fees generally, 2x for data breach.
Comparing a redline
When the counterparty returns a marked-up version:
diff <(pdftotext -layout v1.pdf -) <(pdftotext -layout v2.pdf -) | less
# Word: compare documents in Word itself, or diff pandoc plain-text outputs
Check for unmarked changes: counterparties sometimes accept-all and send a “clean” version. Diff the clean text against your last version, not against their redline.
Gotchas
- Order forms and SOWs that say “notwithstanding anything in the MSA” quietly override the negotiated terms. Read precedence clauses and every order form.
- Terms incorporated by URL (acceptable use policy, SLA, privacy terms) can change unilaterally. Ask for the version in effect at signing to be fixed or changes to be notified with a right to terminate.
- Auto-renewal notice windows are easy to miss operationally. Put the notice date in the summary so someone can calendar it.
- “Consequential damages” exclusions can swallow the main remedy (for example lost data). Check that the carve-outs survive.
- Mutual clauses are not always balanced in effect: a mutual indemnity for IP mostly protects the party whose IP is used.
- Do not rewrite whole clauses as if drafting the final contract. Propose asks and short sample language, labelled for counsel review.
- Never send comments or redlines to the counterparty yourself; prepare them and let the user decide, after counsel review, what to send.
Output template
> Checklist-based review to prepare for legal review. Not legal advice; have a lawyer
> qualified in <governing law> review before signing.
## <Agreement> - <counterparty> - reviewed <date> (user is <side>)
### Summary
<3-5 sentences: what the deal is, overall balance, the top 3 issues>
### Key terms
<table above>
### Issues (ranked)
<High, then Medium, then Low, each with clause, text, why, ask, fallback>
### Missing provisions
### Questions for counsel / business owner
### Dates to calendar
<renewal notice deadline, price-increase notice, termination windows> What the zip contains
Codex reads bundled files only when a step points to them. Every one is shown here, so you can review it before installing.
agents/openai.yaml
Gives the Codex app a display name, a one-line description and a starter prompt for this skill.
interface:
display_name: "Contract Review Checklist"
short_description: "Know what you are signing before counsel does"
default_prompt: "$contract-review-checklist Review this SaaS subscription agreement from the customer side and list the risky clauses" references/clause-checklist.md
# Clause checklist
Detailed checks per clause. Read the sections that apply to the contract type, then
the "Contract-type extras" at the end. Each item: what to check, red flags, typical ask.
Typical asks are common market positions, not legal advice; counsel decides.
## Definitions
- Check: "Confidential Information", "Customer Data", "Deliverables", "Affiliate",
"Fees", "Services", "Documentation", "Losses".
- Red flags: Confidential Information limited to items marked "confidential"; "Customer
Data" excluding derived or usage data; "Affiliate" broad enough to let a competitor in.
- Ask: include information that a reasonable person would understand to be confidential;
define Customer Data to include outputs generated from it.
## Scope, services and SLAs
- Check: what exactly is delivered, where it is specified (SOW, documentation URL),
service levels, support hours, credits and their cap.
- Red flags: vendor may modify services or documentation at will; SLA credits are the
"sole and exclusive remedy" with a credit cap of a few percent; no right to terminate
for chronic SLA failure.
- Ask: no material reduction in functionality during the term; termination right after
repeated SLA misses (for example three months in any rolling six).
## Fees and payment
- Check: fee schedule, increases at renewal, overage pricing, payment terms, late
interest, taxes, expenses, disputed invoices, suspension rights.
- Red flags: uncapped renewal increases; overages billed at list price; suspension on
short notice for any late payment, including disputed amounts.
- Ask: renewal increase cap (for example the lower of CPI or 5%); right to withhold
disputed amounts in good faith; written notice and 15-30 days before suspension.
## Term, renewal and termination
- Check: initial term, renewal mechanics, notice windows, termination for convenience,
for cause (cure periods), for insolvency, effects of termination, survival clause.
- Red flags: auto-renewal with notice window over 60 days; all fees for the remaining
term accelerate on any termination; no data export period.
- Ask: 30-day notice; termination for convenience with pro-rata refund of prepaid fees
(customer side) or minimum commitment (vendor side); 30-60 days to export data after
termination, then certified deletion.
## Limitation of liability
- Check: cap amount and basis (fees paid vs payable, period), mutuality, exclusion of
indirect/consequential damages, carve-outs from cap and from exclusion.
- Red flags: cap tied to a short period (1-3 months); cap applies to indemnities and
confidentiality; exclusions cover "loss of data" for a data-processing service; cap
only protects one side.
- Ask: mutual cap of 12 months' fees; carve-outs for indemnity obligations, breach of
confidentiality, gross negligence, wilful misconduct, and (often) a separate higher cap
for data protection breaches.
## Indemnification
- Check: who indemnifies whom for what; procedure (notice, control of defence,
cooperation, settlement consent); exclusions; remedies for IP claims.
- Red flags: one-way indemnity from the weaker party; indemnity for "any claim arising
from" use; no consent right over settlements that admit fault.
- Ask: vendor IP infringement indemnity with modify/replace/refund remedies; each party
indemnifies for its own legal violations; no settlement imposing obligations without
consent.
## Intellectual property
- Check: ownership of pre-existing IP, deliverables, customisations, feedback,
customer data, aggregated data, and AI training rights.
- Red flags: vendor owns custom deliverables the customer paid for; feedback clause
broad enough to cover customer confidential information; rights to train models on
customer data without opt-out.
- Ask: customer owns deliverables created specifically for it (or gets a perpetual,
royalty-free licence); explicit prohibition or opt-in for training on customer data.
## Confidentiality
- Check: duration, exclusions, permitted disclosures, return/destruction, trade secret
survival, residuals clause.
- Red flags: obligations end shortly after termination; "residuals" clause allowing use
of anything retained in memory.
- Ask: 3-5 years after termination, trade secrets for as long as they remain secret;
delete the residuals clause or narrow it.
## Data protection and security
- Check: whether personal data is processed; DPA attached; roles (controller,
processor); sub-processor list and change notice; international transfer mechanism
(for example EU Standard Contractual Clauses); breach notification timing; security
standards (SOC 2 report, ISO 27001); audit rights; deletion on exit.
- Red flags: no DPA despite personal data; breach notice "without undue delay" with no
outer limit; sub-processors added without notice; no right to object.
- Ask: DPA as an exhibit; breach notification within a fixed window (24-72 hours is
common); notice of new sub-processors with a right to object or terminate; annual
security report.
## Warranties and disclaimers
- Check: performance warranty, compliance with laws, non-infringement, authority,
malware, disclaimers.
- Red flags: everything "as is"; warranty remedy limited to re-performance with no
refund.
- Ask: services perform materially per documentation; remedy of fix, then refund of
prepaid fees for the non-conforming period.
## Insurance
- Check: required coverage types and amounts (general liability, professional/E&O,
cyber), certificates, additional insured status.
- Ask: cyber coverage for vendors holding customer data; amounts proportionate to deal
size.
## Assignment, change of control, subcontracting
- Red flags: free assignment by the counterparty to anyone, including a competitor.
- Ask: assignment only with consent, except to a successor in a merger or sale of
substantially all assets, with notice.
## Restrictive covenants
- Check: exclusivity, non-compete, non-solicitation of employees, most-favoured-nation
pricing, publicity (use of logo).
- Red flags: broad non-solicit that blocks hiring from public job ads; logo use without
consent.
- Ask: non-solicit excludes general advertising; publicity only with written consent.
## Governing law and disputes
- Check: governing law, venue, arbitration vs courts, jury waiver, escalation process,
injunctive relief carve-outs.
- Note: enforceability of many clauses depends on jurisdiction. Flag unfamiliar governing
law for counsel rather than assessing it.
## Boilerplate worth reading
- Entire agreement and order of precedence; amendments only in writing; notices (address
and email validity); force majeure scope (does it excuse payment? does it include
cyberattacks?); severability; counterparts and e-signature.
## Contract-type extras
### NDA
- Mutual vs one-way matches the actual information flow; purpose limitation; no hidden
licence or non-compete; term reasonable; compelled disclosure procedure.
### SOW / consulting / services
- Deliverables and acceptance criteria are testable; acceptance deemed after a set period;
change-order process; who supplies what (dependencies); payment milestones tied to
acceptance; key personnel; IP assignment on payment.
### SaaS subscription
- Data export format and window; uptime commitment; support response times; usage limits
and overage; price lock; suspension rights; AI features and data use.
### Independent contractor
- Worker classification depends on actual working conditions and local law, not the
label in the contract; flag for counsel. IP assignment and moral-rights waiver where
applicable; invoicing and expenses; confidentiality; no exclusivity unless paid for.
### DPA
- Subject matter, duration, nature and purpose of processing, types of data and data
subjects, documented instructions, confidentiality of personnel, security measures
annex, sub-processors, assistance with data subject requests, deletion or return, audit.
About this skill
Written and maintained by the Codex Skills editors to the same editorial standard as every skill here: a selective description, a real workflow, known pitfalls and a way to verify the work. First published , last updated . MIT licensed. Something wrong or out of date? Tell us.