| name | read-a-contract |
| title | Read A Contract |
| description | 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. |
| author | gethouston |
| author_url | https://github.com/gethouston/houston/tree/main/store/agents/operations/.agents/skills/read-a-contract |
| license | MIT |
| version | 0.1.0 |
| execution_mode | open |
| jurisdiction | general |
| practice | contracts |
| language | en |
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 run set-up-my-ops-info skill 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).