Skip to content
Skillpedia
Analysis & spreadsheets51k · #1963

relsa-severity-assessment

Helps your agent assess how severe a condition is in animal studies. It combines various information to give a severity score. It's useful for researchers who need to monitor animal welfare in experiments.

What it does

This tool calculates a single score that summarizes animal welfare in studies by combining various measurements like weight, temperature, and other signs. It can also predict how this welfare score might change in the future.

When to use it

  • ✓To combine multiple welfare measures (weight, temperature, etc.) into a single score.
  • ✓To predict if an animal might reach a critical welfare point.
  • ✓To compare welfare between different animal groups or treatments.

Example of what to ask your AI

“Calculate the welfare score for my animals, combining weight, temperature, and a clinical score, and predict the score for the next 3 days.”

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/K-Dense-AI/scientific-agent-skills/blob/main/skills/relsa-severity-assessment/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/relsa-severity-assessment/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

The tool compares each animal's measurements against a reference group to see how far they deviate from normal. It uses a method called RELSA to create a combined score and another method (ARIMA) to make predictions.

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 K-Dense-AI/scientific-agent-skills --skill relsa-severity-assessment

Or download just the file:

curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/relsa-severity-assessment/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

RELSA severity assessment and exploratory score forecasting

Overview

This skill computes reference-relative multivariate scores and exploratory ARIMA forecasts. It targets the equations and printed example of RELSA 0.0.1.9000 (commit e68e8451e8719ccc3600179f55900cd7254ede9d, current upstream at review), plus the published foRcast methodology. The Python forecast helper is an independent nonseasonal approximation, not an exact R port.

RELSA is the RMS of directional deviations divided by each variable's reference maximum deviation. Zero means no measured worsening in those directions; it does not establish normal welfare. One is a reference scale unit, not a universal endpoint or an upper bound. Different variables may attain their reference extrema in different animals or at different times, so the reference cohort need not contain a score of exactly one.

Forecasts estimate a score at a specified time, not time-to-endpoint or probability of death. Keep the approved study's observation schedule and humane endpoint criteria separate from these exploratory outputs. See Boundaries.

When to use this skill

  • Combining weight loss, temperature, clinical scoring, biomarkers, or telemetry into a single per-animal severity score
  • Asking which animals in a cohort are at risk of reaching a humane endpoint, or predicting the severity score at a coming time point
  • Comparing severity between treatment groups, interventions, or animal models on a common relative scale
  • Defining thresholds or zones on a severity scale from the data
  • Writing the severity-assessment section of an animal welfare report, a 3Rs/refinement analysis, or an application under EU Directive 2010/63/EU

For general forecasting of a time series that is not a severity score, use timesfm-forecasting or statsmodels. For study design and sample size, use experimental-design and statistical-power.

Installation

uv venv --python 3.13 .venv-relsa
uv pip install --python .venv-relsa/bin/python numpy==2.5.3 pandas==3.0.6 scipy==1.18.1 statsmodels==0.15.0 matplotlib==3.11.2
source .venv-relsa/bin/activate

Run the examples from this skill directory. relsa_score.py needs numpy/pandas; kde_thresholds.py additionally needs scipy; statsmodels is required for forecasting and matplotlib only for figures.

Data format

One row per animal per time point, in a CSV:

id treatment condition day temp weight score il6
M01 treated endpoint -1 37.15 25.17 0 35.1
M01 treated endpoint 0 37.26 25.25 0 39.5
M01 treated endpoint 1 35.83 23.12 4 162.0
  • id and a time column (day, time, hour, …) are required; treatment and condition are optional labels used for grouping and for selecting the reference set.
  • Time must be finite, with one consistent unit and origin across cohorts. Forecast training and target times must align with the chosen regular grid; disable interpolation only on regular observations. The RELSA convention codes the baseline time point as -1.
  • One row per animal per time point. Average hourly telemetry to one value per interval first (the published models average heart rate, HRV, and temperature, and sum activity).
  • Preserve lexical animal IDs (including leading zeros). Duplicate IDs/times, nonnumeric measurements and infinities are rejected. Leave missing measurements empty. They are dropped from the score, never imputed — a missing value treated as "no deviation" biases severity downward.

assets/example_cohort.csv is a small synthetic cohort (6 mice, 9 days, temperature, body weight, an 0–8 clinical score, and an IL-6-like biomarker) used by every command below, so each one is runnable as written.

The four decisions that determine the result

Make these explicitly and write them into the methods. Nothing else about the procedure matters as much.

1. Directionality — which variables rise under worsening? Falling is the default (body weight, activity, food intake, burrowing, wheel running). Variables that rise must be declared as --turned: clinical scores, inflammatory biomarkers, fever, tachycardia. Get this wrong and the variable contributes nothing at all, silently, because deviations in the

…

FAQ

What does the RELSA score mean?

The RELSA score is a relative measure. A score of 0 means no observed worsening relative to the reference. A score of 1 is a reference scale unit, not an upper bound.

Does the forecast indicate when an animal will die?

No, the forecast estimates a severity score at a future time, not the time to an endpoint or the probability of death.

How does the tool know which measurements indicate worsening?

You need to tell the tool whether a measurement should increase (like temperature) or decrease (like weight) to indicate worsening. If this is not specified correctly, the measurement will not contribute to the score.

Details

Original description by the author

Supports multivariate severity assessment and exploratory endpoint-time score forecasting for laboratory animal studies using the RELSA (RELative Severity Assessment) score and ARIMA-based foRcast forecasting. Use when combining welfare readouts — body weight or weight loss, body temperature, clinical or nesting scores, biomarkers, activity, heart rate, burrowing, wheel running — into one severity

repo: K-Dense-AI/scientific-agent-skills

Popularity

GitHub stars
51k
Ranking position
#1963
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills