Welcome to Cloudstic CLI
Cloudstic is a content-addressable backup tool that creates encrypted, deduplicated snapshots of your files from local directories, Google Drive, OneDrive, or SFTP servers and stores them securely on local storage, Amazon S3, Backblaze B2, or SFTP servers.Quick Start
Get your first backup running in under 5 minutes
Installation
Install Cloudstic on macOS, Linux, or Windows
User Guide
Complete command reference and advanced usage
Cloud Service
Zero-ops managed backup solution
Key Features
Cloudstic CLI is built for security, efficiency, and flexibility:Encrypted by Default
Encrypted by Default
All backup data is encrypted with AES-256-GCM before leaving your machine. Choose from multiple authentication methods:
- Password-based encryption with Argon2id key derivation
- Platform keys for automation and CI/CD workflows
- Recovery keys using BIP39 24-word seed phrases
- Multiple key slots allow different credentials to unlock the same repository
--no-encryption if needed.Content-Addressable Storage
Content-Addressable Storage
Files are split into chunks and stored by their SHA-256 content hash. This provides:
- Automatic deduplication across all backups
- Identical files stored only once, regardless of location or filename
- Incremental backups that only upload changed chunks
- Efficient storage that scales with unique data, not backup count
Multiple Data Sources
Multiple Data Sources
Back up from diverse sources with a single tool:
- Local directories — Backup any folder on your filesystem
- Google Drive — Full scan or incremental via Changes API
- OneDrive — Full scan or incremental via Delta API
- SFTP servers — Remote server backups
Flexible Storage Backends
Flexible Storage Backends
Store your encrypted backups wherever you need:
- Local filesystem — External drives, NAS, or local directories
- Amazon S3 — Including S3-compatible services like Cloudflare R2, MinIO, and Wasabi
- Backblaze B2 — Cost-effective cloud storage
- SFTP — Remote servers accessible via SSH
Intelligent Retention Policies
Intelligent Retention Policies
Automatically manage backup lifecycle with flexible retention rules:
--keep-last N— Keep the most recent snapshots--keep-daily N— Keep one snapshot per day--keep-weekly N— Keep one snapshot per week--keep-monthly N— Keep one snapshot per month--keep-yearly N— Keep one snapshot per year
Point-in-Time Restore
Point-in-Time Restore
Restore any file from any snapshot at any time:
- Restore entire snapshots as ZIP archives
- Extract individual files by path
- Restore entire directory subtrees
- Preview restore contents with
--dry-run - Compare snapshots with
diffcommand
How It Works
Cloudstic uses a content-addressable storage model with Merkle tree indexing:Initialize Repository
Create an encrypted repository with your chosen storage backend. A master encryption key is generated and wrapped into key slots protected by your credentials.
Backup Source
Cloudstic scans your source (local directory, cloud drive, or SFTP server), chunks files using FastCDC, and computes SHA-256 hashes for each chunk.
Deduplicate & Upload
Only new chunks are compressed (zstd), encrypted (AES-256-GCM), and uploaded. Chunks that already exist in your repository are skipped automatically.
Build Snapshot Tree
File metadata is stored in a persistent Hash Array Mapped Trie (HAMT) structure, creating an immutable snapshot that references all files and their chunks.
Use Cases
Personal Backups
Protect your documents, photos, and important files with encrypted backups to cloud storage or external drives.
Cloud Drive Protection
Create versioned, deduplicated snapshots of Google Drive or OneDrive without relying on vendor lock-in.
Development Workflows
Back up project directories with intelligent exclude patterns for
node_modules/, .git/, and build artifacts.Server Backups
Automate encrypted backups from remote SFTP servers to cost-effective cloud storage with platform key authentication.
Architecture Highlights
Cloudstic is built with a layered architecture for maximum flexibility:Store Layering:
CompressedStore → EncryptedStore → MeteredStore → [PackStore] → KeyCacheStore → BackendObject Types: All objects are content-addressed with keys like chunk/<hash>, content/<hash>, filemeta/<hash>, snapshot/<hash>Incremental Sources: Google Drive and OneDrive sources support incremental backups via change/delta APIs for dramatically faster subsequent backups.