Token导航 LogoToken导航

Agent Skill · 研究检索

gwas-database(GWAS 数据库)

用于辅助数据库表结构、查询语句、迁移脚本和数据维护任务。它适合让 Agent 分析 schema、编写 SQL、排查查询问题、整理索引或生成迁移建议。使用时需要明确数据库类型、连接环境和目标表,区分只读分析与写入变更;涉及删除、更新、迁移和批量导入时,应优先 dry-run、备份或事务保护,避免误操作。

gwas-database 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证为 MIT,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 18,372。

总安装 6,120周安装 255GitHub Stars 26,399下载 2,040核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:gwas-database(GWAS 数据库)
来源仓库:https://github.com/davila7/claude-code-templates
仓库路径:skills/gwas-database
安装命令:
npx skills add https://github.com/davila7/claude-code-templates --skill gwas-database
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/davila7/claude-code-templates --skill gwas-database

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

gwas-database 接入 NHGRI-EBI GWAS Catalog,提供 SNP-性状关联与效应值查询。支持疾病相关变异筛选、曼哈顿图数据导出与富集分析准备。适用于遗传关联研究、药物靶点发现与精准医学数据分析。注意摘要统计可用性因研究而异,部分条目可能缺少完整 p-value 信息。

适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/gwas-database

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/davila7/claude-code-templates --skill gwas-dat…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

gwas-database 怎么安装?

在终端执行 npx skills add https://github.com/davila7/claude-code-templates --skill gwas-database。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

gwas-database 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

gwas-database 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

gwas-database 是免费的吗?

来源标注的许可证是 MIT。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

gwas-database 用的人多吗?

公开数据是累计安装 6,120 次,近一周安装 255 次,下载 2,040 次,GitHub 26,399 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

gwas-database 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 3 个目录同时收录,说明这个 Skill 流传比较广。
  • 许可证明确为 MIT,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
gwas-database

GWAS 数据库 · 本页

6,12026,399需要联网MIT通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

GWAS Catalog Database

Overview

The GWAS Catalog is a comprehensive repository of published genome-wide association studies maintained by the National Human Genome Research Institute (NHGRI) and the European Bioinformatics Institute (EBI). The catalog contains curated SNP-trait associations from thousands of GWAS publications, including genetic variants, associated traits and diseases, p-values, effect sizes, and full summary statistics for many studies.

When to Use This Skill

This skill should be used when queries involve:

  • Genetic variant associations: Finding SNPs associated with diseases or traits
  • SNP lookups: Retrieving information about specific genetic variants (rs IDs)
  • Trait/disease searches: Discovering genetic associations for phenotypes
  • Gene associations: Finding variants in or near specific genes
  • GWAS summary statistics: Accessing complete genome-wide association data
  • Study metadata: Retrieving publication and cohort information
  • Population genetics: Exploring ancestry-specific associations
  • Polygenic risk scores: Identifying variants for risk prediction models
  • Functional genomics: Understanding variant effects and genomic context
  • Systematic reviews: Comprehensive literature synthesis of genetic associations

Core Capabilities

1. Understanding GWAS Catalog Data Structure

The GWAS Catalog is organized around four core entities:

  • Studies: GWAS publications with metadata (PMID, author, cohort details)
  • Associations: SNP-trait associations with statistical evidence (p ≤ 5×10⁻⁸)
  • Variants: Genetic markers (SNPs) with genomic coordinates and alleles
  • Traits: Phenotypes and diseases (mapped to EFO ontology terms)

Key Identifiers:

  • Study accessions: GCST IDs (e.g., GCST001234)
  • Variant IDs: rs numbers (e.g., rs7903146) or variant_id format
  • Trait IDs: EFO terms (e.g., EFO_0001360 for type 2 diabetes)
  • Gene symbols: HGNC approved names (e.g., TCF7L2)

2. Web Interface Searches

The web interface at https://www.ebi.ac.uk/gwas/ supports multiple search modes:

By Variant (rs ID):

rs7903146

