Communitygithub.com

glicoingeniería

Analiza y modifica la glicosilación de proteínas. Escanea secuencias en busca de secuencias N-glicosilación (N-X-S/T), predice sitios calientes de O-glicosilación y accede a herramientas curadas de glicoingeniería (NetOGlyc, GlycoShield, GlycoWorkbench). Para ingeniería de glicoproteínas, optimización de anticuerpos terapéuticos y diseño de vacunas.

¿Qué es glicoingeniería?

La glicoingeniería se centra en la modificación racional de los patrones de glicosilación de proteínas para mejorar su eficacia terapéutica, estabilidad o evasión inmune. Esta habilidad te permite identificar y analizar sitios de N-glicosilación (secuencias N-X-[S/T]) y O-glicosilación en secuencias de proteínas, proporcionando herramientas computacionales para la predicción y mutación de estos sitios. También integra acceso a herramientas externas clave como NetOGlyc para predicción de O-glicosilación de alta precisión, GlycoSHIELD para modelar el escudo de glicanos en estructuras proteicas estáticas, y GlycoWorkbench para dibujo y análisis de estructuras de glicanos. Es útil en la optimización de anticuerpos (por ejemplo, para mejorar ADCC mediante defucosilación), diseño de antígenos de vacunas (creación de escudos de glicanos), caracterización de biosimilares y análisis de estabilidad proteica. La habilidad incluye ejemplos de código Python para escaneo de secuencias y mutaciones, así como recomendaciones de estrategias de ingeniería de glicanos.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/skills/glycoengineering

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace glicoingeniería?

Resumen

La glicosilación es la modificación postraduccional (PTM) de proteínas más común y compleja, afectando a más del 50% de todas las proteínas humanas. Los glicanos regulan el plegamiento, la estabilidad, el reconocimiento inmunitario, las interacciones con receptores y la farmacocinética de las proteínas terapéuticas. La glicoingeniería implica la modificación racional de los patrones de glicosilación para mejorar la eficacia terapéutica, la estabilidad o la evasión inmune.

Dos tipos principales de glicosilación:

  • N-glicosilación: Unida a asparagina (N) en la secuencia N-X-[S/T] donde X ≠ Prolina; ocurre en el RE/Golgi
  • O-glicosilación: Unida a serina (S) o treonina (T); no tiene un motivo de consenso estricto; principalmente iniciación con GalNAc

Cuándo usar esta habilidad

Usa esta habilidad cuando:

  • Ingeniería de anticuerpos: Optimizar la glicosilación del Fc para mejorar ADCC, CDC o reducir inmunogenicidad
  • Diseño de proteínas terapéuticas: Identificar sitios de glicosilación que afectan la vida media, estabilidad o inmunogenicidad
  • Diseño de antígenos de vacunas: Diseñar escudos de glicanos para enfocar respuestas inmunitarias en epítopos conservados
  • Caracterización de biosimilares: Comparar patrones de glicanos entre un referente y un biosimilar
  • Análisis de dianas farmacológicas: ¿La glicosilación afecta la unión a un receptor?
  • Estabilidad de proteínas: Los N-glicanos a menudo estabilizan proteínas; identificar sitios para mutaciones estabilizadoras

Análisis de secuencia N-glicosilación

Escaneo de sitios de N-glicosilación

La N-glicosilación ocurre en la secuencia N-X-[S/T] donde X ≠ Prolina.

import re
from typing import List, Tuple

def find_n_glycosylation_sequons(sequence: str) -> List[dict]:
    """
    Escanea una secuencia de proteína en busca de secuencias canónicas de N-glicosilación.
    Motivo: N-X-[S/T], donde X ≠ Prolina.

    Args:
        sequence: Secuencia de aminoácidos en notación de una letra

    Returns:
        Lista de diccionarios con posición (base 1), motivo y contexto
    """
    seq = sequence.upper()
    results = []
    i = 0
    while i <= len(seq) - 3:
        triplet = seq[i:i+3]
        if triplet[0] == 'N' and triplet[1] != 'P' and triplet[2] in {'S', 'T'}:
            context = seq[max(0, i-3):i+6]  # contexto ±3 residuos
            results.append({
                'position': i + 1,   # base 1
                'motif': triplet,
                'context': context,
                'sequon_type': 'NXS' if triplet[2] == 'S' else 'NXT'
            })
            i += 3
        else:
            i += 1
    return results

