Communitygithub.com

醣工程

分析與設計蛋白質醣基化修飾。掃描序列中的N-醣基化序列訊號 (N-X-S/T),預測O-醣基化熱點,並使用精選的醣工程工具(NetOGlyc, GlycoShield, GlycoWorkbench)。適用於醣蛋白工程、治療性抗體優化及疫苗設計。

醣工程 是什麼?

此技能「醣工程」是專為開發者與AI代理設計的綜合性工具,用於分析及工程改造蛋白質醣基化。醣基化是超過50%人類蛋白質會發生的翻譯後修飾,對蛋白質折疊、穩定性、免疫辨識及治療性藥物的藥物動力學至關重要。該技能提供N-醣基化序列訊號 (N-X-S/T,X≠Pro) 的掃描功能,並內建Heuristic方法預測O-醣基化熱點,幫助快速鑑定潛在修飾位點。此外,它也整合了多個外部專業工具與資料庫的存取指引,包括NetOGlyc 4.0(高準確度O-醣基化預測)、GlycoSHIELD(醣基屏蔽分析,用於疫苗與抗體設計)、GlycoWorkbench(醣結構繪圖)、GlyConnect(實驗驗證的醣蛋白資料庫)與UniCarbKB(醣結構資料庫)。用戶可直接在程式碼中呼叫這些工具的API或遵循安裝步驟。技能還涵蓋治療性抗體醣工程的關鍵策略(如去岩藻糖以增強ADCC、唾液酸化以延長半衰期)與常見突變對照表,並提供IUPAC醣類縮寫與複合型N-醣鏈結構範例。此工具支援Python環境,並透過標準requests庫與外部Web服務互動,使AI代理能自動化醣基化分析工作流程,從序列掃描到外部工具提交一氣呵成。

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

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

醣工程 是做什麼的?

概述

醣基化(Glycosylation)是最常見也最複雜的蛋白質轉譯後修飾,影響超過 50% 的人類蛋白質。醣類分子調控蛋白質的摺疊、穩定性、免疫辨識、受體交互作用以及治療性蛋白質的藥物動力學。醣工程(Glycoengineering)旨在透過合理修改醣基化模式,來改善治療效果、穩定性或免疫逃逸能力。

兩種主要的醣基化類型:

  • N-醣基化:附著在天門冬醯胺 (N) 上的序列訊號 N-X-[S/T],其中 X ≠ 脯胺酸;發生在內質網/高基氏體
  • O-醣基化:附著在絲胺酸 (S) 或蘇胺酸 (T) 上;無嚴格的一致性序列;主要起始於 GalNAc

何時使用此技能

在以下情況使用此技能:

  • 抗體工程:優化 Fc 區醣基化以增強 ADCC、CDC 或降低免疫原性
  • 治療性蛋白設計:鑑定影響半衰期、穩定性或免疫原性的醣基化位點
  • 疫苗抗原設計:設計醣基屏蔽以集中免疫反應於保留的抗原決定位
  • 生物相似藥特性分析:比較參考藥品與生物相似藥之間的醣鏈模式
  • 藥物靶點分析:醣基化是否影響受體的靶點結合?
  • 蛋白質穩定性:N-醣鏈通常穩定蛋白質;鑑定可進行穩定化突變的位點

N-醣基化序列訊號分析

掃描 N-醣基化位點

N-醣基化發生於序列訊號 N-X-[S/T],其中 X ≠ 脯胺酸。

import re
from typing import List, Tuple