Returns all trait associations for this SNP.

By Disease/Trait:

type 2 diabetes
Parkinson disease
body mass index

Returns all associated genetic variants.

By Gene:

APOE
TCF7L2

Returns variants in or near the gene region.

By Chromosomal Region:

10:114000000-115000000

Returns variants in the specified genomic interval.

By Publication:

PMID:20581827
Author: McCarthy MI
GCST001234

Returns study details and all reported associations.

3. REST API Access

The GWAS Catalog provides two REST APIs for programmatic access:

Base URLs:

  • GWAS Catalog API: https://www.ebi.ac.uk/gwas/rest/api
  • Summary Statistics API: https://www.ebi.ac.uk/gwas/summary-statistics/api

API Documentation:

Core Endpoints:

  1. Studies endpoint - /studies/{accessionID} import requests # Get a specific study url = "https://www.ebi.ac.uk/gwas/rest/api/studies/GCST001795" response = requests.get(url, headers={"Content-Type": "application/json"}) study = response.json()
  2. Associations endpoint - /associations # Find associations for a variant variant = "rs7903146" url = f"https://www.ebi.ac.uk/gwas/rest/api/singleNucleotidePolymorphisms/{variant}/associations" params = {"projection": "associationBySnp"} response = requests.get(url, params=params, headers={"Content-Type": "application/json"}) associations = response.json()
  3. Variants endpoint - /singleNucleotidePolymorphisms/{rsID} # Get variant details url = "https://www.ebi.ac.uk/gwas/rest/api/singleNucleotidePolymorphisms/rs7903146" response = requests.get(url, headers={"Content-Type": "application/json"}) variant_info = response.json()
  4. Traits endpoint - /efoTraits/{efoID} # Get trait information url = "https://www.ebi.ac.uk/gwas/rest/api/efoTraits/EFO_0001360" response = requests.get(url, headers={"Content-Type": "application/json"}) trait_info = response.json()

4. Query Examples and Patterns

Example 1: Find all associations for a disease

import requests

trait = "EFO_0001360"  # Type 2 diabetes
base_url = "https://www.ebi.ac.uk/gwas/rest/api"

# Query associations for this trait
url = f"{base_url}/efoTraits/{trait}/associations"
response = requests.get(url, headers={"Content-Type": "application/json"})
associations = response.json()

# Process results
for assoc in associations.get('_embedded', {}).get('associations', []):
    variant = assoc.get('rsId')
    pvalue = assoc.get('pvalue')
    risk_allele = assoc.get('strongestAllele')
    print(f"{variant}: p={pvalue}, risk allele={risk_allele}")

Example 2: Get variant information and all trait associations

import requests

variant = "rs7903146"
base_url = "https://www.ebi.ac.uk/gwas/rest/api"

# Get variant details
url = f"{base_url}/singleNucleotidePolymorphisms/{variant}"
response = requests.get(url, headers={"Content-Type": "application/json"})
variant_data = response.json()

# Get all associations for this variant
url = f"{base_url}/singleNucleotidePolymorphisms/{variant}/associations"
params = {"projection": "associationBySnp"}
response = requests.get(url, params=params, headers={"Content-Type": "application/json"})
associations = response.json()

# Extract trait names and p-values
for assoc in associations.get('_embedded', {}).get('associations', []):
    trait = assoc.get('efoTrait')
    pvalue = assoc.get('pvalue')
    print(f"Trait: {trait}, p-value: {pvalue}")

Example 3: Access summary statistics

import requests

# Query summary statistics API
base_url = "https://www.ebi.ac.uk/gwas/summary-statistics/api"

# Find associations by trait with p-value threshold
trait = "EFO_0001360"  # Type 2 diabetes
p_upper = "0.000000001"  # p < 1e-9
url = f"{base_url}/traits/{trait}/associations"
params = {
    "p_upper": p_upper,
    "size": 100  # Number of results
}
response = requests.get(url, params=params)
results = response.json()

