Ocr
Processes documents through case.dev OCR for text and table extraction. Supports PDF and image files up to 500MB with page-level and word-level output. Use when the user mentions "OCR", "text extraction", "scan document", "digitize", "extract text from PDF", or needs word-level positional data from documents.From its SKILL.md
npx -y skills add CaseMark/legal-plugin --skill ocrAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.0 KB, 711 tokens by cl100k_base, as published. Nobody here has run it
case.dev OCR
Production-grade document OCR with table extraction and word-level positional data. Processes PDFs and images (PNG, JPG, TIFF, BMP, WEBP) up to 500MB.
Requires the casedev CLI. See setup skill for installation and auth.
Process a Document
Submit a document URL for OCR:
casedev ocr process --document-url "https://example.com/contract.pdf" --json
Flags:
--document-url/--url(required) — publicly accessible URL or presigned vault URL--document-id— optional identifier to tag the job--engine— OCR engine override
Returns a job ID and initial status.
Check Job Status
casedev ocr status JOB_ID --json
Returns: ID, status, page count, created/completed timestamps.
Statuses: queued -> processing -> completed or failed.
Watch Until Complete
casedev ocr watch JOB_ID --json
Polls until the job finishes. Flags:
--interval/-i— poll interval in seconds (default: 3)--timeout/-t— max wait in seconds (default: 900)
Word-Level Data
Retrieve word-level OCR output for a vault object:
casedev ocr words --vault VAULT_ID --object OBJECT_ID --json
This requires the document to be in a vault and have completed OCR ingestion. The object must be a PDF or image (audio/video files are rejected).
Flags:
--page— specific page number--word-start— starting word index--word-end— ending word index
Returns per-page word arrays with text, word index, and confidence scores.
Uses focused vault if set via casedev focus set --vault.
Common Workflow
OCR a document from a vault
# 1. Upload to vault (triggers automatic ingestion + OCR)
casedev vault object upload ./scanned-contract.pdf --vault VAULT_ID --json
# 2. Check ingestion status
casedev vault object list --vault VAULT_ID --json
# 3. Get word-level data
casedev ocr words --vault VAULT_ID --object OBJECT_ID --json
# 4. Get specific page range
casedev ocr words --vault VAULT_ID --object OBJECT_ID --page 3 --json
OCR an external document
# 1. Submit
casedev ocr process --document-url "https://storage.example.com/doc.pdf" --json
# 2. Watch
casedev ocr watch JOB_ID --json
Troubleshooting
"Invalid file type for OCR": OCR only supports PDFs and images (application/pdf, image/*). Check the object's content type with casedev vault object list.
"Invalid object ID for this vault": Run casedev vault object list --vault VAULT_ID to see valid object IDs.
Job stuck in "processing": Increase watch timeout with --timeout 1800. Large documents (100+ pages) take longer.
"OCR job failed": The document may be corrupted or in an unsupported format. Re-upload and retry.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.