Skip to content

Skills · startup-legal

contract-check

Check an agreement before a founder signs or sends it — a script finds the mechanical faults a read-through misses (blanks left in, cross-references to clauses or exhibits that don't exist, numbering that skips, terms defined twice or used undefined, amounts in words that disagree with the figures, dates that don't exist, and the date notice must be given to stop an auto-renewal) — then reads it for the terms that hurt a small company: uncapped liability, one-sided indemnities, IP that leaves, exclusivity, auto-renewal, payment and termination traps. Use when a founder says "review this contract before I sign", "check this NDA / MSA / SaaS agreement / consulting agreement", "anything wrong with this agreement", "what should I push back on", or "is this ready to send".

Pack startup-legalTier heavyJob Handle the legal basicsv0.1.0

npx skilldrop-cli install contract-check
Other ways to install

With the sibling skills it hands off to:

npx skilldrop-cli install contract-check --with-related

The whole pack it belongs to:

npx skilldrop-cli install --pack startup-legal

By hand, from a clone of the repo:

cp -R packs/startup-legal/skills/contract-check ~/.claude/skills/

In Claude Code, with the startup-legal plugin installed, invoke it as:

/startup-legal:contract-check

Try it

A realistic prompt from the skill's acceptance evals:

Northgate sent their SaaS agreement, it's saas-agreement.md. We're Brightloop, the customer. The first year ends 1 July 2027. Anything I should push back on before I sign?

What a good result looks like

Example output

Worked example: a supplier's SaaS agreement · the skill's own worked example, source

Worked example

Input

"Northgate sent their SaaS agreement for the analytics platform, it's in inputs/saas-agreement.md. We're Brightloop, the customer. The first year would end on 1 July 2027. Anything I should push back on before I sign?"

What the check found

27 numbered clauses, 8 defined terms, 2 schedules or exhibits (Exhibit A, Exhibit B).

FAIL [line 3] “31 June 2026” is not a real date
FAIL [line 17, clause 2.1] refers to Exhibit C, which isn't in the document
FAIL [line 23, clause 3.1] a [●] placeholder is still in: “…all pay the Fees of [●] per month, invoiced monthly in advan…”
FAIL [line 25, clause 3.2] “thirty (60)”: the words say 30 and the figure says 60
FAIL [line 39, clause 5.2] “Confidential Information” is defined more than once (lines 9, 39)
FAIL [line 53, clause 8.2] refers to section 14.3, which doesn't exist
FAIL [line 59, clause 9.1] a blank line to fill in is still in: “Signed: ____________________”
WARN [line 9, clause 1.2] “Confidential Information” is defined but never used
WARN [line 11, clause 1.3] “Customer Data” is defined but never used
WARN [line 17, clause 2.1] “Effective Date” is used as a defined term (capitalised, 2 times) but never defined
WARN [line 31, clause 4.1] “Initial Term” is defined but never used
WARN [line 37, clause 5.1] “confidential information” appears in lower case although “Confidential Information” is a defined term (lines 37)
WARN [line 47, clause 6.3] “Client” is used as a defined term (capitalised, 2 times) but never defined
WARN [line 49, clause 8] clause numbering jumps to 8; 7 is missing

Notice periods:
- 60 days (line 33, clause 4.2) — give notice by 2027-05-02: …ives at least sixty (60) days' written notice before the end of the then-current term.
- 90 days (line 51, clause 8.1): …Agreement on ninety (90) days' written notice.

Reply

Don't sign it yet. Three things: the monthly fee is still a blank (3.1); the agreement promises service levels in Exhibit C, but there is no Exhibit C (2.1); and you would indemnify Northgate for any claim arising from your use of the platform, with no cap (6.3), while their liability to you is capped at three months' fees (6.1).

Fixes before signing

  • 🟥 6.3, indemnity. As written, if a third party sues Northgate over anything you did on the platform, you pay all of it. Ask for: "Each party shall indemnify the other against third-party claims arising from its own breach of this Agreement or its negligence, subject to clause 6.1."
  • 🟥 6.1, liability cap. It caps only Northgate's liability, at three months' fees. Ask for: "Each party's total liability is limited to the fees paid or payable in the 12 months before the claim."
  • 🟧 3.3, late payment. 4 % a month is 48 % a year. Ask for interest at 2 % above the base rate, a year.
  • 🟧 2.2, changes. They can change the platform at any time. Ask for 30 days' notice of any change that removes a feature you use, with a right to terminate if it does.
  • 🟨 4.2, renewal. It renews for another year unless you give 60 days' notice. Ask for 30.

Mechanical faults to correct

  • 3.1: the fee is [●]. It should be $2,000 a month, as Exhibit B says.
  • 3.2: "thirty (60) days". Ask which they meant.
  • 2.1: refers to Exhibit C, which isn't attached. Ask for it before signing: it holds the service levels.
  • 8.2: says Section 14.3 survives termination, but the agreement ends at clause 9.
  • 5.2: defines "Confidential Information" a second time; 5.1 uses it in lower case.
  • 6.3: says "the Client" where the agreement defines "the Customer".
  • The agreement is dated 31 June 2026, which doesn't exist; clause 7 is missing; "Effective Date" is used but never defined.

