К основному содержанию
скилл CX Codex

alphagenome-single-variant-analysis — скилл для Claude Code: анализ

Скилл разбирает эффект генетического варианта в формате chr:pos:ref>alt через AlphaGenome API: экспрессия, доступность хроматина, гистоновые метки.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add google-deepmind/science-skills --skill alphagenome-single-variant-analysis -a claude-code
npx skills add google-deepmind/science-skills --skill alphagenome_single_variant_analysis -a claude-code
Открыть на GitHub

Что делает alphagenome-single-variant-analysis

Скилл берёт координаты варианта и прогоняет их через AlphaGenome API, чтобы показать, как он отражается на экспрессии генов (RNA-seq), доступности хроматина (DNASE), гистоновых метках (ChIP) и транскрипционных факторах. Подходит и для разрешения биологических терминов в онтологии тканей и клеток (UBERON/CL).

Внутри — скрипты визуализации и шаблоны отчётов, включая сравнение Ref/Alt и картинки по сплайсингу. Python-код запускается только через uv run, потому что системный Python не обязательно несёт pandas и numpy. Поиск генов идёт по локальному GTF, внешние API вроде Ensembl REST не используются.

Перед запуском нужен ключ ALPHAGENOME_API_KEY в .env в домашнем каталоге и установленный uv в PATH. Без ключа ни один скрипт не стартует. Ещё скилл просит один раз уведомить о лицензии и создать файл .licenses/alphagenome_single_variant_analysis_LICENSE.txt в корне проекта. Гены длиннее 500kb ломают вид whole_gene — для них нужен --view detail.

Какие задачи решает

  • оценить, как некодирующий вариант влияет на экспрессию ближайшего гена
  • проверить, не ломает ли вариант сплайсинг в промоторе или энхансере
  • сопоставить биологический термин с онтологией UBERON или CL
  • собрать отчёт с таблицей самых сильных попаданий по варианту

Примеры запросов агенту

  • Оцени эффект варианта chr17:43071558:C>T на экспрессию и сплайсинг в AlphaGenome
  • Разреши термин «кардиомиоцит» в онтологии UBERON/CL и проверь по нему вариант
  • Построй Ref/Alt-сравнение для варианта в промоторе гена и сохрани отчёт по шаблону

Как установить alphagenome-single-variant-analysis

1Через Skills CLI (Vercel)

npx skills add google-deepmind/science-skills --skill alphagenome-single-variant-analysis -a claude-code
npx skills add google-deepmind/science-skills --skill alphagenome_single_variant_analysis -a claude-code

2Вручную: положить файлы

~/.claude/skills/alphagenome_single_variant_analysis/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/alphagenome_single_variant_analysis/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора39

opentargets-database Скилл даёт агенту доступ к Open Targets Platform через GraphQL: связи ген-болезнь, данные о лекарствах и оценка перспективности мишени. CX Codex +1 2 200установок ensembl-database Переводит символы генов в ENSG, ENST и ENSP, тянет последовательности и предсказывает эффект варианта через VEP. Нужен, когда работаешь с геномными данными из терминала. CX Codex +1 2 200установок clinvar-database Ищет клиническую значимость и классификацию патогенности геномных вариантов в базе ClinVar. Пригодится для проверки мутаций и поиска контролей. CX Codex +1 2 200установок chembl-database Скилл даёт агенту доступ к базе ChEMBL: молекулы, мишени, биоактивность, одобренные лекарства и поиск по структуре. CX Codex +1 2 200установок uniprot-database Скилл ищет белки, аннотации функций и последовательности в базах UniProtKB, UniParc и UniRef. Помогает сопоставлять идентификаторы и выгружать биологические данные. CX Codex +1 2 200установок openfda-database Ищет, считает и выгружает данные из openFDA API. Нужен для запросов о препаратах, отзывах, маркировке, NDC и событиях безопасности FDA. CX Codex +1 2 200установок pymol Скилл для PyMOL: строит изображения белковых и молекулярных структур, делает выравнивания, меряет расстояния и контакты. Пригодится, когда есть файл структуры и нужна картинка или метрика. CX Codex +1 2 200установок ncbi-sequence-fetch Получает белковые и нуклеотидные последовательности из баз NCBI через E-utilities. Пригодится для поиска данных по номерам accession, генам, локусам, PubMed ID или патентам. CX Codex +1 2 200установок

Похожие

