File Storage

File Storage

CaseMgr uses content-addressable storage with SHA256 hashing for automatic deduplication.

How It Works

  • Files are stored using their SHA256 hash as identifier
  • Identical files share storage (deduplication)
  • Sharded directory structure for performance
  • MIME type detection from file extensions

Uploading Files

// From local path (server-side)
{
  "name": "upload_file",
  "arguments": {
    "case_id": "#1:0",
    "file_path": "/path/to/document.pdf"
  }
}

// From base64 content (remote)
{
  "name": "upload_file_content",
  "arguments": {
    "case_id": "#1:0",
    "filename": "document.pdf",
    "content_base64": "JVBERi0xLjQK..."
  }
}

Retrieving Files

// Get file content as base64
{
  "name": "download_file",
  "arguments": {"item_id": "#4:123"}
}

// Get filesystem path
{
  "name": "get_file_path",
  "arguments": {"item_id": "#4:123"}
}