Decode any insurance policy into plain English — local-first and private.
Upload a policy or quote (auto, home, renters, health, life, business) and get what's actually covered, what's excluded, your coverage gaps, whether you're over- or under-insured, the claim-filing gotchas that get payouts denied, and the exact questions to ask your agent. Compare two quotes side-by-side.
Insurance documents are written to be precise, not readable — so most people have no idea what they bought until a claim is denied. Clausa reads a policy the way a seasoned broker would and explains it in plain language. The value is the encoded underwriting know-how (coverage taxonomies, exclusion patterns, gap benchmarks, claim pitfalls) — not generic summarization.
It's an Agent Skill (works in Claude Code, claude.ai, the API, or any self-hosted assistant) and a standalone self-hosted web app.
Your SSN, policy number, DOB, and VIN never need to reach a model to explain your coverage.
- Local-first — runs fully offline against a local model (Ollama / vLLM / llama.cpp). Nothing leaves your machine.
- De-identified, losslessly — coverage limits/deductibles/exclusions aren't PII, so analysis runs on a masked copy with zero analytical loss.
- No retention — your document isn't kept; only an optional, de-identified profile is stored if you want renewal reminders.
- No exfiltration — the skill declares
allowed-toolswith no web tool; the standalone server binds to127.0.0.1and only calls the local model you configure.
- 📄 Decode — coverages, limits, exclusions, conditions in plain English
⚠️ Gap analysis — under/over-insurance vs. real benchmarks, ranked by severity- 🧾 Claim gotchas — notice windows, % deductibles, ACV depreciation, vacancy clauses
- ❓ Questions to ask — tailored to your numbers, not generic
- ⚖️ Compare — two quotes/policies side-by-side
- 📆 Follow-ups — calendar
.icsrenewal reminder, task list, email draft, memory profile - 🖥️ Self-hosted UI — drag-drop a PDF, see the de-identified preview, get an interactive report
PDF ──extract──► full text ──de-identify──► masked text ──► MODEL ──► report
│ │
(SSN, policy#, DOB, VIN masked before the model) follow-ups:
.ics · tasks · email · profile
git clone https://github.com/aks-builds/clausa.git
cd clausa
pip install -r requirements.txt
# generate a sample policy to try
python scripts/make_sample.py # -> sample_policy.pdf
# 1) privacy-first decode (extract + de-identify, all local)
python scripts/decode.py sample_policy.pdf --workdir run
# 2) optional: rich self-hosted UI
python scripts/serve.py # -> http://127.0.0.1:8765See HOW-TO-RUN.md for the three run modes, OCR setup, and local-model configuration.
Drop the repo into your assistant's skills directory (folder name clausa):
- Claude Code: copy to
~/.claude/skills/clausa/(or.claude/skills/clausa/) - claude.ai / API: upload via the Skills capability
- Then just say "decode this policy" and attach a PDF.
clausa/
├── SKILL.md entry point (rules, pipeline, output contract)
├── references/ the domain expertise (coverage, exclusions, gaps, gotchas…)
├── scripts/ decode · followups · serve · extract_policy · redact_pii · make_sample
├── ui/index.html self-hosted rich frontend
├── assets/ schema.json · report_template.html
└── tests/ smoke tests (run by CI)
Clausa provides an educational explanation of your document. It is not insurance, legal, or financial advice. Coverage rules and benchmarks vary by state, insurer, and your situation. Confirm with your documents and a licensed professional before changing any coverage.
PRs welcome — see CONTRIBUTING.md. Found a security issue? See SECURITY.md. Licensed under MIT.