# Process genome-wide significant hits
for hit in results.get('_embedded', {}).get('associations', []):
    variant_id = hit.get('variant_id')
    chromosome = hit.get('chromosome')
    position = hit.get('base_pair_location')
    pvalue = hit.get('p_value')
    print(f"{chromosome}:{position} ({variant_id}): p={pvalue}")

Example 4: Query by chromosomal region

import requests

# Find variants in a specific genomic region
chromosome = "10"
start_pos = 114000000
end_pos = 115000000

base_url = "https://www.ebi.ac.uk/gwas/rest/api"
url = f"{base_url}/singleNucleotidePolymorphisms/search/findByChromBpLocationRange"
params = {
    "chrom": chromosome,
    "bpStart": start_pos,
    "bpEnd": end_pos
}
response = requests.get(url, params=params, headers={"Content-Type": "application/json"})
variants_in_region = response.json()

5. Working with Summary Statistics

The GWAS Catalog hosts full summary statistics for many studies, providing access to all tested variants (not just genome-wide significant hits).

Access Methods:

  1. FTP download: http://ftp.ebi.ac.uk/pub/databases/gwas/summary_statistics/
  2. REST API: Query-based access to summary statistics
  3. Web interface: Browse and download via the website

Summary Statistics API Features:

  • Filter by chromosome, position, p-value
  • Query specific variants across studies
  • Retrieve effect sizes and allele frequencies
  • Access harmonized and standardized data

Example: Download summary statistics for a study

import requests
import gzip

# Get available summary statistics
base_url = "https://www.ebi.ac.uk/gwas/summary-statistics/api"
url = f"{base_url}/studies/GCST001234"
response = requests.get(url)
study_info = response.json()

# Download link is provided in the response
# Alternatively, use FTP:
# ftp://ftp.ebi.ac.uk/pub/databases/gwas/summary_statistics/GCSTXXXXXX/

6. Data Integration and Cross-referencing

The GWAS Catalog provides links to external resources:

Genomic Databases:

  • Ensembl: Gene annotations and variant consequences
  • dbSNP: Variant identifiers and population frequencies
  • gnomAD: Population allele frequencies

Functional Resources:

  • Open Targets: Target-disease associations
  • PGS Catalog: Polygenic risk scores
  • UCSC Genome Browser: Genomic context

Phenotype Resources:

  • EFO (Experimental Factor Ontology): Standardized trait terms
  • OMIM: Disease gene relationships
  • Disease Ontology: Disease hierarchies

Following Links in API Responses:

import requests

# API responses include _links for related resources
response = requests.get("https://www.ebi.ac.uk/gwas/rest/api/studies/GCST001234")
study = response.json()

# Follow link to associations
associations_url = study['_links']['associations']['href']
associations_response = requests.get(associations_url)

Query Workflows

Workflow 1: Exploring Genetic Associations for a Disease

  1. Identify the trait using EFO terms or free text:

- Search web interface for disease name - Note the EFO ID (e.g., EFO_0001360 for type 2 diabetes)

  1. Query associations via API: url = f"https://www.ebi.ac.uk/gwas/rest/api/efoTraits/{efo_id}/associations"
  2. Filter by significance and population:

- Check p-values (genome-wide significant: p ≤ 5×10⁻⁸) - Review ancestry information in study metadata - Filter by sample size or discovery/replication status

  1. Extract variant details:

- rs IDs for each association - Effect alleles and directions - Effect sizes (odds ratios, beta coefficients) - Population allele frequencies

  1. Cross-reference with other databases:

- Look up variant consequences in Ensembl - Check population frequencies in gnomAD - Explore gene function and pathways

Workflow 2: Investigating a Specific Genetic Variant

  1. Query the variant: url = f"https://www.ebi.ac.uk/gwas/rest/api/singleNucleotidePolymorphisms/{rs_id}"
  2. Retrieve all trait associations: url = f"https://www.ebi.ac.uk/gwas/rest/api/singleNucleotidePolymorphisms/{rs_id}/associations"
  3. Analyze pleiotropy:

