Skip to content
Skillpedia
Analysis & spreadsheets48k · #4531

weather-data-reproducibility

Helps your agent record and verify the origin of weather data. This ensures the data used is reliable and traceable.

What it does

This tool helps record and verify exactly which weather data, which parts of it, which software, and which steps were used to create a result. This ensures the result can be recreated in the future.

When to use it

  • ✓When a weather map or chart needs to be verifiable.
  • ✓When weather data comes from sources that might change.
  • ✓When it's important to know the difference between a model's start time and forecast time.

Example of what to ask your AI

“Record the details of the weather data processing so I can recreate this temperature chart.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/weather-data-reproducibility/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/weather-data-reproducibility/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

It creates a detailed record (called a 'manifest') listing all data sources, software versions, and transformations applied. Before claiming a result can be reproduced, it checks if this record is complete and correct.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill weather-data-reproducibility

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/weather-data-reproducibility/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Weather Data Reproducibility

Overview

Create a compact provenance manifest that identifies the exact weather inputs, subsets, software, transformations, and output artifacts used by a run. Verify the manifest before claiming that a result can be replayed or reproduced.

This skill records and checks lineage. It does not discover or download data by itself; pair it with the appropriate model, observation, radar, or satellite fetching skill.

When to Use This Skill

  • A map, sounding, time series, dataset, or benchmark must be auditable.
  • Weather inputs came from mutable URLs, mirrors, byte-range subsets, or caches.
  • A result must distinguish model initialization, forecast lead, and valid time.
  • Temporary GRIB2, NetCDF, radar, satellite, or observation files will be deleted after processing.
  • Two outputs differ and their inputs or processing environment must be compared.
  • A publication or release needs machine-readable data and software provenance.

Do not claim bit-for-bit reproducibility merely because a source URL and run time were logged.

Reproducibility Contract

Decide which claim the workflow supports:

  • Traceable: The source and processing history can be audited.
  • Replayable: The same identified inputs can still be retrieved and the recorded procedure can be rerun.
  • Bitwise reproducible: The rerun is expected to produce identical bytes in a pinned environment.
  • Scientifically reproducible: Equivalent inputs and methods produce the same scientific conclusion within a stated tolerance.

Record the intended claim and its tolerance. Mutable remote objects, floating software versions, lossy images, parallel reductions, and platform-dependent code can make the stronger claims impossible.

Minimum Manifest

Use a versioned JSON document. Keep request intent separate from the source that was actually resolved.

{
  "schema_version": 1,
  "created_utc": "2026-09-18T09:00:00Z",
  "claim": {"level": "replayable", "tolerance": null},
  "request": {
    "dataset": "hrrr",
    "product": "prs",
    "requested_valid_time": "2026-09-18T12:00:00Z",
    "variables": ["temperature", "relative_humidity"]
  },
  "resolved": {
    "initialization": "2026-09-18T06:00:00Z",
    "forecast_hour": 6,
    "valid_time": "2026-09-18T12:00:00Z",
    "provider": "aws"
  },
  "inputs": [
    {
      "role": "pressure_fields",
      "uri": "s3://bucket/exact-object-key",
      "object_identity": {
        "etag": "opaque-identity",
        "last_modified": "2026-09-18T07:01:02Z",
        "size_bytes": 987654321
      },
      "selection": {
        "inventory_uri": "s3://bucket/exact-object-key.idx",
        "inventory_sha256": "HEX_DIGEST",
        "byte_ranges": [[1000, 1999], [5000, 6999]]
      },
      "materialized_sha256": "HEX_DIGEST"
    }
  ],
  "processing": {
    "software": {"application": "1.2.3", "python": "3.13.7"},
    "parameters": {"point": [35.22, -97.44], "nearest_method": "model-aware"},
    "transformations": ["decode GRIB2", "convert K to degC"]
  },
  "artifacts": [
    {
      "path": "sounding.png",
      "media_type": "image/png",
      "size_bytes": 123456,
      "sha256": "HEX_DIGEST"
    }
  ]
}

Use null for an intentionally absent value and omit fields whose meaning is unknown. Never fill a required-looking field with a guess.

Identify Every Input

For each remote object or API response, record as available:

  • provider, dataset, endpoint, bucket, and exact key or immutable URL;
  • version ID, generation number, release, or dataset revision;
  • ETag as opaque object identity, Last-Modified, and content length;
  • provider-supplied checksum and checksum algorithm;
  • a locally computed SHA-256 for downloaded or materialized bytes;
  • response media type and content encoding;
  • retrieval time and successful fallback provider;
  • license or attribution identifier when required.

An S3 ETag is not always an MD5 digest, particularly for multipart or encrypted objects. Store it for identity and compute a cryptographic content hash when the actual bytes must be verified.

Record the Selection

The source object alone is insufficient when only part of it was used. Record:

  • GRIB2 inventory URI and inventory content hash;
  • exact inventory rows, search expression, and inclusive byte ranges;
  • Zarr group, array names, chunk keys, and coordinate slices;
  • API query parameters and a hash or retained copy of the raw response;

…

FAQ

What is a 'manifest'?

It's a document that lists all the information needed to recreate something, like a cake recipe listing ingredients and steps.

Why is this important for weather data?

Weather data can come from many sources and change over time. Recording exactly what was used ensures scientists and others can trust and verify results.

Does this tool download the weather data for me?

No, it only records and verifies information about the data. You need to use another tool to download the actual weather data.

Details

Original description by the author

Record and verify provenance manifests for weather-data inputs and derived artifacts, including object identity, selections, software versions, transformations, and hashes.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#4531
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills