Ersilia Skills
A guide to Ersilia's Claude Code skills repository: what it contains, how to install it, and how to contribute new skills.
ersilia-skills is Ersilia's curated library of Claude Code skills (reusable AI workflows built on top of Claude Code that encode our institutional knowledge into slash commands). Instead of re-explaining context to Claude each time you start a task, you invoke a skill and Claude already knows the process, the Ersilia conventions, and the expected outputs.
What's in this repository
skills/: The heart of the repository. Each subdirectory is one skill (a self-contained folder with aSKILL.mdfile that defines the workflow Claude follows when you invoke the skill). Most skills also include areferences/folder with supporting documents (guidelines, templates, real examples, troubleshooting notes) that Claude reads as context during execution.setup.sh: A one-time installation script. When you run it, it creates symlinks from every skill directory in this repository into~/.claude/skills/, which is the folder Claude Code reads to discover locally installed skills. It also installs the post-merge git hook.git-hooks/: Contains apost-mergehook that runs automatically every time you do agit pull. It re-runssetup.shin the background, so any new skills added to the repository since your last pull are immediately linked into your local Claude Code installation.
Setup
Prerequisites:
Claude Code
Git
Keeping skills up to date
Once setup is done, you only need to git pull to stay current. The post-merge hook that was installed by setup.sh runs setup.sh automatically after every pull, so new skills added to the repository will be linked into your ~/.claude/skills/ directory without any manual steps.
Using a skill
In any Claude Code session, type the skill name as a slash command:
/ersilia-model-test eos4ywv ~/models/eos4ywv
/molecule-auditing results.csv --context malaria
/newsletter-draftingClaude will load the skill's workflow and follow it. Some skills accept arguments (like a model ID or a file path); the skill's description shown in Claude Code will tell you what to provide.
Skill Catalogue
ersilia-metadata
Fills in the fields of a model's metadata.yml file. Given a publication PDF and a source code repository, it extracts the relevant information and populates fields like Task, Output, Biomedical Area, and Target Organism. It never touches fields it is not supposed to modify.
ersilia-model-test
Runs ersilia test <model_id> --shallow on a locally cloned model repository, reads the JSON output, groups failures by category (run errors, metadata issues, file structure, consistency), and proposes debugging strategies. It reports findings without auto-applying fixes
model-incorporation-code
Guides the full process of integrating a source model's code into the Ersilia model template. This is a multi-phase workflow: understanding the source model, handling checkpoints and large files with git-lfs, adapting main.py to use ersilia_pack_utils, creating run_columns.csv, pinning dependencies in install.yml, and generating example input/output files by actually running the model
molecule-auditing
Audits a CSV of molecules from an Ersilia screening run. It fetches model metadata from GitHub, scores molecules by activity, drug-likeness, and ADMET properties, and produces a structured Markdown report with a prioritized candidate list (Promising / Borderline / Deprioritise). Designed to handle large CSVs efficiently without loading the full file into memory.
newsletter-drafting
Writes Ersilia's monthly newsletter content from a summary of the month's events. It produces six ready-to-paste content blocks: opening paragraph, long story, short story, embedded story, where-to-find-us section, and footer tagline. It follows Ersilia's tone and style guidelines
social-media-post-drafting
Drafts LinkedIn posts and newsletter content. At the start of the month it takes a content calendar and produces a posting schedule with drafted posts. At the end of the month it generates the newsletter content blocks from an event summary. It enforces Ersilia's communication tone: direct, specific, no jargon
stylia-plotting
Creates publication-ready Python figures using Ersilia's stylia matplotlib wrapper. It enforces the correct API usage( stylia.create_figure(), stylia.save_figure(), stylia.label()) and selects colors, sizes, and layouts following stylia's conventions.
test-skill
A minimal skill that verifies your local setup is working. It confirms the symlink is in place and reports success. Run this after installation to make sure everything is connected
Contributing
To add a new skill:
Create a branch from
main.Add a new directory under
skills/named after your skill (use lowercase and hyphens).Write a
SKILL.mdfile. The frontmatter must include at minimumnameanddescription. Addargument-hintif the skill takes arguments, andallowed-toolsto restrict which tools Claude can use.
To make the process easier, use Anthropic's built-in skill-creator skill. Once you have Claude Code set up, run /skill-creator in your session and Claude will guide you through designing and writing a new skill from scratch, helping you structure the workflow, write the frontmatter, and identify what reference documents to include. It is the recommended starting point for anyone contributing their first skill to this repository.
Add a
references/folder with any supporting documents Claude should read — guidelines, examples, templates, troubleshooting notes.Open a pull request. The post-merge hook will ensure collaborators get the skill automatically after they pull
Last updated
Was this helpful?