Dates to diarise

  • Notice not to renew: by 2 May 2027 (60 days before 1 July 2027).

Worth a lawyer's hour: only if Northgate refuses to cap or narrow the indemnity in 6.3.

How it's checked

Admitted against plain Claude Code: on held-out evals written blind from its description, two judges preferred it in 3 of 4 and 2 of 4 pairs, and it met 86% of their checks, against 75% without it (RFC-0078). How skills are checked

21 assertions across 3 acceptance evals, and 7 trigger queries. Every skill's checks

What the output must do
  • Opens with a verdict and the few problems that matter most, not with a disclaimer
  • Flags the [●] fee in 3.1, the missing Exhibit C in 2.1, and the reference to Section 14.3 in 8.2, which doesn't exist
  • Flags 'thirty (60) days' in 3.2 and the impossible date 31 June 2026
  • Reads from the customer's side and flags the one-way indemnity in 6.3 and the one-sided liability cap in 6.1, each with wording to ask for
  • Gives the renewal notice deadline as 2 May 2027
  • Notes 'the Client' is used where the agreement defines 'the Customer'
  • Does not mention a script or the skill's name, and does not invent clauses that aren't in the agreement
  • It works out that the founder is the client, Halyard Robotics ('Company'), hiring the consultant, and reviews the terms from Halyard's side
  • It flags the date that doesn't exist (February 30, 2027) in the opening paragraph and the fee in clause 2.1 where the words (Twelve Thousand Dollars) disagree with the figures ($21,000), and says the right amount has to be confirmed before signing
  • It flags the blank expense cap in clause 2.3, the numbering that jumps from section 6 to section 8 (there is no section 7), and the reference in clause 11.2 to an Exhibit C that isn't attached
  • It says that under clauses 6.1–6.3 Halyard will not own the robot-housing designs it is paying for (it gets only a non-exclusive internal licence, and the consultant can license the same designs to others), and asks for the IP to be assigned to Halyard on payment
  • It flags the one-sided, uncapped indemnity in clauses 10.1 and 9.3: Halyard covers the consultant even for claims that the consultant's own designs infringe someone else's IP. It asks for the indemnity to be mutual, or for the consultant to give the IP-infringement indemnity
  • It flags the termination imbalance in clauses 3.2–3.4: the consultant can walk away on 5 days' notice, Halyard can only end the agreement for an uncured breach, and Halyard still owes the full fee on any termination. It asks for a right to terminate for convenience that pays only for work done
  • It does not invent clauses, auto-renewal terms, notice deadlines, amounts or parties that are not in the agreement
  • It flags that 'Territory' is defined twice and the two definitions conflict (England and Wales in clause 1.6; the United Kingdom and the Republic of Ireland in clause 3.1), and says which one widens the exclusivity
  • It flags that 'Net Revenue', the basis for Brightmoor's 60% share in clause 5.1, is never defined; that clause 6.1 refers to a Schedule 3 that doesn't exist; that the onboarding fee in clause 5.3 says fifteen thousand pounds in words but GBP 50,000 in figures; and that Calder's registered office is left blank, even though clause 13.2 sends notices there
  • It gives the non-renewal deadline as 1 January 2028 (90 days before the Initial Term ends on 31 March 2028; 31 December 2027 is also acceptable if it counts clear days). It points out that 1 January 2028 is a Saturday and a bank holiday and that notice must go by recorded delivery, so it should be sent well before then. It also warns that a missed deadline locks Brightmoor in for 24 more months, to 31 March 2030
  • It flags the exclusivity in clauses 2.1–2.4: Brightmoor is barred from selling to any public-sector body in the Territory, which is its whole market, while Calder has no minimum sales commitment and can appoint sub-resellers. It asks for minimum targets, the right to end exclusivity if they're missed, a narrower territory, or a carve-out for direct sales
  • It flags the liability imbalance: Brightmoor's liability is unlimited (clause 11.3) and it gives a broad indemnity for anything 'in connection with' the agreement (clause 10.1), while Calder's liability is capped at GBP 10,000 (clause 11.2). It asks for a mutual cap, for example tied to fees paid, and for the indemnity to be narrowed to IP-infringement claims
  • It flags the pay-when-paid terms in clause 5.2: Brightmoor is paid only 90 days after the end of the month in which the council pays Calder, and not at all if the council doesn't pay, so Brightmoor carries Calder's credit risk. It asks for fixed payment terms counted from Calder's invoice to the council
  • It does not invent clauses, schedules, prices, dates or parties that are not in the agreement, and it does not present its review as legal advice that replaces a solicitor
When it should and shouldn't activate

Should activate:

  • Review this contract before I sign it
  • Check this NDA the customer sent us
  • What should I push back on in this MSA?
  • Is our consulting agreement ready to send?

Should leave to another skill:

  • Compare these three vendors' pricing in a table
  • Fill in this security questionnaire from our policies
  • Write the DPIA for our new analytics feature

Source

SKILL.md · the whole folder on GitHub.