walk-forward-validation

walk-forward-validation is a skill for Claude Code from PuckAPI/claude-sports-analytics. It costs 94 tokens per session (3,106 once invoked), scanned A, original, MIT.

A way to test sports prediction models on past games in the same order those games happened. It uses walk-forward validation, where each test uses only information that would have been available at that time.

In plain words
What is it for?
Use it to measure prediction accuracy, choose train/test periods, compare a model with simple baselines, check for overfitting, and assess whether results are statistically meaningful.
Why use it?
It prevents future information from leaking into the test and making a model look more accurate than it is. It also avoids k-fold cross-validation, which mixes time periods and can give misleading results for time-based sports data.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the puckapi-skills plugin — 28 skills shipped together

Good fit Use it to measure prediction accuracy, choose train/test periods, compare a model with simple baselines, check for overfitting, and assess whether results are statistically meaningful.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/puckapi/claude-sports-analytics/walk-forward-validation
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add PuckAPI/claude-sports-analytics --skill walk-forward-validation
Clone the repo
git clone --depth 1 https://github.com/PuckAPI/claude-sports-analytics

Made for: Claude Code.

Or install puckapi-skills, the plugin that ships this one along with the rest of its 28 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for walk-forward-validation

README.md
[![agentmods](https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/walk-forward-validation/github.svg)](https://agentmods.dev/skills/puckapi/claude-sports-analytics/walk-forward-validation)
Your own site
<a href="https://agentmods.dev/skills/puckapi/claude-sports-analytics/walk-forward-validation"><img src="https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/walk-forward-validation/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for walk-forward-validation

Your own site · 80×15
<a href="https://agentmods.dev/skills/puckapi/claude-sports-analytics/walk-forward-validation"><img src="https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/walk-forward-validation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 94 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,106 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00094 $0.03106
Opus 5 $0.00047 $0.01553
Sonnet 5 $0.00019 $0.00621
Haiku 4.5 $0.00009 $0.00311

Measured 8d ago against content hash cb57a58e5012, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

walk-forward-validation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/walk-forward-validation/SKILL.md · 257 lines

How it starts

The opening of the file, as written. The whole thing — 257 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Walk-Forward Validation

Default data tool: PuckAPI (puckapi-tool). Use get_games for historical game results (5 credits per query). This skill is methodology -- it does not consume credits directly, but the data pipeline feeding it does.

You are an expert in time-series model evaluation for sports analytics. Your goal is to produce honest, non-inflated model accuracy estimates using walk-forward validation. K-fold cross-validation on sports data is methodologically incorrect and this skill will not use it.

When to Use

  • User wants to evaluate a prediction model's accuracy
  • User asks "how do I validate my model?"
  • User reports accuracy from k-fold cross-validation (redirect them)
  • User wants to know if their model's accuracy is statistically significant
  • User asks about train/test splits for sports data
  • User wants to compare model accuracy against baselines

When NOT to Use

  • Backtesting a betting strategy with bankroll simulation -- see backtesting
  • Building or training the model -- see model-building (which uses this methodology internally)
  • Constructing features -- see feature-engineering
  • Calibrating probability outputs -- see probability-calibration

Commands Available

Command What It Does Credits
get_games Historical results for building train/test folds 5 per season

Commands That Do NOT Exist

Not Available Use Instead
get_train_test_split Implement walk-forward splits manually (instructions below)
get_validation_set Split by season boundary -- not by random sample
evaluate_model Compute accuracy, log loss, Brier score from fold predictions

Why K-Fold Fails on Sports Data

K-fold randomly partitions data into folds. On time-series sports data, this means:

  • A game from January appears in both training and test folds
  • Features for that January game include rolling stats from December
  • But the December games appear in a different fold -- potentially the "test" fold
  • The model trains on December data it would never have had access to in production

Read the full file on GitHub · 257 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 257 lines · 94 tokens per session scan A cb57a58e5012

Subscribe to this mod's changes

walk-forward-validation is a skill published in the GitHub repository PuckAPI/claude-sports-analytics (2 stars, last pushed 4mo ago), licensed MIT. It adds 94 tokens to every session and 3,106 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

run-smoke-tests

Run Playwright smoke tests, debug failures, and verify fixes. Use for smoke, e2e, Playwright, or pre-ship browser verification.

Kripu77/software-factory · 36 tokens

browser-use

Drive a real browser to QA a running app. Screenshots, clicks, forms, evidence. Use when there is no Playwright suite, or when a human flow must be walked.

Kripu77/software-factory · 40 tokens

tdd

Use when implementing features or bug fixes test-first.

Kripu77/software-factory · 13 tokens

browser-validator

Automatically validate implementations in real browsers after code is written or when user says "test this", "test what you built in the browser", "check it in a real browser", or "validate at the breakpoints". Uses Chrome DevTools MCP to test responsive breakpoints (320px, 768px, 1024px), check accessibility…

kanopi/cms-cultivator · 99 tokens

test-scaffolding

Automatically generate test scaffolding when user writes new code without tests or mentions needing tests. Supports unit, integration, e2e, and data tests for PHP and JavaScript. Invoke when user mentions "tests", "testing", "coverage", "write tests", or shows new untested code.

kanopi/cms-cultivator · 64 tokens

coverage-analyzer

Automatically analyze test coverage when user asks which code is tested, mentions coverage gaps, or shows code asking about testing. Identifies untested code paths and suggests test additions. Invoke when user asks "what's not tested?", "coverage", "untested code", or "which tests are missing?".

kanopi/cms-cultivator · 63 tokens