anysearch anysearch-ai Скилл подключает поиск в интернете, тематические запросы, параллельный поиск и извлечение содержимого страниц. Пригодится, когда агенту нужны свежие сведения или нужно проверить утверждение. CX Codex +1 38 500установок academic-paper Imbad0202 Скилл разворачивает конвейер из 12 агентов для подготовки научных статей в 11 режимах. Помогает пройти путь от поиска литературы и плана до проверки цитат и ответа рецензентам. CX Codex +1 10 800установок nature-figure Yuan1z0825 Скилл собирает, правит и проверяет рисунки для научных статей на Python или R. Пригодится, когда графики идут в submission, а не в отчёт. CX Codex +1 18 800установок academic-paper-reviewer Imbad0202 Скилл имитирует коллегиальную проверку научной статьи через пять ролей. Пригодится для рецензии, повторной проверки правок и оценки методологии. CX Codex +1 9 800установок nature-polishing Yuan1z0825 Скилл для правки, перевода и сокращения готового академического текста. Держит факты, термины и границы доказательств на месте. CX Codex +1 17 500установок nature-citation Yuan1z skill, refactored into static/dynamic layers Ищет статьи из Nature и семейства CNS для подтверждения тезисов рукописи, связывает утверждения с источниками и готовит экспорт для менеджера ссылок. Пригодится, когда нужны ссылки именно из этих журналов. CX Codex +1 15 600установок

Вопросы о alphagenome-single-variant-analysis

Как установить alphagenome-single-variant-analysis в Claude Code?

Выполните npx skills add google-deepmind/science-skills --skill alphagenome-single-variant-analysis -a claude-code. После установки файл скилла лежит по пути ~/.claude/skills/alphagenome_single_variant_analysis/SKILL.md.

Что делает alphagenome-single-variant-analysis?

Считает через AlphaGenome API эффекты одного варианта на экспрессию, доступность хроматина, гистоновые метки и транскрипционные факторы, а также разрешает термины в онтологии UBERON/CL.

Что нужно для работы скилла?

Ключ ALPHAGENOME_API_KEY в .env в домашнем каталоге и uv в PATH. Опционально можно указать ALPHAGENOME_GTF_PATH на локальную копию GTF feather-файла, чтобы не скачивать аннотацию.

Исходный текст

SKILL.md · Apache-2.0
---
name: alphagenome-single-variant-analysis
description: >
  Analyzes genetic variant effects on gene expression (RNA-seq), chromatin
  accessibility (DNASE), histone marks (ChIP), and transcription factors
  using the AlphaGenome API. Use when the user asks about non-coding variant effects,
  pathogenicity, clinical significance, disease associations, functional
  effects, gene expression changes, splicing disruption, or regulatory effects
  in promoters and enhancers. Also use for resolving biological terms to
  tissue/cell-type ontologies (UBERON/CL) or analyzing variants in
  chr:pos:ref>alt format.
---

# Variant Analysis using AlphaGenome

## 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/alphagenome_single_variant_analysis_LICENSE.txt does not already
    exist in the workspace root directory then (1) prominently notify the user
    to check the terms at https://deepmind.google.com/science/alphagenome/, then
    (2) create the file recording the notification text and timestamp.
3.  **`.env` file**: Make sure the `.env` file exists in your home directory.
    Create one if it does not exist.
4.  **`ALPHAGENOME_API_KEY`**: This skill requires an API key to function.

    You can register for a key at https://deepmind.google.com/science/alphagenome/.
    You **MUST** use the safe credentials protocol in the `credentials` skill to
    check for and request this key if this skill looks relevant to the user's request.
5.  **`ALPHAGENOME_GTF_PATH` (Optional)**: Accelerate gene/transcript lookup by
    pointing to a local copy of the GTF feather file instead of downloading from
    GCS:

    ```bash
    echo "ALPHAGENOME_GTF_PATH=/path/to/local/gencode.v46.annotation.gtf.gz.feather" >> ~/.env
    ```

## Core Rules

-   **NEVER run `python3` or `python3 -c` directly.** The system Python does not
    necessarily have pandas, numpy, and other key dependencies. ALWAYS use `uv
    run` to run ALL Python code — including scripts, ad-hoc analysis files, and
    one-liners. Do not attempt to `pip install` or create new venvs — `uv`
    manages an isolated environment automatically.
-   **Offline Only**: NEVER use external APIs (e.g., MyGene.info, Ensembl REST)
    for gene/transcript lookup. Use `lookup_gene_info.py` with the local GTF. If
    it fails, fix the environment/paths, do not switch to external APIs.
-   **API Key is required**: `ALPHAGENOME_API_KEY` must be set before running
    any script.
-   **Notification**: If this skill is used, ensure this is mentioned in the
    output.
-   **Report Format**: Always use the templates in `docs/report-templates.md`
    for generating analysis reports, and ensure to include the table of top hits
    from the discovery scan.

## Environment Setup & Troubleshooting

### Python Environment

