Agent skill

tabular-review-lawvable

Guide to analyze multiple documents (PDF, DOCX) against user-defined columns and produce a structured Excel output with citations. Use when the user wants to: (1) Extract specific information from multiple documents into a table, (2) Compare clauses or provisions across contracts, (3) Create a document review matrix with source citations. Triggers on: 'tabular review', 'document matrix', 'extract from documents', 'compare across documents', 'review multiple contracts'.

Stars 228
Forks 19

Install this agent skill to your Project

npx add-skill https://github.com/lawvable/awesome-legal-skills/tree/main/skills/tabular-review-lawvable

Metadata

Additional technical details for this skill

author
Antoine Louis (Lawvable)
license
AGPL-3.0
version
2026.01.14

SKILL.md

Tabular Review

Extract structured data from multiple documents into an Excel matrix with citations.

Required Skills

  • pdf - For reading PDF documents
  • docx - For reading Word documents
  • xlsx - For creating the Excel output

Workflow

Step 1: Gather User Requirements

Use AskUserQuestion to collect:

  1. Document folder path - Where are the documents?
  2. Output filename - Name for the Excel file
  3. Columns to extract - What information to pull from each document

Example column definitions:

- Parties: Names of all parties to the agreement
- Effective Date: When the agreement becomes effective
- Term: Duration of the agreement
- Governing Law: Jurisdiction for disputes

Step 2: Discover Documents

Use Glob to find all documents:

Glob(pattern: "**/*.pdf", path: "<folder>")
Glob(pattern: "**/*.docx", path: "<folder>")

Step 3: Process Documents in Parallel

Launch background agents to process documents concurrently. Each agent:

  • Reads assigned documents using pdf or docx skill
  • Extracts values for each column
  • Captures page/paragraph citations
  • Returns structured JSON

Launch agents:

Task(
  prompt: "<agent_prompt>",
  subagent_type: "general-purpose",
  run_in_background: true
)

Agent prompt template:

You are processing documents for a tabular review.

DOCUMENTS TO PROCESS:
<list of document paths>

COLUMNS TO EXTRACT:
<column definitions>

For each document:
1. Read the document using the pdf skill (for .pdf) or docx skill (for .docx)
2. Extract the requested information for each column
3. Note the page number (PDF) or section (DOCX) where you found the information
4. Include a brief quote (30-50 chars) showing the source text

Return your results as JSON:
{
  "results": [
    {
      "document": "<filename>",
      "path": "<absolute_path>",
      "extractions": [
        {
          "column": "<column_name>",
          "value": "<extracted_value>",
          "page": <page_number>,
          "quote": "<brief_context_quote>"
        }
      ]
    }
  ]
}

If you cannot find information for a column, set value to "Not found" and explain in the quote field.

Distribution strategy:

  • For N documents and M agents, each agent processes ceil(N/M) documents
  • Default: 10 agents maximum
  • Adjust based on document count

Step 4: Collect Results

Wait for all background agents to complete:

TaskOutput(task_id: "<agent_id>", block: true)

Aggregate all results into a single array of document extractions.

Step 5: Generate Excel Output

Invoke the xlsx skill to create the output file:

Create an Excel workbook at <output_path>:

SHEET 1: "Document Review"
- Header row: Document | <Column1> | <Column2> | ...
- Data rows: One row per document

For each extraction cell:
- Cell value: The extracted text
- Cell hyperlink: file://<document_path>#page=<N> (for PDFs)
- Cell comment: "Page <N>: '<quote>'"

SHEET 2: "Summary"
- Total documents: <count>
- Documents processed: <count>
- Extraction date: <today>

JSON Schema

Extraction result format:

json
{
  "document": "Contract_ABC.pdf",
  "path": "/path/to/Contract_ABC.pdf",
  "extractions": [
    {
      "column": "Parties",
      "value": "Acme Corp and Beta Inc",
      "page": 1,
      "quote": "entered into between Acme Corp and Beta Inc"
    },
    {
      "column": "Effective Date",
      "value": "January 15, 2025",
      "page": 1,
      "quote": "effective as of January 15, 2025"
    }
  ]
}

Excel Output Format

Cell with citation:

  • Value: "Acme Corp and Beta Inc"
  • Hyperlink: file:///path/to/Contract_ABC.pdf#page=1
  • Comment: Page 1: "entered into between Acme Corp and Beta Inc"

Color coding (optional):

  • Green: Value found with high confidence
  • Yellow: Value found but uncertain
  • Red: Value not found

Error Handling

Scenario Action
Document unreadable Log error, mark row as failed, continue
Column not found Set value to "Not found", explain in comment
Agent timeout Collect partial results, note incomplete
Missing skill Prompt user to install required skill

Example Usage

User: I want to do a tabular review of my contracts

Claude: [Uses AskUserQuestion]
  - What folder contains your documents?
  - What should I name the output Excel file?
  - What columns do you want to extract?

User: ~/Contracts, review.xlsx, Parties/Date/Term/Governing Law

Claude: [Discovers 15 documents via Glob]
Claude: [Launches 5 background agents, 3 docs each]
Claude: [Collects results via TaskOutput]
Claude: [Creates review.xlsx via xlsx skill]

Output: review.xlsx with 15 rows, 4 columns, hyperlinks and citations

Expand your agent's capabilities with these related and highly-rated skills.

lawvable/awesome-legal-skills

docx-processing-anthropic

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.

228 19
Explore
lawvable/awesome-legal-skills

privacy-policy-malik-taiar

Guide for drafting privacy policies compliant with GDPR. Includes CNIL 2020 recommendations, a reference template, and best practices. Use when drafting or revising a privacy policy for a website or application.

228 19
Explore
lawvable/awesome-legal-skills

xlsx-processing-anthropic

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.

228 19
Explore
lawvable/awesome-legal-skills

legal-simulation-patrick-munro

Framework for demonstrating AI capabilities in legal contexts. Provides detailed personas across tenant law, business contracts, startup disputes, employment claims, and consumer protection with progressive complexity scenarios. Use when: (1) Demonstrating AI-powered legal triage or intake systems, (2) Showcasing responsible AI-assisted client interactions, (3) Training staff on appropriate AI use in legal contexts, (4) Creating realistic scenarios for legal tech presentations, (5) Developing educational materials about AI in legal services, or (6) Testing AI-powered legal information systems in controlled environments.

228 19
Explore
lawvable/awesome-legal-skills

contract-review-anthropic

Review contracts against your organization's negotiation playbook, flagging deviations and generating redline suggestions. Use when reviewing vendor contracts, customer agreements, or any commercial agreement where you need clause-by-clause analysis against standard positions.

228 19
Explore
lawvable/awesome-legal-skills

cookie-policy-malik-taiar

Guide for drafting cookie policies compliant with GDPR and the ePrivacy Directive. Includes CNIL 2020 recommendations, a reference template, and best practices. Use when drafting or revising a cookie policy for a website or application.

228 19
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results