关于 human-protein-atlas-database
human-protein-atlas-database 是查询 Human Protein Atlas 数据的命令行技能,适合研究人类蛋白质表达和定位的人员。它涵盖组织 IHC 丰度、亚细胞位置、RNA-seq 共识数据和基因搜索。
主要功能
- 01将基因符号映射为 Ensembl ID
- 02获取组织蛋白质表达水平
- 03查询蛋白质亚细胞位置
- 04获取完整基因图谱条目
- 05按表达条件搜索基因
适用场景
- 01查看蛋白质在人体组织中的丰度
- 02定位蛋白质所在的细胞结构
- 03查找具有指定表达模式的基因
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ google-deepmind/ science-skills --skill human-protein-atlas-database安装后在 Claude Code 中输入/human-protein-atlas-database确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/citation.bibsearch-api.mdscripts/hpa_cli.py详细介绍
Human Protein Atlas(HPA)数据库集成
此技能提供 Human Protein Atlas(HPA)的半定量蛋白质表达和空间定位数据。RNA-seq(例如 GTEx)可以告诉我们某个基因是否正在转录,而 HPA 则能确认其蛋白质产物是否实际存在、位于细胞内的何处(例如细胞核与细胞质),以及其在全身血液循环中的浓度。数据基于对正常人体组织和癌症类型进行的免疫组织化学(IHC)分析。
前置条件
uv:阅读uv技能,并按照其中的设置说明操作,确保已安装uv且其位于 PATH 中。- 用户通知:如果工作区根目录中尚不存在 .licenses/human_protein_atlas_database_LICENSE.txt,则 (1) 显著提醒用户查看许可条款:https://www.proteinatlas.org/about/licence,然后 (2) 创建该文件,记录通知文本和时间戳。
适用场景
在以下情况下使用此技能:
- 将基因符号映射为 HPA 查询所需的 Ensembl ID。
- 根据 IHC 染色结果,获取正常人体组织和癌症类型中的半定量蛋白质丰度(High、Medium、Low 或 Not Detected)。
- 查找蛋白质定位的特定细胞器或亚细胞结构(例如,核质、线粒体)。
- 检查 RNA-seq 共识数据与蛋白质表达水平的一致性。
- 根据特定蛋白质表达条件搜索基因(例如,“在杏仁核中表达升高”或“分泌蛋白”)。
在以下情况下请勿使用:
- 查询 eQTL、pQTL 或任何变异水平的关联。HPA 提供野生型表达数据,不包含任何 QTL 信息。
- 查询非人类物种的基因表达。HPA 仅针对人类蛋白质。
- 获取与蛋白质产物无关的纯定量 RNA 表达数据(请考虑改用 GTEx 技能)。
命令选择指南
首次就选对命令。 根据用户的输入选择下方对应的子命令。
- 将基因符号映射为 Ensembl ID:
resolve-ensembl-id - 获取组织蛋白质表达水平:
get-tissue-expression - 获取蛋白质的亚细胞定位:
get-subcellular-location - 获取基因的完整 HPA 元数据条目:
get-atlas-entry - 在 HPA 中搜索符合特定条件的基因:
search-hpa
快速开始
# Map the ERBB2 gene symbol to its Ensembl ID
uv run scripts/hpa_cli.py resolve-ensembl-id ERBB2 --output /tmp/erbb2_id.json
# Get subcellular location by Ensembl ID
uv run scripts/hpa_cli.py get-subcellular-location ENSG00000141736 --output /tmp/erbb2_location.json
所有子命令都会将 JSON 写入磁盘。请始终将输出保存在 /tmp/ 目录中。如果未指定 --output,默认输出文件为 /tmp/hpa_output.json。
命令
1. resolve-ensembl-id — 基因符号 → Ensembl ID
将常用基因符号(例如,“TP53”“ERBB2”)映射为其 Ensembl 基因 ID。HPA 端点严格基于 Ensembl。
uv run scripts/hpa_cli.py resolve-ensembl-id TP53 --output /tmp/tp53_id.json
参数:
gene_symbol(位置参数):标准基因符号(例如,“TP53”)。--output:输出文件路径(默认:/tmp/hpa_output.json)。
2. get-tissue-expression — 获取组织蛋白质水平
根据 IHC 染色结果,返回组织及其对应的蛋白质表达水平列表(High、Medium、Low 或 Not Detected)。
uv run scripts/hpa_cli.py get-tissue-expression ENSG00000130234 \
--tissues "duodenum,thyroid gland" --output /tmp/tissue_expr.json
参数:
ensembl_id(位置参数):Ensembl Gene ID。--tissues:以逗号分隔的组织列表,用于筛选(可选,默认为所有可用组织)。--output:输出文件路径(默认:/tmp/hpa_output.json)。
3. get-subcellular-location — 获取亚细胞定位
获取蛋白质定位的特定细胞器或细胞结构。
uv run scripts/hpa_cli.py get-subcellular-location ENSG00000141736 \
--output /tmp/subcellular.json
参数:
ensembl_id(位置参数):Ensembl Gene ID。--output:输出文件路径。
4. get-atlas-entry — 获取完整的 HPA 条目
获取基因的完整元数据,包括 IHC 评分、RNA-seq 共识和亚细胞定位。
uv run scripts/hpa_cli.py get-atlas-entry ENSG00000254647 \
--output /tmp/ins_entry.json
参数:
ensembl_id(位置参数):Ensembl Gene ID。--format:返回条目的格式,例如 json(默认值:json)。--output:输出文件路径。
5. search-hpa — 按属性搜索
可根据特定条件筛选基因(例如,“在杏仁核中表达升高”)。
uv run scripts/hpa_cli.py search-hpa \
--query "brain_category_rna:amygdala" \
--output /tmp/search_results.json
参数:
--query:搜索查询字符串。详情请参阅 references/search-api.md。--output:输出文件路径。
核心规则
- 使用封装脚本:务必执行提供的辅助脚本来查询数据库,不要直接访问数据库。这些脚本会自动遵循公平使用规范并实现重试逻辑。
- 通知:如果使用了此技能,请确保在输出中说明。
API 版本管理
HPA 网站 www.proteinatlas.org 始终提供最新的数据发布版本。可通过 vNN.proteinatlas.org 访问较早的归档版本(例如,v24.proteinatlas.org),而当前版本的子域名会重定向到 www.proteinatlas.org。此技能的脚本默认查询最新版本。
常见错误
- 如果没有返回结果,请确认查询是否足够详细,可从 references/search-api.md 中的 API 参考开始检查。
- 如果找不到结果,请在网上搜索 HPA 查询示例,并据此构造更合适的查询。
- 输出通常很大。请使用 jq 或自行编写 Python 数据解析库来处理搜索结果。切勿输出到 stdout,也不要 cat 输出文件。