All scripts must be executed using `uv run`, which manages an isolated virtual
environment with the correct dependencies via `uv`.

```bash
uv run <script_name> [args...]
```

For ad-hoc scripts (e.g., inline analysis code saved to a temp file), pass the
full path instead of a short name:

```bash
uv run --project $SKILL_DIR /tmp/my_analysis.py --arg1 val1
```

> [!NOTE] The first invocation resolves and installs dependencies (~10s).
> Subsequent runs use the cached environment and start instantly. The cache
> lives in `~/.cache/uv/`.

### Common Issues

-   **Column Names**: `tidy_scores` and metadata often use `gene_name` (not
    `gene_symbol`) and `output_type` (not `modality`). Always inspect
    `df.columns` before filtering.
-   **Large Genes**: Genes > 500kb (e.g., `USH2A`) break the `whole_gene` view.
    Use `--view detail` or manual regional windows instead.
-   **Sashimi Strand Error**: `plot_components.Sashimi` does NOT accept a
    `strand` argument directly. Filter input tracks instead.
-   **KeyError: 'ontology_curie'**: Not all tracks have `ontology_curie`. Check
    `track.metadata.columns` before filtering.
-   **Python Path**: If `exec: "python": executable file not found` occurs,
    ensure you are using `uv run` instead of bare `python`/`python3`.
-   **NotImplementedError (pandas)**: "iLocation based boolean indexing on an
    integer type is not available". This occurs when using boolean masks with
    `.iloc` on integer-indexed DataFrames in newer pandas versions. **Fix**:
    Convert boolean masks to integer indices using `np.flatnonzero(mask)`.
-   **GTF Feather Case Sensitivity**: The AlphaGenome GTF Feather file uses
    **Capitalized** column names (`Feature`, `Start`, `End`, `Strand`) unlike
    standard GTF files. Always check `df.columns` if getting KeyErrors.
-   **`score_variant` ontology filtering**: `score_variant` does NOT accept
    `ontology_terms` as an argument. You must filter the returned AnnData
    objects manually by inspecting `adata.var` columns. In contrast,
    `predict_variant` DOES accept `ontology_terms` directly.
-   **Sashimi Zoom Logic**: To ensure "skipping" arcs are visible, expand the
    zoom to include the **flanking exons** rather than relying on junction
    overlap alone.
-   **Junction Scores**: Raw `Junction` objects from `prediction` may be simple
    Intervals. Use `junction_data.get_junctions_to_plot(predictions=...,
    name=...)` to retrieve objects with the `.k` (abundance/score) attribute.
