Codex v1 local-input note: This migrated skill supports local files and pasted text by default. References to Drive, CLM IDs, Slack, Westlaw, iManage, Ironclad, eDiscovery, dockets, or other remote systems require a separately configured Codex connector/MCP server. When a connector is unavailable, ask for a local export, local file path, or pasted excerpts. If config/local/codex-for-legal/<practice>/CLAUDE.md is missing, ask the user to run the relevant cold-start-interview or customize skill and copy from config/templates/codex-for-legal/<practice>/CLAUDE.md.
$commercial-legal:review
Reviews an inbound agreement against the playbook in config/local/codex-for-legal/commercial-legal/CLAUDE.md. Identifies the agreement structure from titles, selects the appropriate skill(s), and — if confirm_routing is enabled — checks with the user before proceeding.
Instructions
Load config/local/codex-for-legal/commercial-legal/CLAUDE.md. If the file is missing or placeholders are present, stop and prompt: "Run $commercial-legal:cold-start-interview first — I need to learn your playbook before I can review against it."
Also read config/local/codex-for-legal/commercial-legal/CLAUDE.md → ## Review preferences → confirm_routing. If the field is missing, treat it as true.
Get the agreement: From file path, local file path or pasted text (Drive requires a separately configured connector), local CLM export or pasted text (CLM connector required for IDs), or pasted text. If none provided, ask.
Read the document structure — titles first.
Before reading the body, extract:
- The main agreement title (e.g., "Master Services Agreement", "Non-Disclosure Agreement")
- All exhibit, schedule, addendum, and attachment titles (e.g., "Exhibit A — Data Processing Addendum", "Schedule 1 — Subscription Order Form", "Annex B — Service Level Agreement")
This is the routing signal. Do not rely on body keywords alone — a 40-page MSA with "confidential" throughout is not an NDA.
Select the skill(s) based on document structure.
Map each identified document or section to a skill:
| Document / section title contains |
Skill |
| Non-Disclosure, NDA, Confidentiality Agreement (as the main agreement) |
nda-review |
| Master Services Agreement, Professional Services, Statement of Work, Consulting Agreement |
vendor-agreement-review |
| Subscription, SaaS, Cloud Services, Order Form with auto-renewal, Software License with recurring fees |
saas-msa-review (overlay on vendor-agreement-review) |
| Data Processing Addendum, DPA, Data Processing Agreement (as exhibit or standalone) |
note for vendor-agreement-review → data protection section |
| Service Level Agreement, SLA (as exhibit) |
note for saas-msa-review → SLA section |
Multiple skills may apply. Common combinations:
- MSA + DPA exhibit → vendor-agreement-review, with DPA noted
- SaaS subscription + Order Form + SLA exhibit → saas-msa-review (covers all three)
- MSA + Order Form with auto-renewal → vendor-agreement-review + saas-msa-review overlay
When the structure is genuinely ambiguous after reading titles (e.g., a document titled "Agreement" with no exhibits listed), read the first two pages of the body to resolve it — then stop and route.
Confirm routing if enabled.
If confirm_routing is true in config/local/codex-for-legal/commercial-legal/CLAUDE.md (or field is absent):
I'm going to review this as: [agreement type(s)].
Documents identified:
- [Main agreement title] → [skill]
- [Exhibit A title] → [how it will be handled]
- [Exhibit B title] → [how it will be handled]
Sound right? (yes / no — or tell me what I got wrong)
Wait for confirmation before proceeding. If the user corrects the routing, apply their instruction and proceed.
If confirm_routing is false: proceed silently. Log the routing decision at the top of the review memo so the user can see what was applied.
Run the skill(s). Follow each skill's workflow fully. If multiple skills apply, run them in sequence and integrate the output into a single memo — don't produce separate memos.
Check for escalations: If any issue exceeds the reviewer's authority per the config/local/codex-for-legal/commercial-legal/CLAUDE.md matrix, invoke escalation-flagger to route and draft the ask.
Offer follow-ups:
- Stakeholder summary for the business owner
- Redline .docx with tracked changes
- [CLM] record creation (if connected)
- Add to renewal register (if auto-renewal found)
Configuring confirm_routing
Add to config/local/codex-for-legal/commercial-legal/CLAUDE.md → ## Review preferences:
## Review preferences
confirm_routing: true # Set to false to skip routing confirmation and proceed automatically
The cold-start interview should ask about this preference. Default is true — confirmation on. As trust builds, the user can set it to false.
Examples
$commercial-legal:review vendor-msa.pdf
$commercial-legal:review https://drive.google.com/file/d/ABC123
$commercial-legal:review
[paste agreement text]
Output
Full review memo per the skill's format. Routing decision logged at the top. Deviation-by-deviation, specific redline language, named approver. Saved where config/local/codex-for-legal/commercial-legal/CLAUDE.md → House style says work product goes.
1---2name: review-alexchlou3description: Review a vendor agreement, NDA, or SaaS subscription against your playbook. Identifies the agreement structure from titles, routes to the right review skill (vendor-agreement-review, nda-review, saas-msa-review), and integrates the output into a single memo. Use when the user says "review this contract", "check this MSA", "is this NDA okay", "look at this SaaS agreement", or attaches an inbound agreement for review.4license: Apache-2.05---67> Codex v1 local-input note: This migrated skill supports local files and pasted text by default. References to Drive, CLM IDs, Slack, Westlaw, iManage, Ironclad, eDiscovery, dockets, or other remote systems require a separately configured Codex connector/MCP server. When a connector is unavailable, ask for a local export, local file path, or pasted excerpts. If `config/local/codex-for-legal/<practice>/CLAUDE.md` is missing, ask the user to run the relevant `cold-start-interview` or `customize` skill and copy from `config/templates/codex-for-legal/<practice>/CLAUDE.md`.8910# $commercial-legal:review1112Reviews an inbound agreement against the playbook in `config/local/codex-for-legal/commercial-legal/CLAUDE.md`. Identifies the agreement structure from titles, selects the appropriate skill(s), and — if confirm_routing is enabled — checks with the user before proceeding.1314## Instructions15161. **Load `config/local/codex-for-legal/commercial-legal/CLAUDE.md`.** If the file is missing or placeholders are present, stop and prompt: "Run `$commercial-legal:cold-start-interview` first — I need to learn your playbook before I can review against it."1718 Also read `config/local/codex-for-legal/commercial-legal/CLAUDE.md` → `## Review preferences` → `confirm_routing`. If the field is missing, treat it as `true`.19202. **Get the agreement:** From file path, local file path or pasted text (Drive requires a separately configured connector), local CLM export or pasted text (CLM connector required for IDs), or pasted text. If none provided, ask.21223. **Read the document structure — titles first.**2324 Before reading the body, extract:25 - The main agreement title (e.g., "Master Services Agreement", "Non-Disclosure Agreement")26 - All exhibit, schedule, addendum, and attachment titles (e.g., "Exhibit A — Data Processing Addendum", "Schedule 1 — Subscription Order Form", "Annex B — Service Level Agreement")2728 This is the routing signal. Do not rely on body keywords alone — a 40-page MSA with "confidential" throughout is not an NDA.29304. **Select the skill(s) based on document structure.**3132 Map each identified document or section to a skill:3334 | Document / section title contains | Skill |35 |---|---|36 | Non-Disclosure, NDA, Confidentiality Agreement (as the *main* agreement) | **nda-review** |37 | Master Services Agreement, Professional Services, Statement of Work, Consulting Agreement | **vendor-agreement-review** |38 | Subscription, SaaS, Cloud Services, Order Form with auto-renewal, Software License with recurring fees | **saas-msa-review** (overlay on vendor-agreement-review) |39 | Data Processing Addendum, DPA, Data Processing Agreement (as exhibit or standalone) | note for **vendor-agreement-review** → data protection section |40 | Service Level Agreement, SLA (as exhibit) | note for **saas-msa-review** → SLA section |4142 Multiple skills may apply. Common combinations:43 - MSA + DPA exhibit → vendor-agreement-review, with DPA noted44 - SaaS subscription + Order Form + SLA exhibit → saas-msa-review (covers all three)45 - MSA + Order Form with auto-renewal → vendor-agreement-review + saas-msa-review overlay4647 When the structure is genuinely ambiguous after reading titles (e.g., a document titled "Agreement" with no exhibits listed), read the first two pages of the body to resolve it — then stop and route.48495. **Confirm routing if enabled.**5051 If `confirm_routing` is `true` in `config/local/codex-for-legal/commercial-legal/CLAUDE.md` (or field is absent):5253 ```54 I'm going to review this as: [agreement type(s)].5556 Documents identified:57 - [Main agreement title] → [skill]58 - [Exhibit A title] → [how it will be handled]59 - [Exhibit B title] → [how it will be handled]6061 Sound right? (yes / no — or tell me what I got wrong)62 ```6364 Wait for confirmation before proceeding. If the user corrects the routing, apply their instruction and proceed.6566 If `confirm_routing` is `false`: proceed silently. Log the routing decision at the top of the review memo so the user can see what was applied.67686. **Run the skill(s).** Follow each skill's workflow fully. If multiple skills apply, run them in sequence and integrate the output into a single memo — don't produce separate memos.69707. **Check for escalations:** If any issue exceeds the reviewer's authority per the `config/local/codex-for-legal/commercial-legal/CLAUDE.md` matrix, invoke **escalation-flagger** to route and draft the ask.71728. **Offer follow-ups:**73 - Stakeholder summary for the business owner74 - Redline .docx with tracked changes75 - [CLM] record creation (if connected)76 - Add to renewal register (if auto-renewal found)7778## Configuring confirm_routing7980Add to `config/local/codex-for-legal/commercial-legal/CLAUDE.md` → `## Review preferences`:8182```markdown83## Review preferences8485confirm_routing: true # Set to false to skip routing confirmation and proceed automatically86```8788The cold-start interview should ask about this preference. Default is `true` — confirmation on. As trust builds, the user can set it to `false`.8990## Examples9192```93$commercial-legal:review vendor-msa.pdf94```9596```97$commercial-legal:review https://drive.google.com/file/d/ABC12398```99100```101$commercial-legal:review102[paste agreement text]103```104105## Output106107Full review memo per the skill's format. Routing decision logged at the top. Deviation-by-deviation, specific redline language, named approver. Saved where `config/local/codex-for-legal/commercial-legal/CLAUDE.md` → House style says work product goes.