timesfm-forecasting
Zero-shot time series forecasting with Google's TimesFM foundation model. Use for any univariate time series (sales, sensors, energy, vitals, weather) without training a custom model. Supports CSV/DataFrame/array inputs with point forecasts and prediction intervals. Includes a preflight system checker script to verify RAM/GPU before first use.
npx skills add majiayu000/claude-skill-registry --skill timesfm-forecasting-k-dense-ai-scientific-agent-ski-2 --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Forecasts a single univariate time series without training a new model, returning point forecasts and calibrated prediction intervals. Includes a mandatory preflight system checker to verify RAM, GPU memory, and disk space before loading the model.
How it works
- The skill wraps TimesFM for local inference, operating in a zero-shot manner on any univariate series.
- It requires running the preflight script
python scripts/check_system.pybefore loading weights, which checks RAM, GPU availability, disk space, Python version, and existing installations. - After passing preflight, you install TimesFM and PyTorch per the provided installation steps, then use
timesfm.ForecastConfigto compile the model (e.g.,TimesFM_2p5_200M_torch.from_pretrainedwithforecast_config). - Forecasts are produced via
model.forecast(horizon, inputs)yieldingpoint_forecastandquantile_forecastwith 10 quantiles (q[:,:,0]..q[:,:,9]). - Supports CSV inputs, direct arrays, or DataFrame-derived inputs; can forecast single or multiple series per workflow, with optional covariates via
forecast_with_covariates(). - Quantiles map to prediction intervals (e.g., 80% PI uses indices 1 and 9; 60% PI uses 2 and 8; median is index 5).
When to use it
- Forecasting any univariate time series (sales, demand, sensors, vitals, weather) with zero training.
- When probabilistic forecasts with calibrated prediction intervals are required.
- When you need to batch-forecast many series efficiently or handle long context windows.
- When you prefer a foundation-model approach over traditional ARIMA/ETS.
What it can touch
- The skill references and uses the following tools:
Read,Write,Edit,Bash(via the allowed-tools). It demonstrates commands and file names such aspython scripts/check_system.py,uv pip install timesfm[torch],model.forecast(...), andTimesFMmodel loading fromgoogle/timesfm-2.5-200m-pytorch.
Caveats
- TimesFM requires the preflight check to pass before loading weights; model weights (~800 MB) are downloaded on first use and cached in
~/.cache/huggingface/and are not stored in the repository. - TimesFM 2.5 is recommended over older checkpoints for memory and context benefits; the check explicitly notes resource requirements (RAM, VRAM, disk space).
- Anomaly detection is not built-in; anomaly assessment relies on the prediction intervals.
- Quantile structures are documented, including the mapping of indices to percentiles and the behavior of covariate-enabled forecasting.
# TimesFM Forecasting ## Overview TimesFM (Time Series Foundation Model) is a pretrained decoder-only foundation model developed by Google Research for time-series forecasting. It works **zero-shot** — feed it any univariate time series and it returns point forecasts with calibrated quantile prediction intervals, no training required. This skill wraps TimesFM for safe, agent-friendly local inference. It includes a **mandatory preflight system checker** that verifies RAM, GPU memory, and disk space before the model is ever loaded so the agent never crashes a user's machine. > **Key numbers**: TimesFM 2.5 uses 200M parameters (~800 MB on disk, ~1.5 GB in RAM on > CPU, ~1 GB VRAM on GPU). The archived v1/v2 500M-parameter model needs ~32 GB RAM. > Always run the system checker first. ## When to Use This Skill Use this skill when: - Forecasting **any univariate time series** (sales, demand, sensor, vitals, price, weather) - You need **zero-shot forecasting** without training a custom model - You want **probabilistic forecasts** with calibrated prediction intervals (quantiles) - You have time series of **any length** (the model handles 1–16,384 context points) - You need to **batch-fore
- Overview
- When to Use This Skill
- ⚠️ Mandatory Preflight: System Requirements Check
- Hardware Requirements by Model Version
- 🔧 Installation
- Step 1: Verify System (always first)
- Step 2: Install TimesFM
- Step 3: Install PyTorch for Your Hardware
- Step 4: Verify Installation
- 🎯 Quick Start
- Minimal Example (5 Lines)
- Forecast from CSV
- Forecast with Covariates (XReg)
- Anomaly Detection (via Quantile Intervals)
python scripts/check_system.py Using uv (recommended by this repo) uv pip install timesfm[torch] Or using pip pip install timesfm[torch] For JAX/Flax backend (faster on TPU/GPU) uv pip install timesfm[flax] CUDA 12.1 (NVIDIA GPU) pip install torch>=2.0.0 --index-url https://download.pytorch.org/whl/cu121 CPU only
What does the timesfm-forecasting skill do?
Zero-shot time series forecasting with Google's TimesFM foundation model. Use for any univariate time series (sales, sensors, energy, vitals, weather) without training a custom model. Supports CSV/DataFrame/array inputs with point forecasts and prediction intervals. Includes a preflight system checker script to verify RAM/GPU before first use.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill timesfm-forecasting-k-dense-ai-scientific-agent-ski-2 --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
