ocr — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ocr (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
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.
Submit a document URL for OCR:
casedev ocr process --document-url "https://example.com/contract.pdf" --jsonFlags:
--document-url / --url (required) — publicly accessible URL or presigned vault URL--document-id — optional identifier to tag the job--engine — OCR engine overrideReturns a job ID and initial status.
casedev ocr status JOB_ID --jsonReturns: ID, status, page count, created/completed timestamps.
Statuses: queued -> processing -> completed or failed.
casedev ocr watch JOB_ID --jsonPolls until the job finishes. Flags:
--interval / -i — poll interval in seconds (default: 3)--timeout / -t — max wait in seconds (default: 900)Retrieve word-level OCR output for a vault object:
casedev ocr words --vault VAULT_ID --object OBJECT_ID --jsonThis 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 indexReturns per-page word arrays with text, word index, and confidence scores.
Uses focused vault if set via casedev focus set --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# 1. Submit
casedev ocr process --document-url "https://storage.example.com/doc.pdf" --json
# 2. Watch
casedev ocr watch JOB_ID --json"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.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.