CLI (Command Line Interface)
The Ente CLI is a command-line tool for advanced users that provides programmatic access to Ente Photos. It's particularly useful for automation, server environments, and power users who prefer terminal-based tools.
What is the CLI?
The Ente CLI allows you to:
- Export your entire library or specific albums to local storage
- Set up automated exports with cron jobs
- Sync data to NAS or other storage systems
- Perform bulk operations programmatically
Why use the CLI?
The CLI is particularly useful for:
- Regular automated backups to local/NAS storage
- Server-to-server transfers without a GUI
- Power users who prefer command-line tools
- Scheduled tasks using cron or similar schedulers
- Scripting and automation workflows
Installation
Ente's CLI is distributed directly over GitHub.
Steps:
- Go to the CLI releases page
- Download the appropriate version for your platform:
- Linux (x64, ARM64)
- macOS (Intel, Apple Silicon)
- Windows (x64)
- Follow the installation instructions in the CLI README
Basic usage
Authentication
Before using the CLI, you need to authenticate:
ente account login
This will prompt for your email and password, then store your session securely.
Exporting photos
The CLI supports incremental exports, downloading only new or changed files:
# Export all photos
ente export
# Export to specific directory
ente export --dir /path/to/backup
# Export specific album
ente export --album "Album Name"
Key features:
- Incremental exports (only new/changed files)
- Gracefully handles interruptions
- Safe to stop and restart without re-downloading
- Preserves album structure and metadata
For complete command documentation, see the CLI README.
Automated exports
Setting up cron jobs
You can automate exports using cron (Linux/macOS) or Task Scheduler (Windows).
Example cron job for daily export at 2 AM:
0 2 * * * /usr/local/bin/ente export --dir /nas/ente-backup
Steps to set up:
- Open crontab editor:
crontab -e
- Add the cron job line
- Save and exit
- Verify with:
crontab -l
NAS sync setup
The recommended approach for keeping NAS and Ente synced is to use the CLI to pull data from Ente to your NAS:
Setup:
- Install the CLI on your NAS or a machine that can access it
- Authenticate the CLI with your Ente account
- Set up a cron job to run periodic exports
- Use the CLI's incremental export feature to keep data synced
Example for daily NAS sync:
0 2 * * * /usr/local/bin/ente export --dir /nas/ente-backup
Important: Two-way sync is not currently supported. The CLI only pulls data from Ente to local storage - changes to local files won't sync back to Ente.
Export details
Album structure preservation
Exports maintain your exact album structure from Ente. Each album becomes a separate folder.
Metadata handling
Metadata is exported as JSON files in the same format as Google Takeout, making it compatible with tools that support Google Takeout imports.
Format:
photo.jpg
metadata/photo.jpg.json
Learn more in the Export feature guide.
CLI vs Desktop export
Feature | CLI | Desktop App |
---|---|---|
Platform | All platforms (terminal) | Desktop GUI |
Automation | ✅ Cron jobs, scripts | ✅ Continuous export |
Server use | ✅ Headless servers | ❌ Requires GUI |
Album selection | Command line flags | GUI settings |
Incremental | ✅ | ✅ |
Metadata | ✅ | ✅ |
When to use CLI:
- Server environments without GUI
- Scheduled automated backups
- Custom scripting workflows
- Power users who prefer terminal
When to use Desktop:
- Visual interface preferred
- Continuous background export
- One-time setup without scripting
Source code and development
The CLI is open source and part of the Ente project:
- Source code: GitHub
- Documentation: CLI README
- Report issues: GitHub Issues
You can review, contribute to, or extend the CLI for your specific needs.
Related FAQs
- What is the Ente CLI?
- How do I install the CLI?
- How do I export photos with CLI?
- How do I sync NAS and Ente?
- CLI not found after installation
- CLI authentication issues
- CLI export interruptions
- NAS export issues with CLI
Related topics
- Export - Desktop/web export feature
- Watch folders - Automatic uploads