def summarize_glycosylation_sites(sequence: str, protein_name: str = "") -> str:
    """Genera un resumen de registro de investigación de los sitios de N-glicosilación."""
    sequons = find_n_glycosylation_sequons(sequence)

    lines = [f"# Análisis de secuencia N-glicosilación: {protein_name or 'Proteína'}"]
    lines.append(f"Longitud de secuencia: {len(sequence)}")
    lines.append(f"Total de secuencias N-glicosilación: {len(sequons)}")

    if sequons:
        lines.append(f"\nSitios N-X-S: {sum(1 for s in sequons if s['sequon_type'] == 'NXS')}")
        lines.append(f"Sitios N-X-T: {sum(1 for s in sequons if s['sequon_type'] == 'NXT')}")
        lines.append(f"\nDetalles de sitios:")
        for s in sequons:
            lines.append(f"  Posición {s['position']}: {s['motif']} (contexto: ...{s['context']}...)")
    else:
        lines.append("No se detectaron secuencias canónicas de N-glicosilación.")

    return "\n".join(lines)

# Ejemplo: Región Fc de IgG1
fc_sequence = "APELLGGPSVFLFPPKPKDTLMISRTPEVTCVVVDVSHEDPEVKFNWYVDGVEVHNAKTKPREEQYNSTYRVVSVLTVLHQDWLNGKEYKCKVSNKALPAPIEKTISKAKGQPREPQVYTLPPSREEMTKNQVSLTCLVKGFYPSDIAVEWESNGQPENNYKTTPPVLDSDGSFFLYSKLTVDKSRWQQGNVFSCSVMHEALHNHYTQKSLSLSPGK"
print(summarize_glycosylation_sites(fc_sequence, "IgG1 Fc"))

Mutación de sitios de N-glicosilación

def eliminate_glycosite(sequence: str, position: int, replacement: str = "Q") -> str:
    """
    Elimina un sitio de N-glicosilación sustituyendo Asn → Gln (conservativa).

    Args:
        sequence: Secuencia de proteína
        position: Posición base 1 de la Asn a mutar
        replacement: Aminoácido a sustituir (por defecto Q = Gln; tamaño similar, no glicosilado)

    Returns:
        Secuencia mutada
    """
    seq = list(sequence.upper())
    idx = position - 1
    assert seq[idx] == 'N', f"La posición {position} es '{seq[idx]}', no 'N'"
    seq[idx] = replacement.upper()
    return ''.join(seq)

def add_glycosite(sequence: str, position: int, flanking_context: str = "S") -> str:
    """
    Introduce un sitio de N-glicosilación mutando un residuo a Asn,
    asegurando que X ≠ Pro y +2 = S/T.

    Args:
        position: Posición base 1 donde introducir Asn
        flanking_context: 'S' o 'T' en posición+2 (si se necesita modificación)
    """
    seq = list(sequence.upper())
    idx = position - 1

    # Mutar a Asn
    seq[idx] = 'N'

    # Asegurar que X+1 != Pro (mutar a Ala si es necesario)
    if idx + 1 < len(seq) and seq[idx + 1] == 'P':
        seq[idx + 1] = 'A'

    # Asegurar que X+2 = S o T
    if idx + 2 < len(seq) and seq[idx + 2] not in ('S', 'T'):
        seq[idx + 2] = flanking_context

    return ''.join(seq)

Análisis de O-glicosilación

Predicción heurística de puntos calientes de O-glicosilación

