foldseek-structural-search — скилл для Claude Code: поиск похожих
Отправляет файл 3D-структуры белка в API Foldseek и находит структурно похожие белки. Нужен, когда есть координаты, а не просто последовательность.
npx skills add google-deepmind/science-skills --skill foldseek-structural-search -a claude-code
npx skills add google-deepmind/science-skills --skill foldseek_structural_search -a claude-codeЧто делает foldseek-structural-search
Скилл берёт файл .cif, .mmcif или .pdb из рабочей папки и через скрипт scripts/search.py шлёт его на веб-сервер Foldseek. На выходе два файла: .md с таблицей лучших совпадений и .json с полным ответом API. Агент читает таблицу и разбирает метрики — вероятность, покрытие запроса, E-value, идентичность последовательности.
Базы для поиска ограничены списком: afdb50, afdb-swissprot, pdb100, BFVD, mgnify_esm30, cath50, gmgcl_id, bfmd, afdb-proteome. Запрос базы вне списка останавливает работу. Поиск по последовательности, имени гена или UniProt ID не поддерживается вообще — нужен именно файл координат. Если структуры ещё нет, её придётся сначала скачать.
Перед запуском нужен uv в PATH. Ещё скилл проверяет файл .licenses/foldseek_structural_search_LICENSE.txt в корне проекта: если его нет, он просит свериться с условиями на сайтах Foldseek и steineggerlab и создаёт файл с отметкой времени. Сам JSON разбирать не надо — он лежит для последующих инструментов.
Какие задачи решает
- найти структурные гомологи по скачанному файлу
.pdb - сверить предсказанную AlphaFold-модель с известными фолдами
- оценить, покрывает ли совпадение всю форму белка или только мотив
- собрать таблицу лучших хитов в Markdown для отчёта
- понять, какие семейства белков попали в список совпадений
Примеры запросов агенту
- Найди структурно похожие белки для
proteinA.pdbи сохрани таблицу - Прогони
model.cifпо базамpdb100иcath50, покажи топ-5 совпадений - Разбери метрики Prob и Q-Cov для лучших хитов и объясни, что это за белки
Как установить foldseek-structural-search
1Через Skills CLI (Vercel)
npx skills add google-deepmind/science-skills --skill foldseek-structural-search -a claude-codenpx skills add google-deepmind/science-skills --skill foldseek_structural_search -a claude-code2Вручную: положить файлы
~/.claude/skills/foldseek_structural_search/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/foldseek_structural_search/
1Через Skills CLI (Vercel)
npx skills add google-deepmind/science-skills --skill foldseek_structural_search -a codex2Вручную: положить файлы
.agents/skills/foldseek_structural_search/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add google-deepmind/science-skills --skill foldseek_structural_search -a cursor2Вручную: положить файлы
.cursor/skills/foldseek_structural_search/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install google-deepmind/science-skills foldseek_structural_search2Вручную: положить файлы
.github/skills/foldseek_structural_search/SKILL.md1Через Skills CLI (Vercel)
npx skills add google-deepmind/science-skills --skill foldseek_structural_search -a gemini-cli2Командой платформы
gemini skills install https://github.com/google-deepmind/science-skills --path skills/foldseek_structural_searchВручную: положить файлы
.devin/skills/foldseek_structural_search/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add google-deepmind/science-skills --skill foldseek_structural_search -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о foldseek-structural-search
Как установить foldseek-structural-search в Claude Code?
Выполните npx skills add google-deepmind/science-skills --skill foldseek-structural-search -a claude-code. Файл скилла окажется по пути ~/.claude/skills/foldseek_structural_search/SKILL.md.
Что делает foldseek-structural-search?
Отправляет файл 3D-структуры белка на API Foldseek, находит структурно похожие белки и сохраняет таблицу совпадений в .md и полный ответ в .json.
Можно ли искать по последовательности или UniProt ID?
Нет. Скилл требует файл .pdb, .cif или .mmcif с координатами. При последовательности или имени гена он останавливается и предлагает сначала скачать структуру.
Исходный текст
SKILL.md · Apache-2.0
---
name: foldseek-structural-search
description: >
Performs 3D structural searches of proteins against various databases (PDB,
AlphaFold, CATH, MGnify, etc.) using the Foldseek API. Use ONLY when the
user provides a physical 3D coordinate file (.cif, .mmcif, or .pdb) and
wants to find structurally similar proteins. Do NOT use if the user only
provides a protein sequence, gene name, or UniProt ID.
---
## Prerequisites
1. **`uv`**: Read the `uv` skill and follow its Setup instructions to ensure
`uv` is installed and on PATH.
2. **User Notification**: If .licenses/foldseek_structural_search_LICENSE.txt
does not already exist in the workspace root directory then (1) prominently
notify the user to check the terms at https://search.foldseek.com/search and
https://github.com/steineggerlab/foldseek, then (2) create the file
recording the notification text and timestamp.
## Goal
Submit a user-provided 3D protein structure file (`.cif`, `.mmcif`, or `.pdb`)
to the Foldseek web server API to find structurally similar proteins. Report the
top structural hits, interpret key alignment metrics, summarize the inferred
protein functions, save the Markdown-formatted table to a `.md` file, and save
the full detailed results to a local JSON file.
## Core Rules
- **File Requirement**: This tool absolutely cannot search by sequence, name,
or accession ID. It strictly requires a `.pdb`, `.cif`, or `.mmcif` file
path.
- **Strict Validation**: Never bypass the input validation or the database
allowlist check.
- **Do Not Parse the JSON**: Rely entirely on the generated `.md` file for
your immediate summary. The JSON is saved purely for subsequent, specialized
tool use.
- **No Raw Parsing**: Do not attempt to parse or read the raw 3D coordinates
yourself; always pass the file to the script.
- **Notification**: If this skill is used, ensure this is mentioned in the
output.
## Instructions
1. **Strict Input Validation:** Verify that the user has explicitly provided a
valid path to a `.cif`, `.mmcif`, or `.pdb` file in their workspace.
* If the user provided a protein name, an amino acid sequence, or an
accession ID (e.g., a UniProt ID) but NO downloaded structure file,
**halt immediately**. Do not run the script.
* Inform the user that Foldseek requires a physical 3D coordinate file,
and suggest downloading the structure first (e.g., using the AlphaFold
fetch tool).
2. **Database Validation:** Check if the user requested specific databases to
search.
* **Allowed List:** `afdb50`, `afdb-swissprot`, `pdb100`, `BFVD`,
`mgnify_esm30`, `cath50`, `gmgcl_id`, `bfmd`, `afdb-proteome`.
* If the user requests a database NOT on this list, **halt immediately**.
Do not run the script. Inform the user that the database is unsupported
and provide them with the allowed list.
3. **Generate File Names:** Generate descriptive output file names for both the
JSON data and the Markdown table based on the input file (e.g.,
`proteinA_foldseek_results.json` and `proteinA_foldseek_results.md`).
4. Execute the python script based on the user's request, redirecting the
standard output into your generated `.md` file:
* **Default (No databases specified):** `uv run scripts/search.py
<path-to-file> -o <generated-filename.json> > <generated-filename.md>`
* **Custom (Valid databases specified):** `uv run scripts/search.py
<path-to-file> -o <generated-filename.json> --databases <db1,db2,db3> >
<generated-filename.md>`
5. The script will query the databases, save the full JSON payload, and write a
Markdown-formatted table to your specified `.md` file.
6. **Read the Results:** Open and read the newly generated `.md` file carefully
to view the Markdown table.
7. **Interpret the Metrics:** Summarize the top 3 to 5 structural matches that
have meaningfull annotations for the user. When reporting, assess the match
quality using these specific fields:
* **Prob (Probability):** Values approaching 1.0 (100%) indicate extreme
confidence that the fold is a true structural homologue.
* **Q-Cov (Query Coverage):** High percentages mean the match covers the
majority of the query protein's overall shape, rather than just a small
local motif.
* **E-value & Seq Identity:** Use these to provide additional evolutionary
context.
8. **Perform Functional Analysis:** Analyze the text descriptions embedded
within the `Target ID` column for the reported matches.
* Explicitly report the specific protein names/functions of the top
structural homologues.
* Provide a synthesized overview summarizing the entire *variety* of
different functions, domains, or protein families found across the whole
list of homologues (e.g., "Most hits are portal proteins, but there is
also a distinct cluster of viral capsid matches...").
9. Explicitly inform the user of both newly created files (`.json` and `.md`)
and their locations so they can be seamlessly used in subsequent analysis
steps.
## * If the API returns an error or the file is missing, inform the user clearly
and ask them to verify the file path.
© google-deepmind · Apache-2.0 · google-deepmind/science-skills