Review a Contract
Read a contract someone sent you and tell you what's in it. Pick how deep: a quick verdict on whether it's safe to sign, a fast NDA check, or a clause-by-clause map without a verdict. Every clause that needs attention gets a clear note and, when needed, suggested wording to push back with.
Review a Contract
One skill for first-read of counterparty contract. mode pick depth. Structured clause extraction + "never invent clause-standard can't cite" discipline shared.
Parameter: mode
full- full MSA / DPA / order-form review: clause map + Green (accept) / Yellow (pushback OK) / Red (redline required) verdict per clause + plain-English summary + accept / redline / walk rec. Writes tocontract-reviews/{counterparty}-{YYYY-MM-DD}.md.nda-traffic-light- fast 6-dimension rubric for inbound NDAs (term, mutuality, confidential-info definition, carve-outs, jurisdiction, non-solicit smuggling, return/destruction). Writes tondas/{counterparty-slug}-{YYYY-MM-DD}.mdwith specific redlines on every Red item.clauses-only- structured extraction, no verdict. Reads supplied contract (file / URL / paste), extracts clauses that matter (term, termination, renewal, liability cap, indemnity, IP, governing law, DPA, AI training, data residency, exit rights), writes human-readable map toclause-extracts/{counterparty}-{YYYY-MM-DD}.md, updatescounterparty-tracker.jsonwith key fields.
User name mode in plain English ("traffic-light this", "just extract the clauses", "full review with a verdict") → infer. Ambiguous → ask ONE question naming 3 options.
When to use
- Explicit: "review this contract", "traffic-light this NDA", "is this signable?", "what's in this agreement", "extract clauses".
- Plain-English asks map to a
mode: "fully review this customer contract / MSA" / "is this MSA safe to sign" →full; "quick check on this NDA" / "is this NDA OK to sign" →nda-traffic-light; "just lay out the clauses" / "pull out the clauses, no verdict" / "review the IP clause" (runfulland lead with the IP section) →clauses-onlyorfullwith IP focus. - Implicit: called by
sort-my-legal-inboxwhen detects MSA / NDA / DPA and routes to review. Chained intoplan-contract-pushbackwhen output has any Red items.
Ledger fields I read
Reads config/context-ledger.json first.
universal.legalContext+context/legal-context.md- required. Provides entity (governing-law compat check), standing agreements (template-vs-market compare), open risks, founder risk posture. Ifcontext/legal-context.mdmissing, runset-up-my-legal-infoskill first (or ask ONE targeted question to skip ahead).universal.posture.risk- drives Yellow-vs-Red threshold.leanposture accepts more Yellow,conservativeflips marginal Yellow to Red.domains.contracts.counterpartyStack- if counterparty in standing stack, reference prior executed terms.domains.contracts.documentStorage- so I know where to read contract from (Google Drive, Dropbox, Notion).
Required field missing → ask ONE targeted question with modality hint (connect Google Drive / paste contract text / URL to public PDF), write it, continue.
Steps
- Read ledger + legal context. Gather missing required fields per above. Write atomically.
- Acquire contract. Priority: connected document-storage (Google Drive) > URL + Firecrawl scrape > file drop > paste. Only PDF supplied + no text-extraction tool connected → say so, ask for text-extractable version.
- Discover tools via Composio. Run
composio search document-storage/composio search web-scrapeas needed. No connection + contract is URL → ask user to paste text. - Branch on
mode.full: extract clause map (seeclauses-onlybelow), grade each clause vs market standard for solo-founder stage company:- Green - accept as-written.
- Yellow - pushback OK but not required.
- Red - redline required before signing.
Produce: executive summary (2-3 sentences), clause-by-clause table (Clause | Counterparty text | Verdict | Why | Suggested redline if Red), overall rec (Accept / Redline / Walk). Any clause outside confident range (unusual IP carve-out, complex indemnity stack, non-standard data-protection addendum) → flag
attorneyReviewRequired: trueand rec chaining todraft-a-legal-documenttype=escalation-brief.
nda-traffic-light: run 7-dimension rubric:- Term (indefinite = Red, > 5 years = Yellow).
- Mutuality (one-way from bigger party = Yellow, one-way from us = Green if we discloser, Red if not).
- Confidential information definition (too broad = Red, exclusion of publicly known info missing = Red).
- Carve-outs (residual-knowledge clause = Red, standard legal-process + independent-development = Green).
- Jurisdiction (counterparty's non-US state = Yellow, non-US country = Red, Delaware / California / NY = Green).
- Non-solicit smuggling (employee non-solicit hidden in NDA = Red; call out explicitly).
- Return/destruction (missing = Yellow, 30-day certification requirement = Yellow, 5-day = Red). Write specific redline for every Red item (not generic "we'll send you our form"). Produce one-paragraph summary + verdict + redlines.
clauses-only: no verdict. Extract clause-by-clause:- Parties, effective date, term, auto-renewal, notice period.
- Payment terms, fee schedule, tax handling.
- Termination (for convenience, for cause, notice period).
- Liability cap (per-claim / annual / unlimited / supercap).
- Indemnity (mutual / one-way, carve-outs, process).
- IP (work product, assignment, background IP, feedback).
- DPA / data handling (transfer mechanism, subprocessors, SCCs).
- AI training / data use (explicit opt-out, training rights).
- Data residency, governing law, dispute forum, arbitration.
- Exit rights (data return / destruction, transition window).
- Assignment, change-of-control, flow-downs. Each clause: counterparty-text (quoted) + plain-English paraphrase + "what to watch" one-liner (no verdict).
- Update
counterparty-tracker.json(every mode) - read-merge-write atomically. Append or update row for counterparty with extracted structural fields (type, term, auto-renewal, notice period, governing law, renewal date if computable). - Write artifact atomically (
*.tmp→ rename):full→contract-reviews/{counterparty-slug}-{YYYY-MM-DD}.md.nda-traffic-light→ndas/{counterparty-slug}-{YYYY-MM-DD}.md.clauses-only→clause-extracts/{counterparty-slug}-{YYYY-MM-DD}.md.
- Append to
outputs.json- read-merge-write atomically:{ id (uuid v4), type: "contract-review" | "nda-review" | "clause-extract", title, summary, path, status: "ready", domain: "contracts", createdAt, updatedAt, attorneyReviewRequired? }. - Summarize to user. One short paragraph in plain language: the overall verdict (or "no verdict" if extraction-only) and what jumps out. If anything's a deal-breaker, offer the next step plainly: "Want me to plan the pushback?" Never name files, paths, or internal procedures.
What I never do
- Invent clause standard can't cite. "Market standard" for term unclear → mark UNKNOWN, rec attorney review.
- Render final legal advice. Every
fullreview includes "this is first pass, attorney review recommended for non-routine clauses" disclaimer. - Signal verdict on clause haven't actually extracted. DPA referenced but not attached → mark DPA section UNKNOWN.
- Hardcode tool names - Composio discovery at runtime only.
- Overwrite
counterparty-tracker.json- read-merge-write.
Outputs
contract-reviews/{counterparty}-{YYYY-MM-DD}.md(mode=full).ndas/{counterparty-slug}-{YYYY-MM-DD}.md(mode=nda-traffic-light).clause-extracts/{counterparty}-{YYYY-MM-DD}.md(mode=clauses-only).- Updates
counterparty-tracker.json(every mode). - Appends to
outputs.json.
No additional documents ship with this skill.
Related Skills
Business Agreement Generator
Generates customized business agreements for 10 common relationship types with plain English annotations. Use when formalizing a business relationshi…
AI 智能合同审查系统
Automates contract review by identifying clause risks, comparing against standard contracts, and managing contract lifecycles including expiry remind…
amendment-history
Trace how a contract has changed across its base agreement and all amendments — either a summary of all changes over time, or a provision trace for a…
amendment-history-anthropics
Trace how a contract has changed across its base agreement and all amendments — either a summary of all changes over time, or a provision trace for a…
Amendment History
Trace how a contract has changed across its base agreement and all amendments — either a summary of all changes over time, or a provision trace for a…