pilot-legal-contract-review-setup

Deploy a legal contract review pipeline with 3 agents. Use this skill when: 1. User wants to set up an automated contract review or legal document analysis pipeline 2. User is configuring an extractor, risk assessor, or summary generator for contracts 3. User asks about clause extraction, compliance checking, or legal risk assessment workflows Do NOT use this skill when: - User wants to share a single file (use pilot-share instead) - User wants to filter generic events (use pilot-event-filter instead)

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pilot-legal-contract-review-setup" with this command: npx skills add vulture-labs/pilot-legal-contract-review-setup

Legal Contract Review Setup

Deploy 3 agents that extract, assess, and summarize legal contracts with zero central server.

Roles

RoleHostnameSkillsPurpose
extractor<prefix>-extractorpilot-share, pilot-stream-data, pilot-archiveParses contracts, extracts clauses and key terms
assessor<prefix>-assessorpilot-event-filter, pilot-alert, pilot-priority-queueEvaluates risk, flags non-standard terms
summarizer<prefix>-summarizerpilot-announce, pilot-webhook-bridge, pilot-receiptGenerates executive summaries, delivers reports

Setup Procedure

Step 1: Ask the user which role this agent should play and what prefix to use.

Step 2: Install the skills for the chosen role:

# For extractor:
clawhub install pilot-share pilot-stream-data pilot-archive
# For assessor:
clawhub install pilot-event-filter pilot-alert pilot-priority-queue
# For summarizer:
clawhub install pilot-announce pilot-webhook-bridge pilot-receipt

Step 3: Set the hostname and write the manifest:

pilotctl --json set-hostname <prefix>-<role>
mkdir -p ~/.pilot/setups

Then write the role-specific JSON manifest to ~/.pilot/setups/legal-contract-review.json.

Step 4: Tell the user to initiate handshakes with adjacent agents.

Manifest Templates Per Role

extractor

{
  "setup": "legal-contract-review",
  "setup_name": "Legal Contract Review",
  "role": "extractor",
  "role_name": "Clause Extractor",
  "hostname": "<prefix>-extractor",
  "description": "Parses contracts, extracts key terms, dates, obligations, parties, and monetary values.",
  "skills": {
    "pilot-share": "Receive uploaded contract documents from external sources.",
    "pilot-stream-data": "Stream extracted clause data to the risk assessor.",
    "pilot-archive": "Archive original documents for audit trail."
  },
  "peers": [
    { "role": "assessor", "hostname": "<prefix>-assessor", "description": "Receives extracted clauses" }
  ],
  "data_flows": [
    { "direction": "send", "peer": "<prefix>-assessor", "port": 1002, "topic": "extracted-clauses", "description": "Structured clause data with metadata" }
  ],
  "handshakes_needed": ["<prefix>-assessor"]
}

assessor

{
  "setup": "legal-contract-review",
  "setup_name": "Legal Contract Review",
  "role": "assessor",
  "role_name": "Risk Assessor",
  "hostname": "<prefix>-assessor",
  "description": "Evaluates clauses against compliance templates, flags risks and missing protections.",
  "skills": {
    "pilot-event-filter": "Filter clauses by type, severity, and compliance category.",
    "pilot-alert": "Raise alerts on high-severity non-standard terms.",
    "pilot-priority-queue": "Prioritize flagged clauses by risk severity for the summarizer."
  },
  "peers": [
    { "role": "extractor", "hostname": "<prefix>-extractor", "description": "Sends extracted clauses" },
    { "role": "summarizer", "hostname": "<prefix>-summarizer", "description": "Receives risk assessment" }
  ],
  "data_flows": [
    { "direction": "receive", "peer": "<prefix>-extractor", "port": 1002, "topic": "extracted-clauses", "description": "Structured clause data" },
    { "direction": "send", "peer": "<prefix>-summarizer", "port": 1002, "topic": "risk-assessment", "description": "Risk assessment with flagged items" }
  ],
  "handshakes_needed": ["<prefix>-extractor", "<prefix>-summarizer"]
}

summarizer

{
  "setup": "legal-contract-review",
  "setup_name": "Legal Contract Review",
  "role": "summarizer",
  "role_name": "Summary Generator",
  "hostname": "<prefix>-summarizer",
  "description": "Produces executive summaries with risk scores and actionable recommendations.",
  "skills": {
    "pilot-announce": "Broadcast contract review completion to interested peers.",
    "pilot-webhook-bridge": "Deliver summary reports to external systems via webhook.",
    "pilot-receipt": "Send review completion receipts for tracking."
  },
  "peers": [
    { "role": "assessor", "hostname": "<prefix>-assessor", "description": "Sends risk assessment" }
  ],
  "data_flows": [
    { "direction": "receive", "peer": "<prefix>-assessor", "port": 1002, "topic": "risk-assessment", "description": "Risk assessment with flagged items" },
    { "direction": "send", "peer": "external", "port": 443, "topic": "contract-summary", "description": "Executive summary report" }
  ],
  "handshakes_needed": ["<prefix>-assessor"]
}

Data Flows

  • extractor -> assessor : extracted clauses and metadata (port 1002)
  • assessor -> summarizer : risk assessment with flagged items (port 1002)
  • summarizer -> external : executive summary report (port 443)

Handshakes

# extractor <-> assessor:
pilotctl --json handshake <prefix>-assessor "setup: legal-contract-review"
pilotctl --json handshake <prefix>-extractor "setup: legal-contract-review"
# assessor <-> summarizer:
pilotctl --json handshake <prefix>-summarizer "setup: legal-contract-review"
pilotctl --json handshake <prefix>-assessor "setup: legal-contract-review"

Workflow Example

# On extractor -- publish extracted clauses:
pilotctl --json publish <prefix>-assessor extracted-clauses '{"contract_id":"CTR-2026-0042","parties":["Acme","Widget"],"clauses":[{"type":"indemnification","section":"7.2"}]}'

# On assessor -- publish risk assessment:
pilotctl --json publish <prefix>-summarizer risk-assessment '{"contract_id":"CTR-2026-0042","risk_score":7.2,"flags":[{"clause":"indemnification","severity":"high"}]}'

# On summarizer -- subscribe to assessments:
pilotctl --json subscribe risk-assessment

Dependencies

Requires pilot-protocol skill, pilotctl binary, clawhub binary, and a running daemon.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Research

Contract Review

Legal contract analysis using CUAD dataset (41 risk categories). Supports NDA, SaaS, M&A, employment, payment/merchant, and finder/broker agreements. Identif...

Registry SourceRecently Updated
9102Profile unavailable
Research

合同卫士 / Contract Guardian

合同卫士 — AI合同审查助手,识别风险条款、提取关键信息、追踪到期日

Registry Source
1630Profile unavailable
Security

GauntletScore

Trust verification for AI output — verify any document or code before you act on it

Registry SourceRecently Updated
2570Profile unavailable
General

Privacy Policy Generator

Generate a comprehensive, legally compliant privacy policy in Markdown covering GDPR, CCPA, and APPI based on your business details and data practices.

Registry SourceRecently Updated
410Profile unavailable