Skip to content
Skill

pooch

by SteadfastAsArt

AI Summary

Pooch enables reliable downloading, caching, and verification of geoscience datasets with automatic integrity checks and multi-source fallback support. Essential for researchers and developers working with large scientific data files who need reproducible, efficient data workflows.

Install

Copy this and paste it into Claude Code, Cursor, or any AI assistant:

I want to install the "pooch" skill in my project.

Please run this command in my terminal:
# Install skill into the correct directory (3 files)
mkdir -p .claude/skills/pooch && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/pooch/SKILL.md "https://raw.githubusercontent.com/SteadfastAsArt/geoscience-skills/main/pooch/SKILL.md" && mkdir -p .claude/skills/pooch/references && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/pooch/references/registry.md "https://raw.githubusercontent.com/SteadfastAsArt/geoscience-skills/main/pooch/references/registry.md" && mkdir -p .claude/skills/pooch/scripts && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/pooch/scripts/create_registry.py "https://raw.githubusercontent.com/SteadfastAsArt/geoscience-skills/main/pooch/scripts/create_registry.py"

Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.

Description

Data file fetching and caching for geoscience applications. Download sample datasets with automatic caching, checksum verification, and multiple download sources. Use when Claude needs to: (1) Download datasets from URLs or DOIs, (2) Cache files locally with automatic verification, (3) Verify file integrity with SHA256/MD5 hashes, (4) Extract compressed archives (ZIP, TAR, GZIP), (5) Create data registries for reproducible workflows, (6) Fetch from Zenodo or other repositories.

Quick Reference

`python import pooch

Download single file

file_path = pooch.retrieve( url="https://example.com/data.csv", known_hash="sha256:abc123...", # None to skip verification fname="data.csv", path=pooch.os_cache("myproject") )

Create registry for multiple files

REGISTRY = pooch.create( path=pooch.os_cache("myproject"), base_url="https://example.com/data/", registry={"data.csv": "sha256:abc123...", "model.nc": "sha256:def456..."} ) data_file = REGISTRY.fetch("data.csv")

Generate hash for local file

file_hash = pooch.file_hash("/path/to/file.csv") `

Discussion

0/2000
Loading comments...

Health Signals

MaintenanceCommitted 2mo ago
Active
AdoptionUnder 100 stars
12 ★ · Niche
DocsREADME + description
Well-documented

GitHub Signals

Stars12
Forks1
Issues0
Updated2mo ago
View on GitHub
MIT License

My Fox Den

Community Rating

Sign in to rate this booster

Works With

Claude Code
Cursor
Copilot