setup
case.dev CLI
The casedev CLI is the interface to case.dev, a legal AI platform providing encrypted document vaults, production OCR, audio transcription, and legal/web/patent search.
This skill covers installation, authentication, diagnostics, and general CLI usage. For domain-specific workflows, see the companion skills: vaults, ocr, transcription, search.
Installation
# macOS (Homebrew)
brew install casemark/casedev/casedev
# macOS + Linux (shell script)
curl -fsSL https://raw.githubusercontent.com/CaseMark/homebrew-casedev/main/install.sh | sh
Or run the bundled setup script:
bash scripts/setup.sh
Verify: casedev --version
Authentication
Three methods, in order of preference:
# 1. Environment variable (best for agents)
export CASE_API_KEY=sk_case_YOUR_KEY
# 2. Store key in config
casedev auth set-key --api-key sk_case_YOUR_KEY
# 3. Browser device-flow login (interactive, use --no-open for headless)
casedev auth login --no-open
Check auth status:
casedev auth status --json
Logout:
casedev auth logout
API keys start with sk_case_. Config is stored at ~/.config/case/config.json.
Diagnostics
Run casedev doctor to check connectivity, service health, and auth:
casedev doctor --json
Checks: API URL format, root reachability, vault/OCR/voice/compute/skills health endpoints, API key validity. Use --strict to fail on warnings.
Focus (Default Targets)
Set default vault/object/project so you can omit --vault flags:
# Set focus
casedev focus set --vault VAULT_ID --object OBJECT_ID --project PROJECT_ID
# Show current focus
casedev focus show --json
# Clear
casedev focus clear --vault
casedev focus clear --all
Job Tracker
Unified job tracker for OCR and transcription jobs:
# List all tracked jobs (auto-refreshes status)
casedev jobs list --json
# Filter
casedev jobs list --type ocr --status completed --json
casedev jobs list --type transcribe --vault VAULT_ID --json
# Get details
casedev jobs get JOB_ID --type ocr --json
# Watch until complete
casedev jobs watch JOB_ID --type transcribe --interval 5 --timeout 600 --json
Use --no-refresh on jobs list to skip live status checks.
API Routes
Browse and call any case.dev API endpoint by operationId:
# List available routes
casedev routes list --json
casedev routes list --tag vault --json
casedev routes list --search "upload" --json
# Call by operationId
casedev call getVaultList --json
casedev call createVault --body '{"name":"test"}' --json
casedev call getVaultObjects --param vaultId=VAULT_ID --json
Raw API Access
For endpoints not covered by named commands:
casedev api GET /vault --json
casedev api POST /vault --body '{"name":"new-vault"}' --json
casedev api GET /ocr/v1/health --no-auth --json
casedev api POST /legal/v1/find --body '{"query":"breach of contract"}' --json
Flags: --header "name:value", --no-auth, --body <json>.
Global Flags
All commands accept:
--json— machine-readable JSON output (always use this in agent workflows)--api-url <url>— override API base URL--api-key <key>— override API key for this invocation
Troubleshooting
"No API key set": Run casedev auth set-key --api-key sk_case_... or set CASE_API_KEY env var.
Doctor shows FAIL on a health check: The specific service may be temporarily unavailable. Check the message for which service (vault, OCR, voice, compute).
"Invalid API key format": Keys must start with sk_case_.
Auth login times out: Use --timeout 120 for slower connections, or use auth set-key instead.
More from 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.
9search
Searches the web, legal databases, case law, patents, and case.dev knowledge base via the casedev CLI. Use when the user mentions "search", "legal research", "find cases", "case law", "patent search", "web search", "fetch URL", "webfetch", "legal skills", or needs to research legal topics, find similar cases, or retrieve web content.
9transcription
Transcribes audio and video files through case.dev with speaker diarization. Supports MP3, WAV, M4A, FLAC, OGG, WEBM, MP4 up to 5GB. Use when the user mentions "transcribe", "transcription", "deposition recording", "hearing audio", "speaker labels", or needs to convert audio/video to text.
5vaults
Manages case.dev encrypted document vaults for legal workflows. Creates vaults, uploads files and directories, lists and downloads objects, and runs semantic search across vault contents. Use when the user mentions "vault", "upload documents", "document storage", "download files", "vault search", or needs to manage case files and discovery documents.
3