def find_n_glycosylation_sequons(sequence: str) -> List[dict]:
    """
    掃描蛋白質序列中典型的 N-連接醣基化序列訊號。
    模體:N-X-[S/T],其中 X ≠ 脯胺酸。

    參數:
        sequence: 單字母胺基酸序列

    返回:
        包含位置(1-based)、模體和上下文資訊的字典列表
    """
    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]  # ±3 個殘基的上下文
            results.append({
                'position': i + 1,   # 1-based
                '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:
    """產生 N-醣基化位點的研究日誌摘要。"""
    sequons = find_n_glycosylation_sequons(sequence)

    lines = [f"# N-醣基化序列訊號分析:{protein_name or '蛋白質'}"]
    lines.append(f"序列長度:{len(sequence)}")
    lines.append(f"總 N-醣基化序列訊號數:{len(sequons)}")

    if sequons:
        lines.append(f"\nN-X-S 位點數:{sum(1 for s in sequons if s['sequon_type'] == 'NXS')}")
        lines.append(f"N-X-T 位點數:{sum(1 for s in sequons if s['sequon_type'] == 'NXT')}")
        lines.append(f"\n位點詳細資訊:")
        for s in sequons:
            lines.append(f"  位置 {s['position']}:{s['motif']}(上下文:...{s['context']}...)")
    else:
        lines.append("未偵測到典型的 N-醣基化序列訊號。")

    return "\n".join(lines)

# 範例:IgG1 Fc 區域
fc_sequence = "APELLGGPSVFLFPPKPKDTLMISRTPEVTCVVVDVSHEDPEVKFNWYVDGVEVHNAKTKPREEQYNSTYRVVSVLTVLHQDWLNGKEYKCKVSNKALPAPIEKTISKAKGQPREPQVYTLPPSREEMTKNQVSLTCLVKGFYPSDIAVEWESNGQPENNYKTTPPVLDSDGSFFLYSKLTVDKSRWQQGNVFSCSVMHEALHNHYTQKSLSLSPGK"
print(summarize_glycosylation_sites(fc_sequence, "IgG1 Fc"))

突變 N-醣基化位點

def eliminate_glycosite(sequence: str, position: int, replacement: str = "Q") -> str:
    """
    透過將 Asn 取代為 Gln(保守性突變)來消除 N-醣基化位點。

    參數:
        sequence: 蛋白質序列
        position: 要突變的天門冬醯胺的 1-based 位置
        replacement: 要取代的胺基酸(預設 Q = Gln;大小相似,不會被醣基化)

    返回:
        突變後的序列
    """
    seq = list(sequence.upper())
    idx = position - 1
    assert seq[idx] == 'N', f"位置 {position} 是 '{seq[idx]}',而不是 'N'"
    seq[idx] = replacement.upper()
    return ''.join(seq)

def add_glycosite(sequence: str, position: int, flanking_context: str = "S") -> str:
    """
    透過將某個殘基突變為 Asn,引入 N-醣基化位點,
    並確保 X ≠ Pro 且 +2 = S/T。

    參數:
        position: 要引入 Asn 的 1-based 位置
        flanking_context: 位置+2 處的胺基酸(如果需要修改則為 'S' 或 'T')
    """
    seq = list(sequence.upper())
    idx = position - 1

    # 突變為 Asn
    seq[idx] = 'N'

    # 確保 X+1 != Pro(如果需要則突變為 Ala)
    if idx + 1 < len(seq) and seq[idx + 1] == 'P':
        seq[idx + 1] = 'A'

    # 確保 X+2 = S 或 T
    if idx + 2 < len(seq) and seq[idx + 2] not in ('S', 'T'):
        seq[idx + 2] = flanking_context

    return ''.join(seq)

O-醣基化分析

啟發式 O-醣基化熱點預測

def predict_o_glycosylation_hotspots(
    sequence: str,
    window: int = 7,
    min_st_fraction: float = 0.4,
    disallow_proline_next: bool = True
) -> List[dict]:
    """
    基於局部 S/T 密度的啟發式 O-醣基化熱點評分。
    不能取代 NetOGlyc;作為快速基礎線使用。

    規則:
    - O-GalNAc 醣基化聚集在 Ser/Thr 豐富的片段
    - 標記 S/T 富集窗口中的 Ser/Thr 殘基
    - 避免 S/T 後緊跟 Pro(TP/SP 模體會抑制 GalNAc-T)

    參數:
        window: 用於計算局部 S/T 密度的奇數窗口大小
        min_st_fraction: 標記位點所需的窗口內 S/T 最小比例
    """
    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

外部醣工程工具

1. NetOGlyc 4.0(O-醣基化預測)

用於高準確度 O-GalNAc 位點預測的網路服務:

import requests

def submit_netoglycv4(fasta_sequence: str) -> str:
    """
    提交序列至 NetOGlyc 4.0 網路服務。
    返回用於結果擷取的任務 URL。

    注意:此處使用 DTU Health Tech 網路服務。結果約需 1-5 分鐘。
    """
    url = "https://services.healthtech.dtu.dk/cgi-bin/webface2.cgi"
    # NetOGlyc 提交(參數可能因網路服務版本而異)
    # 建議在大多數情況下直接使用網路介面
    print("請於此處提交序列:https://services.healthtech.dtu.dk/services/NetOGlyc-4.0/")
    return url

# 另見:NetNGlyc 用於 N-醣基化預測
# URL:https://services.healthtech.dtu.dk/services/NetNGlyc-1.0/

2. GlycoSHIELD(醣基屏蔽分析)

GlycoSHIELD 將預先模擬的醣鏈構型庫嫁接至靜態蛋白質結構上,並評分醣鏈屏蔽了多少蛋白質表面,無需執行新的分子動力學模擬 (Tsai 等人,Cell 2024,doi:10.1016/j.cell.2024.01.034):

GlycoSHIELD 不在 PyPI 上 — uv pip install glycoshield 會失敗。它以三個腳本形式提供,並基於一個小型 glycoshield 套件(需要 numpy, scipy, matplotlib, MDAnalysis;GlycoSASA.py 還需要在 PATH 上有 gmx 來自 GROMACS)。從檢出目錄安裝:

# 安裝 (GPL-3.0)。醣鏈構型庫需另外下載 —
# 參見 glycan_library_downloader.py 和儲存庫中的 GLYCAN_LIBRARY/。
git clone https://gitlab.mpcdf.mpg.de/dioscuri-biophysics/glycoshield-md.git
cd glycoshield-md
uv pip install -e .

# 1. 將醣鏈構型嫁接至輸入檔案中列出的每個序列訊號上。
#    每行一個位點:<鏈> <殘基-1,殘基,殘基+1> <1,2,3> <醣鏈.pdb> <醣鏈.xtc> <輸出.pdb> <輸出.xtc>
python GlycoSHIELD.py --protpdb protein.pdb --inputfile sequons_input \
    --threshold 3.5 --mode CG --shuffle-sugar

# 2. 跨嫁接構型集合的每個殘基屏蔽評分(探針半徑單位為 nm)
python GlycoSASA.py --pdblist A_463.pdb,A_492.pdb --xtclist A_463.xtc,A_492.xtc \
    --probelist 0.14,0.25 --plottrace

說明:這些旗標來自腳本的 argparse 定義和上層教程(N-cadherin EC5 帶有 Man5 醣鏈);在此處並未實際執行。--mode CG 僅針對 Cα 原子檢查衝突,並與 --threshold 3.5 搭配使用;--mode All 搭配 --threshold 0.7 則是全原子設定。

3. GlycoWorkbench(醣鏈結構繪圖/分析)

4. GlyConnect(醣鏈-蛋白質資料庫)

  • URL:https://glyconnect.expasy.org/
  • 用途:查找經實驗驗證的醣蛋白和醣基化位點
  • 查詢:依蛋白質(UniProt ID)、醣鏈結構或組織進行查詢
import requests

def query_glyconnect(uniprot_id: str) -> dict:
    """查詢 GlyConnect 以獲取某蛋白質的醣基化資料。"""
    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 {}

# 範例:查詢 EGFR 的醣基化
# egfr_glyco = query_glyconnect("P00533")

5. UniCarbKB(醣鏈結構資料庫)

  • URL:https://unicarbkb.org/
  • 用途:瀏覽醣鏈結構,依質量或組成搜尋
  • 格式:GlycoCT 或 IUPAC 表示法

關鍵醣工程策略

針對治療性抗體

目標策略備註
增強 ADCCFc Asn297 去岩藻糖化去岩藻糖化的 IgG1 與 FcγRIIIa 的結合能力提高約 50 倍
降低免疫原性移除非人類醣鏈消除 α-Gal、NGNA 抗原決定位
改善藥物動力學半衰期唾液酸化唾液酸化的醣鏈可延長半衰期
減少發炎高度唾液酸化IVIG 的抗發炎機制
建立醣基屏蔽在表面添加 N-醣基化位點遮蔽易受攻擊的抗原決定位(疫苗設計)

常用突變

突變效果
N297A/Q (IgG1)移除 Fc 區醣基化(去醣基化)
N297D (IgG1)移除 Fc 區醣基化
S298A/E333A/K334A增加 FcγRIIIa 結合
F243L (IgG1)增加去岩藻糖化
T299A移除 Fc 區醣基化

醣鏈表示法

IUPAC 壓縮式表示法(單醣縮寫)

符號全名類型
Glc葡萄糖己糖
GlcNAcN-乙醯葡萄糖胺HexNAc
Man甘露糖己糖
Gal半乳糖己糖
Fuc岩藻糖去氧己糖
Neu5AcN-乙醯神經胺酸(唾液酸)唾液酸
GalNAcN-乙醯半乳糖胺HexNAc

複合型 N-醣鏈結構

典型複合型雙觸角 N-醣鏈:
Neu5Ac-Gal-GlcNAc-Man\
                       Man-GlcNAc-GlcNAc-[Asn]
Neu5Ac-Gal-GlcNAc-Man/
(±最內層 GlcNAc 上的核心岩藻糖)

最佳實務

  • 從 NetNGlyc/NetOGlyc 開始:在實驗驗證前先進行計算預測
  • 以質譜儀驗證:使用醣蛋白質體學(Byonic, Mascot)進行位點特異性醣鏈分析
  • 考慮位點上下文:並非所有預測的序列訊號都會實際發生醣基化(可及性、細胞類型、蛋白質構型)
  • 針對抗體:Fc N297 的醣鏈至關重要 — 請務必先表徵此位點
  • 使用 GlyConnect:檢查您的目標蛋白質是否有實驗驗證的醣基化資料

其他資源

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.

相關技能