From protein-inspect
Use this skill when the user wants to analyze, reason about, or understand a protein structure — given a PDB ID, a local structure file (.pdb/.cif/.bcif), or after running structure prediction. Produces a layered semantic representation (summary.yaml + canonical PyMOL view battery) that Claude reads to identify fold, oligomeric state, ligand binding sites, disulfides, motifs, and notable structural features. Triggers when the user mentions a PDB code, asks "what is this protein", asks about active sites or ligands in a structure, or wants to compare/triage multiple structures. Do not use for sequence-only analysis (use BLAST/HMMER tools), or for binding-affinity / molecular-dynamics calculations.
How this skill is triggered — by the user, by Claude, or both
Slash command
/protein-inspect:protein-inspectThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Standardized inspection pipeline for protein structures. Combines deterministic feature extraction (gemmi, biotite, DSSP), a codified decision tree of structural-biology heuristics, and a fixed PyMOL view battery. Output is `summary.yaml` plus optional rendered images.
Standardized inspection pipeline for protein structures. Combines deterministic feature extraction (gemmi, biotite, DSSP), a codified decision tree of structural-biology heuristics, and a fixed PyMOL view battery. Output is summary.yaml plus optional rendered images.
.pdb, .cif, .bcif)# basic — fetch from PDB and emit summary.yaml only
protein-inspect 1mbn
# with rendered view battery (slower, requires running PyMOL with claudemol plugin)
protein-inspect 1mbn --render-views
# with vision-judged render quality — scores each PNG against a per-view rubric
# and re-renders failing views with pre-declared knobs (best-of-N retained).
# Adds ~$0.05-0.25 per run on top of the render; requires ANTHROPIC_API_KEY or
# ANTHROPIC_AUTH_TOKEN. Per-view scores land in summary.yaml#visual[].judge.
protein-inspect 1mbn --render-views --judge-views
# pick a cheaper or stronger judge model (default: claude-sonnet-4-6)
protein-inspect 1mbn --render-views --judge-views --judge-model claude-haiku-4-5
# local file
protein-inspect /path/to/design.pdb --render-views
# with named motif for catalysis-focused analysis
protein-inspect 1kxj --motif His153,Asp166,Ser142 --render-views
# output directory
protein-inspect 1mbn --out ./analysis/1mbn/
<out_dir>/
├── summary.yaml # the semantic layer Claude reads
├── 1mbn.bcif # coordinates, externalized
└── views/ # only when --render-views
├── 01_top.png
├── 02_side.png
├── 03_bfactor.png
├── 04_surface.png
├── 05_pocket_<lig>_<chain>.png
└── 06_vicinal_ss_<chain>_<a>-<b>.png # if vicinal disulfide present
After invoking, read prompts/analyze.md and follow it. The prompt walks through the YAML and images in a fixed order so that analyses are reproducible across calls.
--judge-viewsDefault: leave it off. The deterministic render battery is good enough for routine triage. Add --judge-views when:
--judge-views produced an image where you couldn't read what you needed.Do NOT add --judge-views for fast sequence-style questions, batch screens across many structures, or anything where the YAML alone answers the question.
--render-viewspyproject.tomlProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.
npx claudepluginhub lbm-epfl/protein-inspect --plugin protein-inspect