-   **`uv` Not Found**: If `exec: uv: not found`, follow the installation
    instructions in [Prerequisites](#prerequisites).
-   **Registry Authentication Error (401)**: If `uv` fails with 401 Unauthorized
    for a private registry, set `UV_INDEX_URL=https://pypi.org/simple` before
    running the script.

## References

-   [alphagenome-api.md](docs/alphagenome-api.md) — API reference and code
    patterns
-   [interpretation-guide.md](docs/interpretation-guide.md) — Interpretation
    guide, score magnitude rules, ISM, and checklist.
-   [report-templates.md](docs/report-templates.md) — Full report templates
-   [`scripts/visualize_variant_effects.py`](scripts/visualize_variant_effects.py)
    — Single-variant visualization template (Ref/Alt comparisons, Splicing).
    -   **Splicing Zoom Strategy**: Uses a **Hybrid Approach** for optimal
        visibility:
        1.  **Base Interval**: Variant +/- 1 downstream and upstream exon
            (Structural Context).
        2.  **Junction Expansion**: Expands to include the full span of any
            **significant splicing junction** (e.g., exon skipping events that
            span multiple exons).
        3.  **Anchor Enforcement**: Ensures the exons *anchoring* these long
            junctions are fully visible. *Lesson*: Simple fixed windows (e.g.,
            2kb) or nearest-exon logic often fail for skipping events. Always
            use the *observed junction data* to drive zoom levels.
-   [`examples/splicing/`](docs/examples/splicing/) — Splicing analysis examples
-   [`examples/model_limitation_RNU4ATAC/`](docs/examples/model_limitation_RNU4ATAC/)
    — ncRNA structure limitation case study
-   [`examples/polyadenylation_HBA2/`](docs/examples/polyadenylation_HBA2/) — 3'
    UTR / Polyadenylation case study
-   [`examples/regulatory/`](docs/examples/regulatory/) — Regulatory variant
    examples
-   [`examples/negative_result_GATA4/`](docs/examples/negative_result_GATA4/) —
    Negative results (mathematical artefact)
-   [`examples/negative_result_TGFB3/`](docs/examples/negative_result_TGFB3/) —
    Negative results (proxies)
-   [`scripts/lookup_gene_info.py`](scripts/lookup_gene_info.py) — Gene &
    transcript lookup
-   [`scripts/resolve_ontology_terms.py`](scripts/resolve_ontology_terms.py) —
    Ontology term resolution (UBERON/CL IDs)

--------------------------------------------------------------------------------

## Code Patterns

### Broad Discovery Scan

Use `score_variant` across **differential scorers only** to discover unexpected
tissue effects.

```python
from alphagenome.models import dna_client
from alphagenome.models import variant_scorers
from alphagenome.data import genome
import os
import pandas as pd
import dotenv

# Load environment variables from ~/.env
dotenv.load_dotenv(os.path.expanduser('~/.env'))

# Setup API Key and Client
dna_model = dna_client.create(api_key=os.environ.get('ALPHAGENOME_API_KEY'),
                              address='dns:///gdmscience.googleapis.com:443')

# Define Variant (example)
variant_str = "chr2:1234:A>C"
chrom, pos_str, ref_alt = variant_str.split(':')
ref, alt = ref_alt.split('>')
pos = int(pos_str)

# Use supported sequence length (e.g., 2**20 for optimal performance)
SEQ_LENGTH = 2**20
interval = genome.Interval(chrom, pos - SEQ_LENGTH // 2, pos + SEQ_LENGTH // 2)
variant = genome.Variant(chrom, pos, ref, alt)

scorers = [
    variant_scorers.RECOMMENDED_VARIANT_SCORERS[m]
    for m in variant_scorers.RECOMMENDED_VARIANT_SCORERS
    if "ACTIVE" not in m and "CAGE" not in m and "PROCAP" not in m
]

print(f"Scoring variant {variant_str}...")
scores_list = dna_model.score_variant(interval=interval, variant=variant, variant_scorers=scorers)

# Process and Display Results
all_dfs = []
for score_adata in scores_list:
    df = variant_scorers.tidy_scores([score_adata], match_gene_strand=True)
    if df is not None:
        all_dfs.append(df)

if all_dfs:
    df = pd.concat(all_dfs)
    significant = df[df['quantile_score'].abs() > 0.995]
    ranked = significant.sort_values('raw_score', key=abs, ascending=False)
    print("Top Significant Hits:")
    print(ranked[['biosample_name', 'gene_name', 'output_type', 'quantile_score', 'raw_score']])
```

### Extended Search for Disease-Relevant Tissues

```python
# Define keywords based on disease context
disease_keywords = ["liver", "hepatocyte"]

# Filter for any match
mask = df['biosample_name'].str.contains('|'.join(disease_keywords), case=False, na=False)

relevant_hits = df[mask].sort_values('raw_score', key=abs, ascending=False)
print(f"\n--- Extended Analysis (Keywords: {disease_keywords}) ---")
print(relevant_hits.head(20)[['biosample_name', 'output_type', 'raw_score', 'quantile_score']])
```

## Workflow Checklist

```
Variant Analysis Progress:
- [ ] Step 0: Review Golden Examples (MANDATORY)
- [ ] Step 1: Create Output Folder and Setup
- [ ] Step 2: Parse User Query & Research
- [ ] Step 3: Resolve Tissues & Modalities
- [ ] Step 4: Visualize & Save Plots
- [ ] Step 5: Analyze Predictions (view plots, no code). MANDATORY: Read [interpretation-guide.md](docs/interpretation-guide.md) before interpreting results.
- [ ] Step 6: Write Report, save it as `report.md` (MANDATORY)
- [ ] Step 7: Self-Critique (view `report.md` to verify links & claims)
- [ ] Step 8: Make artifact out of `report.md`
```

--------------------------------------------------------------------------------

## Multi-Variant Workflow

If multiple variants are specified, spawn sub-agents to run each variant
analysis and then synthesize each `report.md` into a single report.

### Script Reference

| Script                      | Purpose                                        |
| --------------------------- | ---------------------------------------------- |
| `lookup_gene_info`          | Comprehensive gene and transcript lookup using |
:                             : GTF data                                       :
| `resolve_ontology_terms`    | Biological terms → UBERON/CL/EFO IDs           |
| `visualize_variant_effects` | REF/ALT visualization (expression, regulatory, |
:                             : splicing)                                      :
| `analyze_ism`               | In-Silico Mutagenesis SeqLogo generation       |
| `interpret_splicing`        | Quantitative splicing analysis (delta scores,  |
:                             : junctions)                                     :
| `visualize_genome_tracks`   | Genomic track visualization for a region       |

© google-deepmind · Apache-2.0 · google-deepmind/science-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой