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.
npx skills add OpenLAIR/OpenSkill --skill evo-proteomics-excel-formulasgit clone --depth 1 https://github.com/OpenLAIR/OpenSkillWrote 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.
[](https://agentmods.dev/skills/openlair/openskill/evo-proteomics-excel-formulas)<a href="https://agentmods.dev/skills/openlair/openskill/evo-proteomics-excel-formulas"><img src="https://agentmods.dev/badge/skills/openlair/openskill/evo-proteomics-excel-formulas/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.
<a href="https://agentmods.dev/skills/openlair/openskill/evo-proteomics-excel-formulas"><img src="https://agentmods.dev/badge/skills/openlair/openskill/evo-proteomics-excel-formulas.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00060 | $0.00998 |
| Opus 5.5 | $0.00024 | $0.00399 |
| Sonnet 5.5 | $0.00012 | $0.00200 |
| Haiku 4.5 | $0.00006 | $0.00100 |
Grade A, and why
evo-proteomics-excel-formulas 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 1mo 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.
How it starts
The opening of the file, as written. The whole thing — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
evo-proteomics-excel-formulas
Utilities for populating Excel workbooks with proteomics Excel formulas (INDEX-MATCH lookups, AVERAGE, STDEV.S, fold-change) while preserving formatting.
Key Principles
- Write Excel FORMULAS, not computed values - The task requires formulas.
- Load with data_only=False to preserve existing formulas and formatting.
- _xlfn. prefix for STDEV.S: openpyxl requires
_xlfn.STDEV.S(...)to avoid #NAME? errors. - AVERAGE is a core OOXML function - no prefix needed.
- Data is log2-transformed: Log2FC = Treated_Mean - Control_Mean; FC = 2^Log2FC.
- Preserve formatting: Setting cell.value preserves existing fill, font, border.
- Use wb["SheetName"] not deprecated get_sheet_by_name().
Task Sheet Layout (protein_expression.xlsx)
- Row 9: Group labels ("Control" / "Treated") in cols C-L
- Row 10: Sample names in cols C-L (match Data sheet headers)
- A11:A20: 10 target Protein_IDs; B11:B20: Gene_Symbols
- C11:L20 (yellow): INDEX-MATCH formulas looking up from Data sheet
- B24:K27 (yellow): Group statistics
- Row 24 = Control Mean (AVERAGE), Row 25 = Control StdDev (STDEV.S)
- Row 26 = Treated Mean (AVERAGE), Row 27 = Treated StdDev (STDEV.S)
- Columns B-K map to proteins in rows 11-20
- A32:B41: Protein IDs and Gene Symbols
- C32:C41 (yellow): Fold Change = 2^(Log2FC)
- D32:D41 (yellow): Log2 FC = Treated Mean - Control Mean
Data Sheet Layout
- Row 1: Headers (Protein_ID, Gene_Symbol, Description, then 50 sample names in D1:BA1)
- Rows 2-201: 200 proteins with log2 expression values in D2:BA201
- Column A: Protein_IDs
Usage (one-shot)
import sys
sys.path.insert(0, '/app/environment/skills/evo-proteomics-excel-formulas/scripts')
from utils import populate_proteomics_task
populate_proteomics_task('/root/protein_expression.xlsx')
Usage (step-by-step)
import sys
sys.path.insert(0, '/app/environment/skills/evo-proteomics-excel-formulas/scripts')
from utils import (
load_workbook_preserving,
save_workbook_safely,
classify_group_columns,
fill_expression_lookup_formulas,
fill_group_stats_formulas,
fill_fold_change_formulas,
)
wb = load_workbook_preserving('/root/protein_expression.xlsx')
ws_task = wb['Task']
# Step 1: INDEX-MATCH lookups in C11:L20
fill_expression_lookup_formulas(ws_task, data_sheet_name='Data',
data_max_row=201, data_max_col_letter='BA',
data_start_col_letter='D')
# Step 2: Group stats in B24:K27
groups = classify_group_columns(ws_task)
fill_group_stats_formulas(ws_task, groups)
# Step 3: Fold change in A32:D41
fill_fold_change_formulas(ws_task)
save_workbook_safely(wb, '/root/protein_expression.xlsx')
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.
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.
- 1mo ago First seen · 109 lines · 60 tokens per session scan A cf8bf59e5f75
evo-proteomics-excel-formulas is a skill published in the GitHub repository OpenLAIR/OpenSkill (97 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 60 tokens to every session and 998 once invoked, about $0.0002 per session on Opus 5.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-09-11.
Other skills, from other repositories
publication-chart-skill
This skill should be used when the user asks for a publication-quality scientific figure or table, wants help choosing the right chart for results, needs a paper-ready pubfig or pubtab workflow, wants a figure + companion table for a results section, wants an Excel sheet turned into publication-ready LaTeX, or wants…
tooluniverse-lab-data-standardization
Convert lab instrument output files (CSV, TSV, Excel, PDF — plate readers, spectrophotometers like NanoDrop, qPCR instruments, cell counters, chromatography systems) into a standardized Allotrope-Simple-Model-inspired JSON document plus a flattened 2D CSV, for LIMS/ELN upload or downstream analysis. Use when someone…
translate-health-data
Turn raw health data into standardized data, and read a lab report without guessing. A lab report PDF, photo, spreadsheet or CSV becomes readings with LOINC codes and UCUM units; an Apple Health export becomes JSON lines; a symptom or diagnosis in any language becomes an ICPC-3 code; any reading becomes a FHIR…
csv-export
Export curing simulation results to CSV with node coordinates and displacements. Invoke when user needs CSV output, data export, or result comparison.
aeja-tables-figures
Use when building or revising the exhibits of an American Economic Journal: Applied Economics (AEJ: Applied) manuscript so the main causal result is legible in one table or figure and respects AEA house presentation norms. Formats exhibits; it does not establish the result (aeja-identification / aeja-robustness) or…
evo-proteomics-workbook
Fills a proteomics Task sheet with INDEX-MATCH expression lookups, group statistics (AVERAGE/STDEV for Control vs Treated), and fold change formulas (Log2FC and FC). Discovers layout at runtime from the workbook itself. Use when a proteinexpression.xlsx has Task and Data sheets requiring two-way lookups and…