war-gar-decomposition

war-gar-decomposition is a skill for Claude Code from PuckAPI/claude-sports-analytics. It costs 116 tokens per session (3,791 once invoked), scanned A, original, MIT.

A method for measuring hockey player value beyond basic statistics. It builds WAR (wins above replacement) and GAR (goals above replacement) from shift-level data using RAPM, a statistical method that estimates player effects while accounting for teammates and opponents.

In plain words
What is it for?
Use it to evaluate NHL skaters, calculate WAR or GAR, study player value with RAPM, estimate contract surplus value, and create JFresh-style player cards.
Why use it?
It combines on-ice contributions into estimates of player value and can separate those estimates into useful components. It also supports comparing value with player contracts.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: positional $N argument.

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

Good fit Use it to evaluate NHL skaters, calculate WAR or GAR, study player value with RAPM, estimate contract surplus value, and create JFresh-style player cards.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/puckapi/claude-sports-analytics/war-gar-decomposition
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 war-gar-decomposition
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 war-gar-decomposition

README.md
[![agentmods](https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/war-gar-decomposition/github.svg)](https://agentmods.dev/skills/puckapi/claude-sports-analytics/war-gar-decomposition)
Your own site
<a href="https://agentmods.dev/skills/puckapi/claude-sports-analytics/war-gar-decomposition"><img src="https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/war-gar-decomposition/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 war-gar-decomposition

Your own site · 80×15
<a href="https://agentmods.dev/skills/puckapi/claude-sports-analytics/war-gar-decomposition"><img src="https://agentmods.dev/badge/skills/puckapi/claude-sports-analytics/war-gar-decomposition.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 116 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,791 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.00116 $0.03791
Opus 5 $0.00058 $0.01895
Sonnet 5 $0.00023 $0.00758
Haiku 4.5 $0.00012 $0.00379

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

Security

Grade A, and why

war-gar-decomposition 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 9d 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/war-gar-decomposition/SKILL.md · 299 lines

How it starts

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

WAR/GAR Decomposition

Default data tool: PuckAPI (puckapi-tool). Use get_game_detail for game-level data (10 credits per game) and get_player_stats for player biographical data (5 credits). Note: SDH get_game_detail returns game info, odds, and goalie starts -- NOT shift-level data. For shift-level data, use the NHL API or public sources (Natural Stat Trick, hockey-reference). Shift-level data is also available free from the NHL API and from public sources (Natural Stat Trick, hockey-reference) -- no credits consumed for those sources. For user's own shift data CSV/JSON: skip the tool, work with the file directly.

You are an expert in advanced hockey player evaluation. Your goal is to compute WAR and GAR components for NHL skaters using RAPM (Regularized Adjusted Plus-Minus) ridge regression, then translate those into contract surplus value analysis and JFresh-style player cards.

When to Use

  • User asks about WAR, GAR, RAPM, or wins above replacement for hockey players
  • User wants to evaluate player value beyond box score stats
  • User asks about contract surplus value or cap efficiency
  • User wants to reproduce or extend Evolving Hockey's WAR/GAR methodology
  • User wants to build a JFresh-style player card (radar chart of GAR components)
  • User asks about regularized adjusted plus-minus or ridge regression for player evaluation

When NOT to Use

  • Simple player stats lookup without modeling -- see player-scouting
  • Goalie evaluation -- goalies use GSAA (Goals Saved Above Average), not WAR. See goalie-analysis
  • Team-level performance and standings analysis -- see team-analysis
  • Game prediction or betting models (WAR is a player evaluation metric, not a game prediction feature directly) -- see model-building or feature-engineering

Commands Available

Command What It Does Credits
get_game_detail Game metadata, team info, odds records, and goalie starts 10
get_games Game list for bulk shift data pulls 5
get_player_stats Player biographical data, salary reference 5
get_team_stats Team-level validation of RAPM outputs 5

Read the full file on GitHub · 299 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 9d ago First seen · 299 lines · 116 tokens per session scan A 466183e4590d

Subscribe to this mod's changes

war-gar-decomposition is a skill published in the GitHub repository PuckAPI/claude-sports-analytics (3 stars, last pushed 4mo ago), licensed MIT. It adds 116 tokens to every session and 3,791 once invoked, about $0.0006 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

scientific-slides

Build slide decks and presentations for research talks. Use this for making PowerPoint slides, conference presentations, seminar talks, research presentations, thesis defense slides, or any scientific talk. Provides slide structure, design templates, timing guidance, and visual validation. Works with PowerPoint and…

foryourhealth111-pixel/Vibe-Skills · 65 tokens

imaging-data-commons

Query and download public cancer imaging data from NCI Imaging Data Commons using idc-index. Use for accessing large-scale radiology (CT, MR, PET) and pathology datasets for AI training or research. No authentication required. Query by metadata, visualize in browser, check licenses.

foryourhealth111-pixel/Vibe-Skills · 62 tokens

LQF_Machine_Learning_Expert_Guide

LQF Machine Learning Expert Guide - Routed skill for ML/Statistical Modeling with Critical Discussion Mode. Triggers on: machine learning, modeling, prediction, training, classification, regression, clustering, deep learning, neural network, model evaluation, feature engineering, hyperparameter tuning, overfitting…

foryourhealth111-pixel/Vibe-Skills · 152 tokens

paper-2-web

Use when converting academic papers into dissemination assets such as Paper2Web websites, Paper2Video video abstracts, or Paper2Poster conference posters from LaTeX or PDF sources.

foryourhealth111-pixel/Vibe-Skills · 40 tokens

get-available-resources

This skill should be used at the start of any computationally intensive scientific task to detect and report available system resources (CPU cores, GPUs, memory, disk space). It creates a JSON file with resource information and strategic recommendations that inform computational approach decisions such as whether to…

foryourhealth111-pixel/Vibe-Skills · 115 tokens

plotly

Interactive scientific and statistical data visualization library for Python. Use when creating charts, plots, or visualizations including scatter plots, line charts, bar charts, heatmaps, 3D plots, geographic maps, statistical distributions, financial charts, and dashboards. Supports both quick visualizations (Plotly…

foryourhealth111-pixel/Vibe-Skills · 85 tokens