Read A Contract
Get the standard clauses out of a contract or a whole folder of them without reading legalese yourself. I extract liability caps, termination terms, auto-renewal, payment terms, IP, data handling, uptime commitments, and exclusivity, each with the verbatim quote, a plain-language summary, and a flag on anything unfavorable for your vendor posture. The renewal calendar updates automatically.
Read A Contract
When to use
- "pull the {clause} from this contract" (single doc).
- "what are the auto-renew terms in every contract in this folder" (batch).
- "extract the liability cap and termination language from {vendor}'s master service agreement".
Connections I need
I run external work through Composio. Before this skill runs I check the categories below are linked. Missing → I name the category, ask you to connect it from the Integrations tab, stop.
- Files (Google Drive) - Required for batch runs and named-vendor lookups. I scan folders or named contracts here.
- Document processing (OCR or PDF text extraction) - Required. Pulls the actual text out of scanned or native PDFs so I can extract clauses verbatim.
If no files provider is connected and you haven't pasted the contract, I stop and ask you to connect Google Drive or paste the document.
Information I need
I read your operations context first. For every required field that's missing I ask ONE plain-language question (best modality: connected app > file drop > URL > paste) and wait.
- The contract itself - Required. Why I need it: I can't extract from nothing. If missing I ask: "Drop the contract or point me at the folder. PDF, Word, or a Google Doc all work."
- Vendor posture - Required. Why I need it: tells me which terms count as a flag. A conservative posture flags more aggressively than fast-risk. If missing I ask: "How do you approach vendor terms - conservative, balanced, or move fast?"
- Operating context doc - Required. Why I need it: anchors hard nos so I flag clauses that would violate them. If missing I ask: "Want me to set up your operating context first? Helps me catch unfavorable terms more reliably."
Steps
-
Read
context/operations-context.md. If missing: stop, ask user runset-up-my-ops-infoskill first. Vendor posture + hard nos anchor "unfavorable terms" flags. -
Read
config/procurement.json- approval posture decide which terms count as "flag worthy" (conservative founder flag more; fast-risk founder flag only truly egregious). -
Identify target contract(s).
- Single file: user paste text, share URL, or point at file in connected drive.
- Batch (folder):
composio search drive→ list files in specified folder → filter to contract-flavored (PDF/DOCX/DOC). - Named vendor: look in
contracts/first; if absent, search drive viacomposio search drive.
-
Parse each contract. Use
composio search doc-processingto find best doc-processing tool for format (OCR for scanned PDFs, text extractor for native PDFs, DOCX reader). Execute by slug, pull full text. -
Extract standard clauses. Per contract, locate + extract:
- Liability cap - quote + cap amount + carve-outs.
- Termination - for-cause terms, for-convenience terms, notice windows.
- Auto-renewal - presence, term length, notice-to-not-renew window.
- Payment terms - amount, frequency, true-up / overage, late fees.
- IP ownership - who own work product, background IP rules.
- Data handling / data processing agreement - data processing agreement presence, data residency, breach notification response-time commitment.
- Uptime commitment - uptime commitment, remedies.
- Exclusivity / non-compete - presence + scope.
Per clause: verbatim quote + 1-line plain-language summary + 1-line flag if unusual or unfavorable per vendor posture. If clause absent, mark
ABSENTexplicit - never omit. -
Write to
contracts/{vendor-slug}-{YYYY-MM-DD}.mdwith full extraction. Batch runs: one file per contract +contracts/batch-{YYYY-MM-DD}-summary.mdrolling up flags across batch. -
Update renewal calendar. If contract has renewal date, call
track-my-renewalsskill internally (or notetrack-my-renewalsshould re-run) and add/update entry inrenewals/calendar.md. -
Atomic writes -
*.tmp→ rename. -
Append to
outputs.jsonwithtype: "contract", status "ready" per contract. Batch: singlecontractentry for summary + one per contract processed. -
Summarize to user - #1 flag that most warrant founder attention (e.g. "auto-renew is in 11 days and notice window is 30 days - already too late to stop this one"). Path to file(s).
Outputs
contracts/{vendor-slug}-{YYYY-MM-DD}.md(one per contract)- Optional
contracts/batch-{YYYY-MM-DD}-summary.md(batch runs) - Updates to
renewals/calendar.md - Appends to
outputs.jsonwithtype: "contract".
What I never do
- Sign or accept any contract.
- Invent clause. If contract has no liability cap, mark
ABSENT. - Interpret legally. Flag for founder attention; founder consult legal.
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…