def predict_o_glycosylation_hotspots(
    sequence: str,
    window: int = 7,
    min_st_fraction: float = 0.4,
    disallow_proline_next: bool = True
) -> List[dict]:
    """
    Puntuación heurística de puntos calientes de O-glicosilación basada en la densidad local de S/T.
    No sustituye a NetOGlyc; usar como línea base rápida.

    Reglas:
    - La O-GalNAc glicosilación se agrupa en segmentos ricos en Ser/Thr
    - Marcar residuos Ser/Thr en ventanas enriquecidas con S/T
    - Evitar S/T seguido inmediatamente por Pro (los motivos TP/SP inhiben GalNAc-T)

    Args:
        window: Tamaño impar de ventana para densidad local de S/T
        min_st_fraction: Fracción mínima de S/T en ventana para marcar sitio
    """
    if window % 2 == 0:
        window = 7
    seq = sequence.upper()
    half = window // 2
    candidates = []

    for i, aa in enumerate(seq):
        if aa not in ('S', 'T'):
            continue
        if disallow_proline_next and i + 1 < len(seq) and seq[i+1] == 'P':
            continue

        start = max(0, i - half)
        end = min(len(seq), i + half + 1)
        segment = seq[start:end]
        st_count = sum(1 for c in segment if c in ('S', 'T'))
        frac = st_count / len(segment)

        if frac >= min_st_fraction:
            candidates.append({
                'position': i + 1,
                'residue': aa,
                'st_fraction': round(frac, 3),
                'window': f"{start+1}-{end}",
                'segment': segment
            })

    return candidates

Herramientas externas de glicoingeniería

1. NetOGlyc 4.0 (predicción de O-glicosilación)

Servicio web para predicción de alta precisión de sitios O-GalNAc:

import requests

def submit_netoglycv4(fasta_sequence: str) -> str:
    """
    Envía secuencia al servicio web NetOGlyc 4.0.
    Devuelve la URL del trabajo para recuperación de resultados.

    Nota: Utiliza el servicio web de DTU Health Tech. Los resultados tardan ~1-5 min.
    """
    url = "https://services.healthtech.dtu.dk/cgi-bin/webface2.cgi"
    # Envío de NetOGlyc (los parámetros pueden variar según la versión del servicio web)
    # Recomendamos usar la interfaz web directamente para la mayoría de los casos de uso
    print("Enviar secuencia en: https://services.healthtech.dtu.dk/services/NetOGlyc-4.0/")
    return url

# También: NetNGlyc para predicción de N-glicosilación
# URL: https://services.healthtech.dtu.dk/services/NetNGlyc-1.0/

2. GlycoSHIELD (Análisis de escudo de glicanos)

GlycoSHIELD injerta librerías de conformeros de glicanos pre-simulados en una estructura proteica estática y puntúa cuánta superficie de la proteína es protegida por los glicanos, sin necesidad de ejecutar nueva DM (Tsai et al., Cell 2024, doi:10.1016/j.cell.2024.01.034):

GlycoSHIELD no está en PyPI — uv pip install glycoshield falla. Se distribuye como tres scripts sobre un pequeño paquete glycoshield (necesita numpy, scipy, matplotlib, MDAnalysis; GlycoSASA.py también necesita gmx de GROMACS en PATH). Instalar desde el repositorio clonado:

# Instalación (GPL-3.0). Las librerías de conformeros de glicanos se descargan por separado —
# consulte glycan_library_downloader.py y GLYCAN_LIBRARY/ en el repositorio.
git clone https://gitlab.mpcdf.mpg.de/dioscuri-biophysics/glycoshield-md.git
cd glycoshield-md
uv pip install -e .

# 1. Injerir conformeros de glicanos en cada secuencia listada en el archivo de entrada.
#    Una línea por sitio: <chain> <res-1,res,res+1> <1,2,3> <glycan.pdb> <glycan.xtc> <out.pdb> <out.xtc>
python GlycoSHIELD.py --protpdb protein.pdb --inputfile sequons_input \
    --threshold 3.5 --mode CG --shuffle-sugar

# 2. Puntuación de protección por residuo en los conjuntos injertados (radios de sonda en nm)
python GlycoSASA.py --pdblist A_463.pdb,A_492.pdb --xtclist A_463.xtc,A_492.xtc \
    --probelist 0.14,0.25 --plottrace

Ilustrativo: las banderas provienen de las definiciones argparse de los scripts y del tutorial original (N-cadherina EC5 con glicanos Man5); no se ejecutaron aquí. --mode CG verifica colisiones solo con átomos Cα y se combina con --threshold 3.5; --mode All con --threshold 0.7 es la configuración de todos los átomos.

3. GlycoWorkbench (Dibujo/Análisis de estructuras de glicanos)