- Identify all traits associated with this variant - Review effect directions across traits - Look for shared biological pathways

  1. Check genomic context:

- Determine nearby genes - Identify if variant is in coding/regulatory regions - Review linkage disequilibrium with other variants

Workflow 3: Gene-Centric Association Analysis

  1. Search by gene symbol in web interface or: url = f"https://www.ebi.ac.uk/gwas/rest/api/singleNucleotidePolymorphisms/search/findByGene" params = {"geneName": gene_symbol}
  2. Retrieve variants in gene region:

- Get chromosomal coordinates for gene - Query variants in region - Include promoter and regulatory regions (extend boundaries)

  1. Analyze association patterns:

- Identify traits associated with variants in this gene - Look for consistent associations across studies - Review effect sizes and directions

  1. Functional interpretation:

- Determine variant consequences (missense, regulatory, etc.) - Check expression QTL (eQTL) data - Review pathway and network context

Workflow 4: Systematic Review of Genetic Evidence

  1. Define research question:

- Specific trait or disease of interest - Population considerations - Study design requirements

  1. Comprehensive variant extraction:

- Query all associations for trait - Set significance threshold - Note discovery and replication studies

  1. Quality assessment:

- Review study sample sizes - Check for population diversity - Assess heterogeneity across studies - Identify potential biases

  1. Data synthesis:

- Aggregate associations across studies - Perform meta-analysis if applicable - Create summary tables - Generate Manhattan or forest plots

  1. Export and documentation:

- Download full association data - Export summary statistics if needed - Document search strategy and date - Create reproducible analysis scripts

Workflow 5: Accessing and Analyzing Summary Statistics

  1. Identify studies with summary statistics:

- Browse summary statistics portal - Check FTP directory listings - Query API for available studies

  1. Download summary statistics: # Via FTP wget ftp://ftp.ebi.ac.uk/pub/databases/gwas/summary_statistics/GCSTXXXXXX/harmonised/GCSTXXXXXX-harmonised.tsv.gz
  2. Query via API for specific variants: url = f"https://www.ebi.ac.uk/gwas/summary-statistics/api/chromosomes/{chrom}/associations" params = {"start": start_pos, "end": end_pos}
  3. Process and analyze:

- Filter by p-value thresholds - Extract effect sizes and confidence intervals - Perform downstream analyses (fine-mapping, colocalization, etc.)

Response Formats and Data Fields

Key Fields in Association Records:

  • rsId: Variant identifier (rs number)
  • strongestAllele: Risk allele for the association
  • pvalue: Association p-value
  • pvalueText: P-value as text (may include inequality)
  • orPerCopyNum: Odds ratio or beta coefficient
  • betaNum: Effect size (for quantitative traits)
  • betaUnit: Unit of measurement for beta
  • range: Confidence interval
  • efoTrait: Associated trait name
  • mappedLabel: EFO-mapped trait term

Study Metadata Fields:

  • accessionId: GCST study identifier
  • pubmedId: PubMed ID
  • author: First author
  • publicationDate: Publication date
  • ancestryInitial: Discovery population ancestry
  • ancestryReplication: Replication population ancestry
  • sampleSize: Total sample size

Pagination: Results are paginated (default 20 items per page). Navigate using:

  • size parameter: Number of results per page
  • page parameter: Page number (0-indexed)
  • _links in response: URLs for next/previous pages

Best Practices

Query Strategy

  • Start with web interface to identify relevant EFO terms and study accessions
  • Use API for bulk data extraction and automated analyses
  • Implement pagination handling for large result sets
  • Cache API responses to minimize redundant requests

Data Interpretation

  • Always check p-value thresholds (genome-wide: 5×10⁻⁸)
  • Review ancestry information for population applicability
  • Consider sample size when assessing evidence strength
  • Check for replication across independent studies
  • Be aware of winner's curse in effect size estimates

