Agent skill

External Model Validation

by aipoch in aipoch/medical-research-skills

A skill your agent uses when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk…

MITAuto-check passedResearch & Science

Install External Model Validation

skills CLI
$ npx skills add aipoch/medical-research-skills --skill external-model-validation -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install aipoch/medical-research-skills external-model-validation --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/aipoch/medical-research-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/'awesome-med-research-skills/Data Analysis/external-model-validation' .claude/skills/external-model-validation && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
external-model-validation
GitHub stars
2k
Token cost
~3.2k tokens
SKILL.md length
1,286 words
Files
18 (incl. scripts, references)
Skills in repo
567
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk…

  • Works in 4 steps: Validate Inputs → Build Matched Validation Dataset → Calculate Risk Scores and Groups → …
  • Validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes
  • SKILL.md covers Input Validation, When to Read External Files, Usage and Arguments, plus 10 more sections
  • Runs R scripts from its folder

What it does

External Model Validation is an agent skill from aipoch/medical-research-skills. Use when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk distribution plots, heatmap, and time-dependent ROC curves. NOT for: model training, feature selection, nomogram construction, calibration analysis, or single-cell data.

Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 21 other files, including scripts and reference files (for example `eval_report_external-model-validation_result.json`, `references/algorithm.md` and `references/baseline-run.md`).

It sits in Research & Science, covering Bioinformatics, Machine learning and Fine-tuning. The repository describes itself as: Hundreds of agent skills for medical research, including protocol design, data analysis, evidence insights, and academic writing. The licence is MIT.

When your agent uses it

  • Validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes
  • Producing risk scores
  • Kaplan-Meier curves
  • Risk distribution plots

Example prompts

  • “/external-model-validation”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Validate Inputs
  2. Build Matched Validation Dataset
  3. Calculate Risk Scores and Groups
  4. Generate Validation Outputs

What it can do on your machine

Read from SKILL.md and the folder at commit 686e09d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 6 files in scripts/ (R, from the files we listed), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

External Model Validation loads about 3.2k tokens when it runs, and up to ~7.2k if it reads all its reference files. Until then it costs about 91 tokens; SKILL.md has 1,286 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~91
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~7.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from aipoch/medical-research-skills at commit 686e09d, republished under its MIT licence (© aipoch). 1,286 words, ~3,176 tokens.

