Skills contract-review
git clone https://github.com/TerminalSkills/skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/TerminalSkills/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/contract-review" ~/.claude/skills/terminalskills-skills-contract-review && rm -rf "$T"
skills/contract-review/SKILL.mdContract Review
Overview
Analyze legal contracts and agreements to identify risks, missing clauses, unfavorable terms, and compliance issues. This skill reads contract documents, categorizes clauses, flags potential problems, and produces a structured risk report with actionable recommendations.
Instructions
When a user asks you to review, analyze, or check a contract, follow these steps:
Step 1: Load and parse the contract
Read the contract file. Supported formats include PDF, DOCX, TXT, and Markdown.
For PDF files, extract text using pdfplumber:
import pdfplumber def load_contract(pdf_path): full_text = "" with pdfplumber.open(pdf_path) as pdf: for page in pdf.pages: text = page.extract_text() if text: full_text += text + "\n\n" return full_text
For DOCX files, use python-docx:
from docx import Document def load_docx(docx_path): doc = Document(docx_path) return "\n\n".join([p.text for p in doc.paragraphs if p.text.strip()])
Step 2: Identify the contract type
Determine the contract type from the content:
- Employment contract: Look for salary, benefits, termination, non-compete clauses
- NDA / Confidentiality agreement: Look for confidential information definitions, duration, exceptions
- Service agreement / SaaS: Look for SLA, liability caps, data handling, termination for convenience
- Vendor / Supplier agreement: Look for delivery terms, payment terms, warranties, indemnification
Step 3: Extract and categorize key clauses
Identify and extract these critical sections:
- Parties: Who is involved, are they correctly identified
- Term and termination: Duration, renewal terms, termination conditions, notice periods
- Payment terms: Amounts, schedule, late payment penalties, currency
- Liability and indemnification: Liability caps, mutual vs one-sided indemnification
- Confidentiality: Scope of confidential information, duration, exceptions
- Non-compete / Non-solicitation: Geographic scope, duration, reasonableness
- Intellectual property: Ownership, assignment, licensing rights
- Dispute resolution: Jurisdiction, arbitration vs litigation, governing law
- Force majeure: Events covered, notice requirements
- Data protection: GDPR compliance, data processing terms, breach notification
Step 4: Perform risk analysis
For each clause, assess:
- Risk level: High, Medium, or Low
- Issue: What is problematic or missing
- Recommendation: Specific change or addition to suggest
Flag these common red flags:
- One-sided indemnification without caps
- Automatic renewal without opt-out notice period
- Non-compete clauses exceeding 12 months or unreasonable geographic scope
- Missing limitation of liability
- Vague termination conditions
- No data protection or breach notification terms
- Missing force majeure clause
- Unclear IP ownership assignment
Step 5: Generate the review report
Produce a structured report with:
- Contract summary (type, parties, effective date, term)
- Clause-by-clause analysis with risk ratings
- Missing clauses that should be added
- Top recommendations ranked by priority
- Overall risk score (Low / Medium / High / Critical)
Examples
Example 1: Review an employment contract
User request: "Review my employment contract at ~/contracts/offer.pdf for any red flags"
Actions taken:
- Extract text from offer.pdf
- Identify as employment contract
- Analyze each clause for risks
- Flag issues found
Output:
CONTRACT REVIEW REPORT ====================== Type: Employment Contract Parties: Jane Doe (Employee) <-> Acme Corp (Employer) Term: Indefinite, starting March 1, 2025 RISK ANALYSIS: ------------------------------------------------- | Clause | Risk | Issue | |---------------------|--------|------------------------------------------| | Non-compete | HIGH | 24-month duration, nationwide scope | | Termination | MEDIUM | No severance terms specified | | IP Assignment | HIGH | Covers all work, including personal projects | | Benefits | LOW | Standard package, clearly defined | | Confidentiality | LOW | Reasonable scope and 2-year duration | MISSING CLAUSES: - No remote work policy or location flexibility terms - No bonus or equity vesting schedule details TOP RECOMMENDATIONS: 1. Negotiate non-compete down to 6-12 months with limited geography 2. Add carve-out for personal projects in IP assignment clause 3. Request explicit severance terms (e.g., 2 weeks per year of service) OVERALL RISK: HIGH - Address non-compete and IP clauses before signing
Example 2: Audit a SaaS service agreement
User request: "Check this vendor agreement for our SaaS tool. Flag anything we should push back on."
Actions taken:
- Parse the service agreement
- Check for standard SaaS contract terms
- Compare against best practices for data protection and SLAs
Output:
CONTRACT REVIEW REPORT ====================== Type: SaaS Service Agreement Parties: Your Company <-> CloudTool Inc. Term: 12 months, auto-renews RISK ANALYSIS: ------------------------------------------------- | Clause | Risk | Issue | |---------------------|----------|----------------------------------------| | SLA / Uptime | HIGH | No uptime guarantee or credits defined | | Data Processing | HIGH | No DPA or GDPR compliance language | | Liability Cap | MEDIUM | Capped at 1 month of fees (very low) | | Termination | MEDIUM | 90-day notice required to cancel | | Auto-renewal | LOW | 30-day opt-out window before renewal | TOP RECOMMENDATIONS: 1. Require a 99.9% uptime SLA with service credits 2. Add a Data Processing Agreement as an appendix 3. Negotiate liability cap to at least 12 months of fees 4. Reduce cancellation notice to 30 days
Guidelines
- Always specify that this is an AI-assisted review and not legal advice. Recommend the user consult a lawyer for final decisions.
- Present risks in order of severity (High first) so the most important issues are seen immediately.
- When clauses are ambiguous, flag them as risks rather than assuming favorable interpretation.
- For multi-party contracts, analyze obligations and risks from the perspective of the user's party.
- If the contract references external documents (exhibits, schedules, addenda), note which ones are missing from the review.
- Compare terms against standard market practices for the contract type when assessing reasonableness.
- Keep the report concise. Use tables for clause analysis and bullet points for recommendations.