Manage Earth Engine Assets
Like
a Power User.
geeadd extends the Google Earth Engine CLI with powerful batch operations. Recursively copy, move, and delete assets, manage permissions, and query quotas with a modern, structured interface.
Main Interface
The geeadd tool uses a grouped command structure. Run geeadd --help to see
the available groups.
Usage: geeadd [OPTIONS] COMMAND [ARGS]...
Google Earth Engine Batch Asset Manager with Addons
A modern CLI tool for managing GEE assets, tasks, and projects.
Options:
--version Show the version and exit.
-h, --help Show this message and exit.
Commands:
readme Open the geeadd documentation webpage
projects Manage Earth Engine projects
assets Manage Earth Engine assets
tasks Manage Earth Engine tasks
utils Utility commands
Installation
You can install `geeadd` using pip, git, or build it from source using `pyproject.toml`.
Method 1: PyPI (Recommended)
pip install geeadd
Method 2: GitHub Source
git clone https://github.com/samapriya/gee_asset_manager_addon.git
cd gee_asset_manager_addon
pip install .
Requirement: Ensure you have the Earth Engine Python API installed and
authenticated via earthengine authenticate.
Migration Guide: v1.2.1 to 2.0.0
Version 2.0.0 organizes commands into logical groups. Click a group below to see how the commands have changed.
Projects Group
Quota, Enabled Projects,
Dashboards
Projects Group
Quota, Enabled Projects, Dashboards
| Old Command | New Command |
|---|---|
| geeadd quota | geeadd projects quota |
| geeadd projects | geeadd projects enabled |
| geeadd projects_dash | geeadd projects dashboard |
Assets Group
Copy, Move, Delete, Access,
Size
Assets Group
Copy, Move, Delete, Access, Size
| Old Command | New Command |
|---|---|
| geeadd copy | geeadd assets copy |
| geeadd move | geeadd assets move |
| geeadd delete | geeadd assets delete |
| geeadd delete_metadata | geeadd assets delete-meta |
| geeadd access | geeadd assets access |
| geeadd assetsize | geeadd assets size |
Tasks Group
List, Status, Cancel
Tasks Group
List, Status, Cancel
| Old Command | New Command |
|---|---|
| geeadd tasks | geeadd tasks list |
| geeadd cancel | geeadd tasks cancel |
Utils Group
Search, Reports, App2Script
Utils Group
Search, Reports, App2Script
| Old Command | New Command |
|---|---|
| geeadd search | geeadd utils search |
| geeadd app2script | geeadd utils app2script |
| geeadd ee_report | geeadd utils report |
Quota & Configuration
The Quota tool is your primary utility for monitoring Earth Engine storage and asset counts. It automatically detects whether you are using a legacy folder or a Google Cloud Project.
geeadd projects quota
geeadd projects quota --project "projects/my-project"
(geetools) λ geeadd projects quota
Earth Engine Quota Summary
Cloud Project: projects/my-project
Storage: 231.33 GB of 250 GB
[███████████████████████████░░░] 92.5%
Assets: 4,133 of 50,000
[██░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 8.3%
Legacy Root: users/username
Storage: 7.92 TB of 10 TB
[███████████████████████░░░░░░░] 79.2%
Assets: 57,271 of 90,000
[███████████████████░░░░░░░░░░░] 63.6%
Enabled Projects
Quickly identify all Google Cloud Projects where you have the Earth Engine API enabled.
geeadd projects enabled
(geetools) λ geeadd projects enabled Enabled Earth Engine Projects projects/my-gee-project projects/research-project users/myusername
Project Dashboard
Creates an interactive HTML dashboard summarizing your projects, their storage usage, and asset counts in a visual format.
geeadd projects dashboard or geeadd projects dashboard --outdir ./my_dashboard.html
Earth Engine Projects
Overview of your Google Earth Engine enabled projects
carmen-sandiego
andes-cache
Asset Info
Display detailed information about an Earth Engine asset with beautiful formatting.
geeadd assets info "LANDSAT/LC08/C02/T1_L2/LC08_044034_20140318"
Copy Assets
Offers a versatile solution for copying Earth Engine assets recursively.
geeadd assets copy --initial "users/me/folder" --final "users/me/backup"
Move Assets
Recursively move assets from one location to another.
Use --no-cleanup to keep source
folders.
geeadd assets move --initial "users/me/old" --final "users/me/new"
Delete Assets
This tool will permanently remove the specified asset and all its children.
geeadd assets delete --id "users/me/folder_to_delete"
Delete Metadata
Selectively delete a specific property from the metadata associated with an asset.
geeadd assets delete-meta --asset "users/me/image" --property "description"
Permissions (ACL)
Set read/write permissions for assets recursively.
geeadd assets access --user "[email protected]" --role "reader" --asset "users/me/asset"
Asset Size
Calculates the size and item count of a collection, image, feature view, or folder.
geeadd assets size "users/me/collection"
Asset: projects/my-project/assets/my-collection Type: Image Collection Size: 45.67 GB Items: 1,234
List Tasks
View summaries of task states or filter by state (COMPLETED, READY, RUNNING, FAILED, CANCELLED).
geeadd tasks list
geeadd tasks list --state RUNNING
(geetools) λ geeadd tasks list Status Count Running 12 Pending 45 Completed 1,234 Failed 3 Cancelled 0
Cancel Tasks
Cancel specific tasks or bulk cancel by state.
geeadd tasks cancel all
geeadd tasks cancel "ABC123XYZ..."
Search Catalog
Search the GEE official catalog and the Community Catalog using keywords.
geeadd utils search --keywords "Sentinel-2" --allow-subsets
[
{
"id": "COPERNICUS/S2_SR",
"title": "Sentinel-2 MSI: MultiSpectral Instrument, Level-2A",
"provider": "European Union/ESA/Copernicus",
"tags": ["sentinel", "copernicus", "msi", "reflectance"],
"relevance_score": 0.98
}
]
App to Script
Extract the underlying JavaScript code from any public Earth Engine App URL.
geeadd utils app2script --url "https://username.users.earthengine.app/view/app" --outfile "./script.js"
Asset Report
Generate a detailed CSV or JSON report of your assets.
geeadd utils report --outfile report.csv --format csv
Color Palette Generator NEW
Generate ColorBrewer palettes for your visualizations. Supports JSON, Hex, CSS, Python, and JS output formats.
geeadd utils palette --name Blues --classes 5 --copy
geeadd utils palette --list
Examples & Guides
Real-world workflows and best practices to help you get the most out of geeadd.
1 Project Setup & Organization
# 1. List your projects
geeadd projects enabled
# 2. Check quota
geeadd projects quota
# 3. Create a dashboard
geeadd projects dashboard --outdir ~/gee-reports
2 Complete Asset Management Cycle
# 1. Check current assets
geeadd assets info projects/my-project/assets
# 2. Copy important data for backup
geeadd assets copy \
--initial projects/my-project/assets/production \
--final projects/my-project/assets/backup-2024
# 3. Share with collaborators
geeadd assets access \
--asset projects/my-project/assets/shared-data \
--user [email protected] \
--role reader
3 Task Monitoring & Cleanup
# 1. Check task status
geeadd tasks list
# 2. Monitor running tasks
geeadd tasks list --state RUNNING
# 3. Cancel stuck pending tasks
geeadd tasks cancel pending
Best Practices
-
Use
--workers 10-15for large folders, but stick to default (5) for smaller jobs to avoid rate limits. -
Generate weekly asset reports using
geeadd utils reportto keep track of growth. -
Use the
deleterole in permissions to revoke access from former collaborators.
Troubleshooting
Run geeadd projects quota to
find full projects, then clear old data with geeadd assets delete.
Tasks in READY state for too long can be
cleared with geeadd tasks cancel pending.