4. GlyConnect (Base de datos de glicano-proteína)

  • URL: https://glyconnect.expasy.org/
  • Uso: Encontrar glicoproteínas y sitios de glicosilación verificados experimentalmente
  • Consulta: Por proteína (ID UniProt), estructura de glicano o tejido
import requests

def query_glyconnect(uniprot_id: str) -> dict:
    """Consulta GlyConnect para datos de glicosilación de una proteína."""
    url = f"https://glyconnect.expasy.org/api/proteins/uniprot/{uniprot_id}"
    response = requests.get(url, headers={"Accept": "application/json"})
    if response.status_code == 200:
        return response.json()
    return {}

# Ejemplo: consultar glicosilación de EGFR
egfr_glyco = query_glyconnect("P00533")

5. UniCarbKB (Base de datos de estructuras de glicanos)

  • URL: https://unicarbkb.org/
  • Uso: Navegar por estructuras de glicanos, buscar por masa o composición
  • Formato: Notación GlycoCT o IUPAC

Estrategias clave de glicoingeniería

Para anticuerpos terapéuticos

ObjetivoEstrategiaNotas
Mejorar ADCCDefucosilación en Fc Asn297IgG1 afucosilado tiene ~50× mejor unión a FcγRIIIa
Reducir inmunogenicidadEliminar glicanos no humanosEliminar epítopos α-Gal, NGNA
Mejorar vida media PKSialilaciónLos glicanos sialilados extienden la vida media
Reducir inflamaciónHipersialilaciónMecanismo antiinflamatorio de IVIG
Crear escudo de glicanosAñadir N-glicositos a la superficieEnmascara epítopos vulnerables (diseño de vacunas)

Mutaciones comunes utilizadas

MutaciónEfecto
N297A/Q (IgG1)Elimina la glicosilación del Fc (aglicosilado)
N297D (IgG1)Elimina la glicosilación del Fc
S298A/E333A/K334AAumenta la unión a FcγRIIIa
F243L (IgG1)Aumenta la defucosilación
T299AElimina la glicosilación del Fc

Notación de glicanos

Notación IUPAC condensada (abreviaturas de monosacáridos)

SímboloNombre completoTipo
GlcGlucosaHexosa
GlcNAcN-AcetilglucosaminaHexNAc
ManManosaHexosa
GalGalactosaHexosa
FucFucosaDesoxihexosa
Neu5AcÁcido N-acetilneuramínico (Ácido siálico)Ácido siálico
GalNAcN-AcetilgalactosaminaHexNAc

Estructura de N-glicano complejo

N-glicano biantenado complejo típico:
Neu5Ac-Gal-GlcNAc-Man\
                       Man-GlcNAc-GlcNAc-[Asn]
Neu5Ac-Gal-GlcNAc-Man/
(±Fucosa central en GlcNAc más interno)

Mejores prácticas

  • Comience con NetNGlyc/NetOGlyc para predicción computacional antes de la validación experimental
  • Verifique con espectrometría de masas: Glicoproteómica (Byonic, Mascot) para perfilado de glicanos sitio-específico
  • Considere el contexto del sitio: No todas las secuencias predichas están realmente glicosiladas (accesibilidad, tipo celular, conformación proteica)
  • Para anticuerpos: El glicano Fc N297 es crítico — caracterice siempre primero este sitio
  • Use GlyConnect para verificar si su proteína de interés tiene datos de glicosilación verificados experimentalmente

Recursos adicionales

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

adaptyv

How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user mentions Adaptyv, Foundry API, protein binding assays, protein screening experiments, BLI/SPR assays, thermostability assays, or wants to submit protein sequences for experimental characterization. Also trigger when code imports `adaptyv`, `adaptyv_sdk`, or `FoundryClient`, or references `foundry-api-public.adaptyvbio.com`.

aeon

This skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection, segmentation, and similarity search. Use when working with temporal data, sequential patterns, or time-indexed observations requiring specialized algorithms beyond standard ML approaches. Particularly suited for univariate and multivariate time series analysis with scikit-learn compatible APIs.

alphagenome

