Contract Portfolio Intelligence
Performs portfolio-scale contract analysis: batch extraction of terms, obligations, and risks across a large set of agreements, plus playbook-based redlining against organizational standards.
Prerequisites
Before starting, gather:
- Contract corpus — uploaded documents (PDF, DOCX) or a vault/folder reference containing the agreements
- Analysis scope — what to extract (renewals, indemnities, payment terms, liability caps, termination rights, or custom fields)
- Playbook (if redlining) — the organization's preferred positions, fallback clauses, and non-negotiable terms
- Output format — table/spreadsheet, narrative report, or both
- Audience — who receives the output (GC, board, finance, procurement)
Workflow
Phase 1: Ingest and Classify
- Process each contract through OCR if scanned; extract full text from native PDFs and DOCX files
- Identify contract type (NDA, MSA, SaaS agreement, employment, vendor, lease, SOW, amendment, etc.)
- Detect parent-child relationships (master agreements → amendments → SOWs → change orders)
- De-duplicate — flag identical or near-identical documents
- Tag metadata: parties, effective date, governing law, contract type
Output a contract inventory table:
| # |
Document |
Type |
Parties |
Effective Date |
Governing Law |
Parent Doc |
| 1 |
Example |
MSA |
A ↔ B |
2024-01-15 |
Delaware |
— |
Phase 2: Term Extraction
For each contract, extract the following structured fields (skip fields that don't apply to the contract type):
Dates & Term
- Effective date, expiration date, term length
- Auto-renewal (yes/no), renewal notice period, notice deadline
- Termination for convenience (yes/no), notice period, cure period
Financial Terms
- Contract value / total commitment
- Payment terms (Net 30, Net 60, etc.)
- Price escalation / adjustment mechanisms
- Minimum commitments or volume thresholds
- Late payment penalties
Risk Provisions
- Indemnification — mutual vs. one-sided, carve-outs, cap
- Limitation of liability — aggregate cap, per-incident cap, excluded damages
- Insurance requirements — types, minimum coverage amounts
- Warranty — scope, duration, remedy limitations
- Governing law and dispute resolution (litigation vs. arbitration, venue)
Obligations
- Deliverables and milestones with deadlines
- Reporting or audit rights
- Data protection / security obligations
- Non-compete or exclusivity restrictions
- Confidentiality term and surviving obligations
IP & Data
- IP ownership and license-back provisions
- Data handling, return, and destruction requirements
- Usage rights post-termination
Store extracted data in a structured format (one row per contract, one column per field).
Phase 3: Portfolio Reports
Generate the reports requested by the user. Common report types:
Renewal Calendar
- All contracts with renewal/expiration dates within a specified window
- Sorted by urgency (nearest deadline first)
- Flag auto-renewals where notice deadline is approaching
- Include counterparty, contract value, and required action
Risk Matrix
- Each contract scored on risk dimensions: indemnification exposure, liability cap adequacy, insurance gaps, unfavorable termination terms
- Risk level per dimension: High / Medium / Low
- Aggregate portfolio risk summary
- Prioritized list of contracts requiring renegotiation
Obligation Tracker
- Active obligations by contract with deadlines
- Grouped by responsible team (legal, finance, ops, IT)
- Status: upcoming / due / overdue / completed
- Escalation flags for overdue items
Financial Summary
- Total portfolio commitment by period (quarterly/annual)
- Breakdown by contract type, counterparty, or business unit
- Contracts approaching minimum commitment thresholds
- Payment term distribution
Custom Extraction
- User specifies any data point via natural language prompt
- Agent extracts that field across all contracts
- Returns structured table with contract reference, extracted value, and confidence
Phase 4: Playbook Redlining
When the user provides a playbook of preferred positions:
- Parse the playbook — extract each preferred clause, its fallback positions, and non-negotiable terms
- Compare each contract against the playbook provision-by-provision:
- ✅ Matches preferred position → no action
- ⚠️ Deviates but within fallback range → flag with suggested language
- ❌ Violates non-negotiable → flag as critical, provide replacement language
- Generate a redline summary per contract:
- Section reference, current language, preferred language, risk level, recommended action
- Produce a portfolio deviation report:
- Which contracts deviate most from standards
- Most common deviations across the portfolio
- Priority queue for renegotiation based on risk × contract value
Playbook Structure
A playbook should define positions for key provisions. Example structure:
Provision: Limitation of Liability
Preferred: Mutual cap at 12 months of fees; carve-outs for IP infringement and confidentiality breach
Fallback: Mutual cap at 24 months of fees
Non-negotiable: Must have mutual cap; unlimited liability is rejected
Provision: Indemnification
Preferred: Mutual indemnification for third-party IP claims and confidentiality breach
Fallback: One-sided indemnification acceptable if capped
Non-negotiable: Must include IP infringement indemnity
Provision: Termination for Convenience
Preferred: Either party, 30 days written notice
Fallback: 60-90 days notice acceptable
Non-negotiable: Must have termination for convenience right
Quality Checks
After generating any output:
Troubleshooting
| Issue |
Resolution |
| Scanned PDFs with poor OCR quality |
Re-process with enhanced OCR; flag low-confidence extractions for manual review |
| Contract is an amendment with no standalone terms |
Link to parent agreement; extract only the modified terms and note inherited provisions |
| Ambiguous or missing provisions |
Mark as "Not Found" or "Ambiguous" — never guess; flag for human review |
| Conflicting terms between parent and amendment |
The amendment controls unless it explicitly preserves the original; flag the conflict |
| Very large corpus (10,000+) |
Process in batches by contract type or counterparty; produce interim reports |
| Playbook doesn't cover a provision found in contracts |
Note the gap; suggest adding the provision to the playbook |
1---2name: contract-portfolio-intelligence3description: Analyzes an entire portfolio of contracts at scale — extracting key terms, obligations, renewal dates, risk provisions, and financial commitments across hundreds or thousands of agreements simultaneously. Produces structured reports, obligation trackers, renewal calendars, and risk matrices. Also supports playbook-based redlining where contracts are compared against preferred positions and automatically marked up. Use when an in-house legal team, GC, legal ops, procurement, or finance team needs portfolio-wide visibility into contract terms, upcoming renewals, obligation compliance, or batch contract review against organizational standards.4---5
6# Contract Portfolio Intelligence
7
8Performs portfolio-scale contract analysis: batch extraction of terms, obligations, and risks across a large set of agreements, plus playbook-based redlining against organizational standards.
9
10## Prerequisites
11
12Before starting, gather:
13
141. **Contract corpus** — uploaded documents (PDF, DOCX) or a vault/folder reference containing the agreements
152. **Analysis scope** — what to extract (renewals, indemnities, payment terms, liability caps, termination rights, or custom fields)
163. **Playbook** (if redlining) — the organization's preferred positions, fallback clauses, and non-negotiable terms
174. **Output format** — table/spreadsheet, narrative report, or both
185. **Audience** — who receives the output (GC, board, finance, procurement)
19
20## Workflow
21
22### Phase 1: Ingest and Classify
23
241. Process each contract through OCR if scanned; extract full text from native PDFs and DOCX files
252. Identify contract type (NDA, MSA, SaaS agreement, employment, vendor, lease, SOW, amendment, etc.)
263. Detect parent-child relationships (master agreements → amendments → SOWs → change orders)
274. De-duplicate — flag identical or near-identical documents
285. Tag metadata: parties, effective date, governing law, contract type
29
30Output a contract inventory table:
31
32| # | Document | Type | Parties | Effective Date | Governing Law | Parent Doc |
33|---|----------|------|---------|----------------|---------------|------------|
34| 1 | Example | MSA | A ↔ B | 2024-01-15 | Delaware | — |
35
36### Phase 2: Term Extraction
37
38For each contract, extract the following structured fields (skip fields that don't apply to the contract type):
39
40**Dates & Term**
41- Effective date, expiration date, term length
42- Auto-renewal (yes/no), renewal notice period, notice deadline
43- Termination for convenience (yes/no), notice period, cure period
44
45**Financial Terms**
46- Contract value / total commitment
47- Payment terms (Net 30, Net 60, etc.)
48- Price escalation / adjustment mechanisms
49- Minimum commitments or volume thresholds
50- Late payment penalties
51
52**Risk Provisions**
53- Indemnification — mutual vs. one-sided, carve-outs, cap
54- Limitation of liability — aggregate cap, per-incident cap, excluded damages
55- Insurance requirements — types, minimum coverage amounts
56- Warranty — scope, duration, remedy limitations
57- Governing law and dispute resolution (litigation vs. arbitration, venue)
58
59**Obligations**
60- Deliverables and milestones with deadlines
61- Reporting or audit rights
62- Data protection / security obligations
63- Non-compete or exclusivity restrictions
64- Confidentiality term and surviving obligations
65
66**IP & Data**
67- IP ownership and license-back provisions
68- Data handling, return, and destruction requirements
69- Usage rights post-termination
70
71Store extracted data in a structured format (one row per contract, one column per field).
72
73### Phase 3: Portfolio Reports
74
75Generate the reports requested by the user. Common report types:
76
77**Renewal Calendar**
78- All contracts with renewal/expiration dates within a specified window
79- Sorted by urgency (nearest deadline first)
80- Flag auto-renewals where notice deadline is approaching
81- Include counterparty, contract value, and required action
82
83**Risk Matrix**
84- Each contract scored on risk dimensions: indemnification exposure, liability cap adequacy, insurance gaps, unfavorable termination terms
85- Risk level per dimension: High / Medium / Low
86- Aggregate portfolio risk summary
87- Prioritized list of contracts requiring renegotiation
88
89**Obligation Tracker**
90- Active obligations by contract with deadlines
91- Grouped by responsible team (legal, finance, ops, IT)
92- Status: upcoming / due / overdue / completed
93- Escalation flags for overdue items
94
95**Financial Summary**
96- Total portfolio commitment by period (quarterly/annual)
97- Breakdown by contract type, counterparty, or business unit
98- Contracts approaching minimum commitment thresholds
99- Payment term distribution
100
101**Custom Extraction**
102- User specifies any data point via natural language prompt
103- Agent extracts that field across all contracts
104- Returns structured table with contract reference, extracted value, and confidence
105
106### Phase 4: Playbook Redlining
107
108When the user provides a playbook of preferred positions:
109
1101. **Parse the playbook** — extract each preferred clause, its fallback positions, and non-negotiable terms
1112. **Compare each contract** against the playbook provision-by-provision:
112 - ✅ Matches preferred position → no action
113 - ⚠️ Deviates but within fallback range → flag with suggested language
114 - ❌ Violates non-negotiable → flag as critical, provide replacement language
1153. **Generate a redline summary** per contract:
116 - Section reference, current language, preferred language, risk level, recommended action
1174. **Produce a portfolio deviation report**:
118 - Which contracts deviate most from standards
119 - Most common deviations across the portfolio
120 - Priority queue for renegotiation based on risk × contract value
121
122### Playbook Structure
123
124A playbook should define positions for key provisions. Example structure:
125
126```
127Provision: Limitation of Liability
128 Preferred: Mutual cap at 12 months of fees; carve-outs for IP infringement and confidentiality breach
129 Fallback: Mutual cap at 24 months of fees
130 Non-negotiable: Must have mutual cap; unlimited liability is rejected
131
132Provision: Indemnification
133 Preferred: Mutual indemnification for third-party IP claims and confidentiality breach
134 Fallback: One-sided indemnification acceptable if capped
135 Non-negotiable: Must include IP infringement indemnity
136
137Provision: Termination for Convenience
138 Preferred: Either party, 30 days written notice
139 Fallback: 60-90 days notice acceptable
140 Non-negotiable: Must have termination for convenience right
141```
142
143## Quality Checks
144
145After generating any output:
146
147- [ ] Every contract in the corpus appears in the inventory — none skipped
148- [ ] Extracted dates are validated (no future effective dates on executed contracts, expiration after effective)
149- [ ] Parent-child relationships are logically consistent
150- [ ] Risk scores are justified with specific clause references
151- [ ] Renewal deadlines account for notice periods (deadline = expiration minus notice period)
152- [ ] Financial figures are in consistent currency and units
153- [ ] Playbook deviations cite the specific section and language from both the contract and the playbook
154
155## Troubleshooting
156
157| Issue | Resolution |
158|-------|------------|
159| Scanned PDFs with poor OCR quality | Re-process with enhanced OCR; flag low-confidence extractions for manual review |
160| Contract is an amendment with no standalone terms | Link to parent agreement; extract only the modified terms and note inherited provisions |
161| Ambiguous or missing provisions | Mark as "Not Found" or "Ambiguous" — never guess; flag for human review |
162| Conflicting terms between parent and amendment | The amendment controls unless it explicitly preserves the original; flag the conflict |
163| Very large corpus (10,000+) | Process in batches by contract type or counterparty; produce interim reports |
164| Playbook doesn't cover a provision found in contracts | Note the gap; suggest adding the provision to the playbook |