agentsclimarketplace

Ocr

Skill CaseMark/legal-plugin/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

Install
npx -y skills add CaseMark/legal-plugin --skill ocr

Assembled 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.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.