Get the FREE Ultimate OpenClaw Setup Guide →

vaults

Scanned
npx machina-cli add skill CaseMark/legal-plugin/vaults --openclaw
Files (1)
SKILL.md
3.7 KB

case.dev Vaults

Encrypted document storage with automatic OCR, chunking, and semantic search. Each vault is an isolated container for a case, project, or document collection.

Requires the casedev CLI. See setup skill for installation and auth.

Create a Vault

casedev vault create --name "Smith v Jones Discovery" --description "Phase 1 documents" --json

Flags:

  • --name / -n (required)
  • --description / -d
  • --disable-graph — skip knowledge graph construction
  • --disable-indexing — skip automatic ingestion (upload-only mode)

List Vaults

casedev vault list --json
casedev vault list --wide --json   # includes description column

Get Vault Details

casedev vault get VAULT_ID --json

Also accepts focused vault if set via casedev focus set --vault VAULT_ID.

Upload Files

Single file

casedev vault object upload ./contract.pdf --vault VAULT_ID --json

Flags: --name (override filename), --content-type, --no-ingest (skip indexing).

Directory (recursive)

casedev vault upload ./discovery-docs/ --vault VAULT_ID --json

Preserves folder structure. Each file gets a presigned URL upload with confirmation. Use --no-ingest to upload without triggering indexing. Use --content-type to force a MIME type for all files.

List Objects in a Vault

casedev vault object list --vault VAULT_ID --json

Returns: object ID, filename, ingestion status, size.

Download Files

# Download a single object
casedev vault download --vault VAULT_ID --object OBJECT_ID --out ./output/ --json

# Download all objects
casedev vault download --vault VAULT_ID --out ./all-docs/ --json

# Download by path prefix
casedev vault download --vault VAULT_ID --path "exhibits/" --out ./exhibits/ --json

Semantic Search

casedev search vault "force majeure clause" --vault VAULT_ID --json

Search methods:

  • --method hybrid (default) — combines vector + keyword search
  • --method fast — keyword-only, faster
  • --method global — cross-vault if supported

Additional flags:

  • --limit / -l — max results (default 10)
  • --object OBJECT_ID — restrict search to specific object(s), repeatable

Returns: answer summary, source documents, matching chunks with page ranges and scores.

If hybrid mode returns a server error, retry with --method fast.

Common Workflows

Upload and search a case file set

# 1. Create vault
casedev vault create --name "Acme v Beta" --json

# 2. Upload documents
casedev vault upload ./case-files/ --vault VAULT_ID --json

# 3. Wait for ingestion (check object status)
casedev vault object list --vault VAULT_ID --json

# 4. Search
casedev search vault "indemnification obligations" --vault VAULT_ID --json

Focus workflow (skip --vault on every command)

casedev focus set --vault VAULT_ID
casedev vault object list --json
casedev search vault "damages calculation" --json
casedev vault download --object OBJ_ID --out ./downloads/ --json

Troubleshooting

"Missing vault ID": Provide --vault VAULT_ID or set focus with casedev focus set --vault VAULT_ID.

Upload fails with HTTP 4xx: Check file size (max 500MB per object), verify vault ID exists, confirm auth.

Search returns no results: Ensure objects have completed ingestion (status: "completed" in object list). Try --method fast if hybrid fails.

Source

git clone https://github.com/CaseMark/legal-plugin/blob/main/vaults/SKILL.mdView on GitHub

Overview

Vaults provides encrypted document storage for legal workflows with automatic OCR, chunking, and semantic search. It supports creating vaults, uploading files or directories, listing and downloading objects, and performing semantic search across vault contents. Each vault is an isolated container for a case, project, or document collection managed via the case.dev CLI.

How This Skill Works

Create a vault with the casedev vault create command, supplying a name and optional description. Upload files or directories (recursively) to the vault, with options to preserve folder structure, set content-type, or skip ingestion. Perform semantic searches using casedev search vault with method options (hybrid, fast, global); results include an answer summary, sources, and matching chunks with page ranges and scores.

When to Use It

  • When starting a new matter and need an encrypted vault for all related documents.
  • When uploading a single document to an existing vault.
  • When uploading an entire discovery/docs folder and preserving folder structure.
  • When you need to download one or all objects from a vault.
  • When you want to semantically search vault contents for a specific clause or topic.

Quick Start

  1. Step 1: Create vault: casedev vault create --name "Acme v Beta" --json
  2. Step 2: Upload documents: casedev vault upload ./case-files/ --vault VAULT_ID --json
  3. Step 3: Search: casedev search vault "indemnification obligations" --vault VAULT_ID --json

Best Practices

  • Use descriptive vault names and descriptions to simplify future searches.
  • Use --no-ingest for large batches to upload without triggering indexing until ready.
  • Check object ingestion status with vault object list before running searches.
  • Use the focus workflow to avoid repeating --vault on every command.
  • Set MIME types with --content-type when appropriate and mind the 500MB per object limit; handle 4xx errors gracefully.

Example Use Cases

  • Create a vault for a case and upload a full case-files folder, then run a search for indemnification obligations: casedev vault create --name "Smith v Jones Discovery" --json; casedev vault upload ./case-files/ --vault VAULT_ID --json; casedev search vault "indemnification obligations" --vault VAULT_ID --json
  • Upload a discovery-docs directory while preserving folder structure: casedev vault upload ./discovery-docs/ --vault VAULT_ID --json
  • List vault objects to verify ingestion status: casedev vault object list --vault VAULT_ID --json
  • Perform a semantic search across a vault for a specific clause using hybrid default: casedev search vault "force majeure clause" --vault VAULT_ID --json
  • Download all documents from a vault to a local folder: casedev vault download --vault VAULT_ID --out ./all-docs/ --json

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers