Upload contracts. Get risk analysis, vendor intelligence, and a full renegotiation package — in under 90 seconds.
Recommendation
RENEGOTIATE
91%
confidence
Risk Score
74/100
Flags
4
Artifacts
5
6
Specialized Agents
<90s
End-to-End Pipeline
40+
Extracted Fields
$351K
Annual ROI
The problem
Procurement teams manage hundreds of contracts across email, shared drives, and spreadsheets. Auto-renewals fire silently. Renegotiation windows close before anyone finds the date.
14+ hrs/week
spent on manual contract review per manager
67% of companies
miss at least one auto-renewal per quarter
Days to weeks
from upload to actionable recommendation
Core technologies
Each one is load-bearing — remove it and the system breaks.
IBM Watsonx Orchestrate
Master Orchestrator
Coordinates all six agents in sequence, runs Risk and Research in parallel, routes uncertain fields to human review when confidence drops below 70%, and enforces the approval gate so nothing external fires without consent.
app/orchestrator/orchestrate.pyapp/routers/workflows.pyRedis Stack
State & Communication
The backbone. Contract records in Hashes for O(1) lookups. Inter-agent messages flow through Streams powering the Live Agent Feed. Sorted Sets track renewal deadlines. Vendor research cached with 24h TTL. Append-only audit log for every human action.
app/services/redis_client.pyapp/websocket/agent_feed.pyTavily
Real-Time Intelligence
Four scoped queries per vendor — company news, security incidents, pricing benchmarks, and competing alternatives. Accessed through the vasco-tavily tool inside Watsonx Orchestrate. Only vendor names are sent — no contract text or PII ever leaves.
app/agents/research.pyapp/services/tavily_client.pyThe agent pipeline
Independently testable, confidence-scored, and visible in the Live Agent Feed.
Ingestion & Classification
Classifies uploaded documents (MSA, order form, amendment) and links them to a vendor workspace.
Extraction
HUMAN REVIEWParses all documents into a structured contract record with 40+ fields. Flags uncertain fields for human confirmation instead of passing bad data forward.
Risk & Compliance
Scores risk across financial, operational, legal, and strategic dimensions. Reads directly from Redis.
Vendor Research
Calls Tavily for real-time vendor intelligence — news, pricing benchmarks, security incidents, and alternatives. Results cached in Redis for 24 hours.
Decision
Synthesizes contract terms, risk flags, and live vendor intel into a single recommendation: RENEW, RENEGOTIATE, or CANCEL — with confidence score and urgency level.
Action & Generation
Generates 5 stakeholder artifacts: Renewal Brief, Negotiation Prep, Vendor Email, CFO Summary, and Checklist. All marked Draft — nothing fires without approval.
Live pipeline
Upload 4 Zoom contracts → complete renegotiation package.
Upload 4 Zoom Documents
0:00MSA, Order Form, Amendment, Pricing Sheet. Watsonx Orchestrate creates the workflow and writes initial state to Redis.
Upload received — 4 documents — Zoom Video Communications
Ingestion Agent Classifies
0:08All 4 documents classified and linked to the Zoom vendor workspace in under 8 seconds.
Ingestion complete — 4 docs classified → Dispatching Extraction Agent
Extraction Agent Parses
0:1438 fields extracted. Notice period flagged at 58% confidence — system pauses for human confirmation.
⚠ Notice period: "60 days" — confidence 58% — User confirmed
Risk + Research Fire in Parallel
0:24Risk Agent reads from Redis → 4 flags, score 74/100. Research Agent calls Tavily → Zoom above-market pricing, 3 alternatives found.
Risk: 2 critical, 2 high · Research: price increase detected, 3 alternatives
Decision: RENEGOTIATE
0:41All inputs combined → RENEGOTIATE at 91% confidence, CRITICAL urgency, 34 days to act. Orchestrate routes to Action Agent.
RENEGOTIATE — 91% confidence — CRITICAL — 34 days to act
5 Artifacts Generated
0:52Renewal Brief, Negotiation Prep, Vendor Email, CFO Summary, Checklist. All marked Draft — Pending Approval.
5 artifacts ready for review — all DRAFT_PENDING_APPROVAL
User Approves → Complete
1:15User reviews, personalizes the email, approves all five. Orchestrate logs to Redis audit stream. Workflow complete.
All approved → Audit logged → Workflow COMPLETE
System architecture
User Interface
Next.js 16 · React 19 · Tailwind v4
FastAPI Backend
18 routes · Port 8000
IBM Watsonx Orchestrate
Dispatch · Confidence routing · Approval gate · Audit trail
Agent Pipeline
Redis Backbone
External Intelligence
Business impact
14 → 2 hrs
Weekly review time
per manager
67% → 0%
Missed auto-renewals
surfaced 30+ days early
Days → 90s
Upload to recommendation
end-to-end pipeline
$351K
Annual value
per 3-person team
ROI breakdown — 3-person team, 300 contracts
Engineering decisions
Why six agents instead of one?
Each agent is independently testable, scored, and visible in the Live Feed. A monolithic agent can't parallelize, can't show meaningful progress, and can't tell you which step failed.
Why Redis Streams for messaging?
The UI subscribes to the same stream agents write to — so the Live Agent Feed comes for free. Workflows survive restarts. Every action is auditable.
Why is the approval gate in Orchestrate?
Application-layer guardrails can be bypassed by bugs. The gate is a workflow state in Orchestrate, not a conditional in code — that's what enterprise guardrails means.
Why Tavily over generic search?
Tavily returns clean, structured results built for AI agents. Generic search returns SEO-heavy pages requiring heavy post-processing. For vendor research, it's meaningfully more accurate.