Download SKILL.mdSave it as .claude/skills/external-model-validation/SKILL.md (or your agent's skills folder). This skill also uses 17 other files; get the full folder from GitHub.
name
external-model-validation
description
Use when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk distribution plots, heatmap, and time-dependent ROC curves. NOT for: model training, feature selection, nomogram construction, calibration analysis, or single-cell data.
license
MIT
skill-author
AIPOCH

External Model Validation

Input Validation

This skill accepts: an existing prognostic gene signature (model coefficient file with Gene and Coef columns), a bulk expression matrix in CSV format (genes as rows, samples as columns), and a clinical file with OS and OS.time survival columns.

If the user's request does not involve validating a pre-existing prognostic model on an external cohort — for example, asking to train a new model, perform feature selection, build a nomogram, run calibration curves, analyze single-cell data, or process data without survival endpoints — do not proceed with the workflow. Instead respond:

"external-model-validation is designed to validate an existing prognostic risk signature on an external bulk expression cohort with survival outcomes. Your request appears to be outside this scope. Please provide a fixed model coefficient file plus expression and clinical data with OS/OS.time columns, or use a more appropriate tool for model training, nomogram construction, or single-cell analysis."

When to Read External Files

SituationFile to ReadPurpose
Need to run the analysisscripts/main.RExecute: Rscript scripts/main.R --exp_file ... --cli_file ... --model_file ...
Need workflow order or output generation stepsscripts/run_analysis.RReview the 4-step orchestration of loading, scoring, plotting, and metadata export
Need risk score or sample matching logicscripts/functions.RInspect core data preparation and validation logic
Need output writing or metadata export detailsscripts/io.RInspect output directory creation and file-writing helpers
Need plotting implementation detailsscripts/plotting.RInspect Kaplan-Meier, risk, heatmap, and ROC plot generation
Need input validation, logging, timeout, or dependency logicscripts/utils.RReview validation helpers, SKILL_* error handling, logging, and runtime safeguards
Need statistical assumptions or method detailsreferences/algorithm.mdRisk score formula, group cutoff, survival analysis, ROC, and heatmap assumptions
Need troubleshooting helpreferences/troubleshooting.mdCommon failures, warnings, and concrete fixes
Need CLI usage examplesreferences/cli-guide.mdParameter explanations, examples, and command patterns
Need expected outputs or benchmark runreferences/baseline-run.mdReal-data baseline command, runtime, memory checkpoints, and output inventory
Need test inputstests/data/Example expression, clinical, and model files for validation
Need to refresh the retained example outputtests/refresh_example_output.RRebuild tests/output/ with --overwrite using the bundled test data

Usage

bash
Rscript scripts/main.R \
  --exp_file ./expression.csv \
  --cli_file ./clinical.csv \
  --model_file ./model.csv \
  --output_dir ./output/ \
  --time_unit month \
  --seed 42

Arguments

ShortLongTypeDefaultDescription
-e--exp_filecharacterrequiredExpression matrix CSV with genes as rows and samples as columns
-c--cli_filecharacterrequiredClinical CSV with sample IDs as row names and OS, OS.time columns
-m--model_filecharacterrequiredModel coefficient CSV with Gene and Coef columns
-o--output_dircharacter./output/Output directory
--overwriteflagFALSEAllow writing into a non-empty output directory
-u--time_unitcharactermonthSurvival time unit in input clinical file: day, month, year
--col_highcharacter#E64B35Color for high-risk samples
--col_lowcharacter#4DBBD5Color for low-risk samples
--roc_colscharacter#E64B35,#00A087,#3C5488Comma-separated colors for ROC curves
--roc_timescharacter1,3,5Comma-separated ROC time points always in years, regardless of --time_unit. When follow-up is in days or months, still provide --roc_times in years (e.g., 1,3,5 for 1, 3, and 5 years).
--roc_poscharacterbottomrightROC legend position
--km_breaksinteger0Kaplan-Meier x-axis break in years; 0 selects automatically
-s--seedinteger42Random seed for reproducibility
--timeout_secondsinteger3600Elapsed timeout limit in seconds

When to Use

  • You already have a fixed prognostic gene signature and coefficients.
  • You need to test that model on an independent cohort with bulk expression and survival data.
  • You want standard outputs for external validation: risk table, Kaplan-Meier curve, risk score plot, survival status plot, expression heatmap, and time-dependent ROC.

When Not to Use

  • Do not use this skill to train or re-fit a prognostic model.
  • Do not use it for nomogram construction, calibration curves, DCA, or diagnostic classification.
  • Do not use it for single-cell expression matrices or cohorts without survival endpoints.
  • Do not use identifiable patient data without de-identification and local compliance approval.
  • Do not use for cohorts with very few events (fewer than 5 events may produce unreliable Kaplan-Meier and ROC results).

Research Use Notice

  • This skill is for research and validation workflows only.
  • It does not provide diagnosis, treatment recommendations, or clinical decision support.
  • Use de-identified data and follow IRB, ethics, and data-use requirements before running on human cohorts.

Input Format

Expression Matrix (exp_file)

CSV with genes as rows and samples as columns. The first column must contain gene identifiers.

csv
"","Sample_1","Sample_2","Sample_3"
"TSPAN6",3.87,4.54,8.12
"TNMD",9.98,5.86,5.38
"DPM1",7.95,6.11,5.41
Clinical File (cli_file)

CSV with sample IDs as row names and at least OS and OS.time columns.

csv
,Age,OS,OS.time
Sample_1,59,0,133.5
Sample_2,60,0,49.13
Sample_3,59,1,22.40
  • OS must use 0/1 encoding.
  • OS.time must be positive and interpretable under --time_unit.
Model Coefficient File (model_file)

CSV with two required columns: Gene and Coef.

csv
Gene,Coef
TSPAN6,-0.25
TNMD,0.15
DPM1,0.32

Output Files

FileDescription
data/risk_data.rdsSerialized analysis dataset containing survival data, model gene expression, risk scores, and risk groups
table/out_varifyRisk.txtTab-delimited risk table for all matched samples
plot/out_varifySurv.pdfKaplan-Meier survival curve with risk table
plot/out_varify.riskScore.pdfOrdered risk score plot
plot/out_varify.survStat.pdfSurvival status plot
plot/out_varify.heatmap.pdfHeatmap of model genes across ordered samples
plot/out_varify.ROC.pdfTime-dependent ROC curve PDF
analysis.logRuntime log including memory checkpoints and processing steps
run_parameters.tsvExact parameter values used for the run
session_info.txtR version, platform, and package session information

Show full SKILL.md (474 more words)Show less

Workflow

Step 1: Validate Inputs
  • Check required files and CSV extensions.
  • Validate color strings, timeout, seed, KM break setting, and time unit choice.
  • Parse --roc_times and --roc_cols.
Step 2: Build Matched Validation Dataset
  • Read expression, clinical, and model files.
  • Match samples shared by expression columns and clinical row names.
  • Check all model genes exist in the expression matrix.
  • Remove incomplete cases before downstream analysis.
Step 3: Calculate Risk Scores and Groups
  • Compute risk scores with the supplied linear predictor.
  • Convert follow-up time into years.
  • Split patients into low and high groups using the median risk score.
Step 4: Generate Validation Outputs
  • Save the full risk table and RDS object.
  • Produce Kaplan-Meier, risk score, survival status, heatmap, and time-dependent ROC plots.
  • Save session metadata and exact run parameters.

Methods

Risk Score Formula

For sample i, the skill computes:

text
riskScore_i = sum(expression_ig * coefficient_g)

using all genes listed in model_file.

Risk Stratification
  • Samples are ordered by riskScore.
  • The median risk score is used as the cutoff.
  • Samples with scores above the median are labeled high; the others are labeled low.
Survival Analysis
  • Kaplan-Meier curves are fit with survival::survfit.
  • Group difference is shown with the default log-rank p-value in survminer::ggsurvplot.
Time-Dependent ROC
  • ROC analysis is performed with timeROC::timeROC using follow-up time in years.
  • All --roc_times values must be smaller than the maximum observed follow-up time.
  • --roc_times is always interpreted in years, regardless of --time_unit.

Examples

Basic Usage
bash
Rscript scripts/main.R \
  -e tests/data/BRCA_data.csv \
  -c tests/data/BRCA_clinic.csv \
  -m tests/data/BRCA_coef.csv \
  -o ./output/
Input Follow-up Recorded in Days
bash
Rscript scripts/main.R \
  -e expression.csv \
  -c clinical.csv \
  -m model.csv \
  -o ./output \
  -u day \
  --roc_times 1,2,3

Note: --roc_times 1,2,3 means 1, 2, and 3 years — even though --time_unit day was supplied. The skill converts OS.time from days to years internally before ROC computation.

Custom Plot Colors and ROC Settings
bash
Rscript scripts/main.R \
  -e expression.csv \
  -c clinical.csv \
  -m model.csv \
  -o ./output \
  --col_high '#B2182B' \
  --col_low '#2166AC' \
  --roc_cols '#B2182B,#4D9221,#2166AC' \
  --roc_pos topleft \
  --km_breaks 2

Error Handling

Common Errors
ErrorCauseSolution
SKILL_FILE_NOT_FOUNDInput path is missing or wrongCheck file path and permissions
SKILL_MISSING_COLUMNSClinical or model file lacks required columnsEnsure OS, OS.time, Gene, and Coef exist
SKILL_SAMPLE_MISMATCHNo overlapping samples between expression and clinical dataAlign sample IDs exactly
SKILL_EMPTY_DATAAn input file is empty after loadingVerify the CSV contains at least one row and one column of usable data
SKILL_INVALID_DATADuplicate genes, empty data, non-numeric coefficients, or invalid survival values. For duplicate genes: deduplicate with dplyr::distinct() or keep the row with highest mean expression (e.g., mat[order(-rowMeans(mat[,-1])),] %>% distinct(Gene, .keep_all=TRUE))Clean input tables and verify formats
SKILL_ANALYSIS_ERRORRisk groups collapse or event count is too lowUse a valid signature and cohort with enough events (minimum ~5)
SKILL_INVALID_PARAMETERBad --time_unit, invalid color, or impossible ROC time pointCorrect the parameter value
SKILL_DEPENDENCY_MISSINGRequired R package is not installedInstall the missing package
SKILL_PKG_VERSIONInstalled package version is below the required minimumUpgrade the package to the required version

IF error persists, READ: references/troubleshooting.md


Testing

Test with Included Data
bash
# Check CLI
Rscript scripts/main.R --help

# Run with bundled test data in a fresh output directory
Rscript scripts/main.R \
  -e tests/data/BRCA_data.csv \
  -c tests/data/BRCA_clinic.csv \
  -m tests/data/BRCA_coef.csv \
  -o ./output/
Validation Commands
bash
# Run R tests
Rscript tests/testthat.R

# Refresh the retained example output bundle
Rscript tests/refresh_example_output.R

# Inspect the generated risk table
wc -l tests/output/table/out_varifyRisk.txt

# Review the retained example outputs
ls -la tests/output/
Real-data Baseline

The repository stores a documented real-data baseline summary in references/baseline-run.md.

IF you need exact benchmark outputs or runtime expectations, READ: references/baseline-run.md

→ Directory structure and implementation details: references/project-structure.md

© aipoch, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 17 other files (scripts, references) in awesome-med-research-skills/Data Analysis/external-model-validation of aipoch/medical-research-skills.

  • SKILL.md
  • eval_report_external-model-validation_result.json
  • references/algorithm.md
  • references/baseline-run.md
  • references/cli-guide.md
  • references/project-structure.md
  • references/troubleshooting.md
  • scripts/functions.R
  • scripts/io.R
  • scripts/main.R
  • scripts/plotting.R
  • scripts/run_analysis.R
  • scripts/utils.R
  • tests/data/BRCA_clinic.csv
  • tests/data/BRCA_coef.csv
  • tests/data/BRCA_data.csv
  • tests/refresh_example_output.R
  • … and 1 more

Open the folder on GitHubat commit 686e09d

Compare with similar skills

External Model Validation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

External Model Validation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
External Model Validation this skillaipoch/medical-research-skills2k—~3.2kAutomated safety check: PassMIT
Bio Clip Seq M6a ClipGPTomics/bioSkills1.2k2 repos~5.7kAutomated safety check: PassMIT
Gtars Genomic Interval Toolkitdavila7/claude-code-templates32k12 repos~1.9kAutomated safety check: PassMIT
Bio Imaging Mass Cytometry Data PreprocessingGPTomics/bioSkills1.2k1 repos~4.2kAutomated safety check: PassMIT
Bio Proteomics Spectral LibrariesGPTomics/bioSkills1.2k1 repos~4.6kAutomated safety check: PassMIT
Bio Temporal Genomics Temporal GrnGPTomics/bioSkills1.2k1 repos~5kAutomated safety check: PassMIT

Similar skills

  • Bio Clip Seq M6a Clip

    GPTomics/bioSkills

    Map N6-methyladenosine (m6A) RNA modifications at single-nucleotide resolution using miCLIP (Linder 2015), miCLIP2 + m6Aboost machine learning (Kortel 2021), GLORI (Liu 2023, antibody-free chemical…

    1.2k GitHub starsUsed in 2 repos~5.7k tokens
    Research & ScienceAuto-check passed
  • Gtars Genomic Interval Toolkit

    davila7/claude-code-templates

    Works with genomic intervals using gtars, a Rust toolkit with Python bindings: overlap detection, coverage tracks, tokenization for ML models and reference sequences.

    32k GitHub starsUsed in 12 repos~1.9k tokens
    Research & ScienceAuto-check passed
  • Load and preprocess imaging mass cytometry (IMC) and MIBI data from raw MCD/TXT through hot-pixel removal, spillover compensation, and variance-stabilizing transformation, covering readimc/steinbock…

    1.2k GitHub starsUsed in 1 repo~4.2k tokens
    Research & ScienceAuto-check passed
  • Builds and manages DIA spectral libraries as peptide query parameters (precursor m/z, a few fragment m/z plus relative intensities, normalized RT, optional CCS), covering experimental DDA…

    1.2k GitHub starsUsed in 1 repo~4.6k tokens
    Research & ScienceAuto-check passed
  • Infers directed, time-delayed gene regulatory edges from BULK time-series expression using Granger causality (statsmodels VAR F-test), dynGENIE3 (tree ensembles regressing ODE-derived derivatives…

    1.2k GitHub starsUsed in 1 repo~5k tokens
    Research & ScienceAuto-check passed
  • Popv Cell Annotation

    jaechang-hits/SciAgent-Skills

    Consensus cell type annotation: runs 10+ algorithms (KNN-Harmony/BBKNN/Scanorama/scVI, CellTypist, ONCLASS, Random Forest, SCANVI, SVM, XGBoost) on a labeled reference and transfers labels via…

    370 GitHub starsUsed in 2 repos~6.9k tokens
    Research & ScienceAuto-check passed

More from aipoch/medical-research-skills

All 567 skills in this repo
  • Academic Poster Generator

    aipoch/medical-research-skills

    Complete workflow for generating academic research posters from PDF literature; use when you need to extract paper content from PDFs and produce a LaTeX-based poster…

    2k GitHub stars~2.2k tokensUpdated 20 days ago
    Auto-check passed
  • Diagnostic Study Quality Assessment Quadas

    aipoch/medical-research-skills

    Analyzes clinical diagnostic accuracy studies for bias using the QUADAS-2 tool.

    2k GitHub stars~1.4k tokensUpdated 20 days ago
    Auto-check passed
  • Exploratory Data Analysis

    aipoch/medical-research-skills

    Perform comprehensive exploratory data analysis on scientific data files across 200+ file formats.

    2k GitHub stars~3.7k tokensUpdated 20 days ago
    Auto-check passed
  • Iso Certification

    aipoch/medical-research-skills

    A toolkit for preparing ISO 13485:2016 certification documentation for medical device QMS.

    2k GitHub stars~1.8k tokensUpdated 20 days ago
    Auto-check passed
  • Journal Skills

    aipoch/medical-research-skills

    Recommends target journals for manuscript submission by analyzing the paper topic/abstract and the journal distribution of similar PubMed literature; use when users ask for journal…

    2k GitHub stars~1.7k tokensUpdated 20 days ago
    Auto-check passed
  • Latex Posters

    aipoch/medical-research-skills

    Creates academic-poster writing packages for LaTeX using beamerposter, tikzposter, or baposter.

    2k GitHub stars~1.3k tokensUpdated 20 days ago
    Auto-check passed

Questions about External Model Validation

What does External Model Validation do?

A skill your agent uses when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk…. External Model Validation is an agent skill from aipoch/medical-research-skills. Use when validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes, producing risk scores, Kaplan-Meier curves, risk distribution plots, heatmap, and time-dependent ROC curves.

When should I use External Model Validation?

External Model Validation fits situations like: validating an existing prognostic risk signature on an external bulk expression cohort with survival outcomes; producing risk scores; kaplan-Meier curves; risk distribution plots.

How do I install External Model Validation in Claude Code?

Run `npx skills add aipoch/medical-research-skills --skill external-model-validation -a claude-code`. Or copy the skill folder (awesome-med-research-skills/Data Analysis/external-model-validation in aipoch/medical-research-skills) into .claude/skills/external-model-validation in your project. Claude Code loads it when a task matches its description.

How do I install External Model Validation in Codex?

Run `npx skills add aipoch/medical-research-skills --skill external-model-validation -a codex`. Or copy the skill folder (awesome-med-research-skills/Data Analysis/external-model-validation in aipoch/medical-research-skills) into .agents/skills/external-model-validation in your project. Codex loads it when a task matches its description.

Can I use External Model Validation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aipoch/medical-research-skills --skill external-model-validation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/external-model-validation, .gemini/skills/external-model-validation, .github/skills/external-model-validation and .opencode/skills/external-model-validation in your project.

What does External Model Validation need to run?

Going by SKILL.md and its folder, External Model Validation needs R for the scripts in its folder.

Does External Model Validation access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is External Model Validation safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does External Model Validation use?

External Model Validation is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does External Model Validation use?

About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.1k tokens, read only when the agent opens those files.

What are the alternatives to External Model Validation?

Skills that share tags, products or a category with External Model Validation: Bio Clip Seq M6a Clip (GPTomics/bioSkills, 1.2k stars), Gtars Genomic Interval Toolkit (davila7/claude-code-templates, 32k stars), Bio Imaging Mass Cytometry Data Preprocessing (GPTomics/bioSkills, 1.2k stars) and Bio Proteomics Spectral Libraries (GPTomics/bioSkills, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains External Model Validation?

aipoch (a GitHub organization) maintains it in aipoch/medical-research-skills, which has 1,973 GitHub stars. The repository holds 567 skills in this directory. The repository was last updated on September 17, 2026.

Source: aipoch/medical-research-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.