Rate Limiting and Ethics

  • Respect API usage guidelines (no excessive requests)
  • Use summary statistics downloads for genome-wide analyses
  • Implement appropriate delays between API calls
  • Cache results locally when performing iterative analyses
  • Cite the GWAS Catalog in publications

Data Quality Considerations

  • GWAS Catalog curates published associations (may contain inconsistencies)
  • Effect sizes reported as published (may need harmonization)
  • Some studies report conditional or joint associations
  • Check for study overlap when combining results
  • Be aware of ascertainment and selection biases

Python Integration Example

Complete workflow for querying and analyzing GWAS data:

import requests
import pandas as pd
from time import sleep

def query_gwas_catalog(trait_id, p_threshold=5e-8):
    """
    Query GWAS Catalog for trait associations

    Args:
        trait_id: EFO trait identifier (e.g., 'EFO_0001360')
        p_threshold: P-value threshold for filtering

    Returns:
        pandas DataFrame with association results
    """
    base_url = "https://www.ebi.ac.uk/gwas/rest/api"
    url = f"{base_url}/efoTraits/{trait_id}/associations"

    headers = {"Content-Type": "application/json"}
    results = []
    page = 0

    while True:
        params = {"page": page, "size": 100}
        response = requests.get(url, params=params, headers=headers)

        if response.status_code != 200:
            break

        data = response.json()
        associations = data.get('_embedded', {}).get('associations', [])

        if not associations:
            break

        for assoc in associations:
            pvalue = assoc.get('pvalue')
            if pvalue and float(pvalue) <= p_threshold:
                results.append({
                    'variant': assoc.get('rsId'),
                    'pvalue': pvalue,
                    'risk_allele': assoc.get('strongestAllele'),
                    'or_beta': assoc.get('orPerCopyNum') or assoc.get('betaNum'),
                    'trait': assoc.get('efoTrait'),
                    'pubmed_id': assoc.get('pubmedId')
                })

        page += 1
        sleep(0.1)  # Rate limiting

    return pd.DataFrame(results)

# Example usage
df = query_gwas_catalog('EFO_0001360')  # Type 2 diabetes
print(df.head())
print(f"\nTotal associations: {len(df)}")
print(f"Unique variants: {df['variant'].nunique()}")

Resources

references/api_reference.md

Comprehensive API documentation including:

  • Detailed endpoint specifications for both APIs
  • Complete list of query parameters and filters
  • Response format specifications and field descriptions
  • Advanced query examples and patterns
  • Error handling and troubleshooting
  • Integration with external databases

Consult this reference when:

  • Constructing complex API queries
  • Understanding response structures
  • Implementing pagination or batch operations
  • Troubleshooting API errors
  • Exploring advanced filtering options

Training Materials

The GWAS Catalog team provides workshop materials:

Important Notes

Data Updates

  • The GWAS Catalog is updated regularly with new publications
  • Re-run queries periodically for comprehensive coverage
  • Summary statistics are added as studies release data
  • EFO mappings may be updated over time

Citation Requirements

When using GWAS Catalog data, cite:

  • Sollis E, et al. (2023) The NHGRI-EBI GWAS Catalog: knowledgebase and deposition resource. Nucleic Acids Research. PMID: 37953337
  • Include access date and version when available
  • Cite original studies when discussing specific findings

Limitations

  • Not all GWAS publications are included (curation criteria apply)
  • Full summary statistics available for subset of studies
  • Effect sizes may require harmonization across studies
  • Population diversity is growing but historically limited
  • Some associations represent conditional or joint effects

Data Access

  • Web interface: Free, no registration required
  • REST APIs: Free, no API key needed
  • FTP downloads: Open access
  • Rate limiting applies to API (be respectful)

Additional Resources

平台分布

Claude Code

25.3%
按下载量换算516

OpenCode

25.05%
按下载量换算511

Cursor

15.8%
按下载量换算322

Antigravity

11.27%
按下载量换算230

Gemini CLI

7.21%
按下载量换算147

Codex

3.75%
按下载量换算77

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

继续浏览同类 Skills