Look up precomputed AlphaGenome Atlas effects for any GRCh38 single-nucleotide variant (AVI score with Phred and 18 SHAP feature attributions, plus raw and quantile scores for RNA-seq, DNase, ATAC, ChIP-TF, ChIP-histone, CAGE, PRO-cap, splicing, polyadenylation and contact-map tracks), score variants or scan windows on demand with the AlphaGenome model for human and mouse (variant scoring, in silico mutagenesis, REF-versus-ALT track prediction), and build Atlas website deep links. Use when the user mentions AlphaGenome, AlphaGenome Atlas, AVI or AlphaGenome Variant Impact, DeepMind variant effect prediction, or wants to prioritise or mechanistically interpret non-coding, regulatory, splicing, enhancer, promoter, or chromatin-accessibility effects of SNVs from a VCF, credible set, or region. Research use only; not a clinical tool.

analytical-method-validation

Plan, execute, and document validation, verification, and transfer of analytical procedures under the governing framework - ICH Q2(R2) and Q14, USP <1220>/<1225>/<1226>, ICH M10 bioanalytical, CLSI EP, or ISO/IEC 17025. Use for HPLC, LC-MS/MS, GC, CE, ICP-MS, dissolution, qNMR, qPCR, NIR, and ligand binding or cell-based assays whenever the question is whether a procedure is fit for its intended purpose. Triggers include

anndata

Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.

arbor

Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree Refinement (HTR) from the Arbor paper. Use this whenever someone wants to iteratively optimize something over many experiments without overfitting — e.g.

arboreto

Infer gene regulatory networks (GRNs) from gene expression data using scalable algorithms (GRNBoost2, GENIE3). Use when analyzing transcriptomics data (bulk RNA-seq, single-cell RNA-seq) to identify transcription factor-target gene relationships and regulatory interactions. Supports distributed computation for large-scale datasets.

astropy

Core Python library for astronomy and astrophysics workflows that need Astropy APIs, including units/quantities, coordinates, FITS I/O, tables, time systems, WCS, and cosmology. Use when implementing or debugging astronomical data analysis code with Astropy.

autoskill

Observe the user

benchling-integration

Benchling Python SDK and REST API integration for registry entities, inventory, ELN entries, workflows, Benchling Apps, and Data Warehouse queries. Use when automating lab data with benchling-sdk or the v2 API.

bgpt-paper-search

Search scientific papers and retrieve structured experimental data extracted from full-text studies via the BGPT MCP server. Returns 25+ fields per paper including methods, results, sample sizes, quality scores, and conclusions. Use for literature reviews, evidence synthesis, and finding experimental details not available in abstracts alone.

bids

>

biopython

Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.

bioservices

Unified Python interface to 40+ bioinformatics services. Use when querying multiple databases (UniProt, KEGG, ChEMBL, Reactome) in a single workflow with consistent API. Best for cross-database analysis, ID mapping across services. For quick single-database lookups use gget; for sequence/file manipulation use biopython.

bulk-rnaseq

End-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon, featureCounts), assembles a gene-level counts matrix, then hands off to differential expression (pydeseq2), pathway/GSEA enrichment (pathway-enrichment), and publication figures (scientific-visualization). Use whenever the user has bulk RNA-seq reads or quant output and wants a complete, reproducible differential-expression workflow — e.g.

cellxgene-census

Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data. Use when you need population-scale cell metadata, gene expression slices, Census summary counts, source H5AD URIs/downloads, embeddings, spatial Census data, or reference atlas comparisons across organisms, tissues, diseases, assays, and cell types. For analyzing your own local single-cell data use scanpy, anndata, or scvi-tools.

cirq

Google quantum computing framework. Use when targeting Google Quantum AI hardware, designing noise-aware circuits, or running quantum characterization experiments. Best for Google hardware, noise modeling, and low-level circuit design. For IBM hardware use qiskit; for quantum ML with autodiff use pennylane; for physics simulations use qutip.

citation-management

Comprehensive citation management for academic research. Search OpenAlex, PubMed, and Google Scholar for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.

clinical-decision-support

Prepare and validate research-only clinical decision-support evaluation, evidence-profile, cohort, survival, biomarker/model, privacy, and governance artifacts. Use for aggregate or synthetic research documentation and traceability—not patient care or live clinical operation.

clinical-reports

Create safety-bounded draft structures and run local deterministic checks for clinical case, diagnostic, trial, safety, and aggregate research reports. Use only with synthetic, de-identified, or aggregate inputs and verified source-fact manifests; every output requires qualified review.

Skills relacionados