@nahisaho/satori 0.20.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/README.md +70 -39
  2. package/package.json +1 -1
  3. package/src/.github/skills/scientific-biothings-idmapping/SKILL.md +4 -0
  4. package/src/.github/skills/scientific-cellxgene-census/SKILL.md +257 -0
  5. package/src/.github/skills/scientific-clingen-curation/SKILL.md +258 -0
  6. package/src/.github/skills/scientific-clinical-nlp/SKILL.md +250 -0
  7. package/src/.github/skills/scientific-clinical-pharmacology/SKILL.md +361 -0
  8. package/src/.github/skills/scientific-clinical-standards/SKILL.md +444 -0
  9. package/src/.github/skills/scientific-crispr-design/SKILL.md +369 -0
  10. package/src/.github/skills/scientific-drug-repurposing/SKILL.md +4 -0
  11. package/src/.github/skills/scientific-environmental-ecology/SKILL.md +5 -0
  12. package/src/.github/skills/scientific-epidemiology-public-health/SKILL.md +5 -0
  13. package/src/.github/skills/scientific-epigenomics-chromatin/SKILL.md +5 -0
  14. package/src/.github/skills/scientific-glycomics/SKILL.md +274 -0
  15. package/src/.github/skills/scientific-gtex-tissue-expression/SKILL.md +5 -2
  16. package/src/.github/skills/scientific-hgnc-nomenclature/SKILL.md +282 -0
  17. package/src/.github/skills/scientific-human-cell-atlas/SKILL.md +3 -0
  18. package/src/.github/skills/scientific-human-protein-atlas/SKILL.md +4 -0
  19. package/src/.github/skills/scientific-immunoinformatics/SKILL.md +9 -0
  20. package/src/.github/skills/scientific-lipidomics/SKILL.md +284 -0
  21. package/src/.github/skills/scientific-metabolomics/SKILL.md +3 -0
  22. package/src/.github/skills/scientific-metabolomics-network/SKILL.md +311 -0
  23. package/src/.github/skills/scientific-metagenome-assembled-genomes/SKILL.md +299 -0
  24. package/src/.github/skills/scientific-model-organism-db/SKILL.md +8 -0
  25. package/src/.github/skills/scientific-pharmacogenomics/SKILL.md +4 -0
  26. package/src/.github/skills/scientific-pharos-targets/SKILL.md +276 -0
  27. package/src/.github/skills/scientific-protein-structure-analysis/SKILL.md +4 -0
  28. package/src/.github/skills/scientific-public-health-data/SKILL.md +11 -0
  29. package/src/.github/skills/scientific-systems-biology/SKILL.md +11 -0
  30. package/src/.github/skills/scientific-variant-effect-prediction/SKILL.md +7 -0
@@ -0,0 +1,276 @@
1
+ ---
2
+ name: scientific-pharos-targets
3
+ description: |
4
+ Pharos/TCRD ターゲットプロファイリングスキル。Illuminating
5
+ the Druggable Genome (IDG) Pharos GraphQL API による
6
+ ターゲット開発レベル (TDL) 分類・疾患関連・リガンド検索・
7
+ 既存薬候補スクリーニングパイプライン。
8
+ ToolUniverse 連携: pharos。
9
+ tu_tools:
10
+ - key: pharos
11
+ name: Pharos
12
+ description: IDG Pharos/TCRD ターゲットナレッジベース
13
+ ---
14
+
15
+ # Scientific Pharos Targets
16
+
17
+ IDG (Illuminating the Druggable Genome) Pharos GraphQL API
18
+ を活用したターゲット TDL 分類・疾患-ターゲット関連・
19
+ リガンドアクティビティ検索・既存薬候補パイプラインを提供する。
20
+
21
+ ## When to Use
22
+
23
+ - タンパク質標的の開発レベル (Tclin/Tchem/Tbio/Tdark) を確認するとき
24
+ - IDG ダークターゲットの知識ギャップを調査するとき
25
+ - ターゲットに関連する疾患・リガンド・PPI を検索するとき
26
+ - Tchem/Tbio ターゲットから創薬候補を探索するとき
27
+ - ターゲット間のドラッガビリティ比較を行うとき
28
+
29
+ ---
30
+
31
+ ## Quick Start
32
+
33
+ ## 1. ターゲット TDL 分類検索
34
+
35
+ ```python
36
+ import requests
37
+ import pandas as pd
38
+
39
+ PHAROS_API = "https://pharos-api.ncats.io/graphql"
40
+
41
+
42
+ def pharos_target(gene_symbol):
43
+ """
44
+ Pharos — ターゲット詳細情報取得。
45
+
46
+ Parameters:
47
+ gene_symbol: str — 遺伝子シンボル (例: "ACE2")
48
+ """
49
+ query = """
50
+ query targetDetails($sym: String!) {
51
+ target(q: {sym: $sym}) {
52
+ name
53
+ sym
54
+ tdl
55
+ fam
56
+ novelty
57
+ description
58
+ uniprotId: accession
59
+ diseaseCount
60
+ ligandCount
61
+ ppiCount
62
+ }
63
+ }
64
+ """
65
+ resp = requests.post(
66
+ PHAROS_API,
67
+ json={"query": query,
68
+ "variables": {"sym": gene_symbol}},
69
+ timeout=30)
70
+ resp.raise_for_status()
71
+ data = resp.json().get("data", {}).get("target", {})
72
+
73
+ if not data:
74
+ print(f"Pharos: {gene_symbol} not found")
75
+ return {}
76
+
77
+ print(f"Pharos: {gene_symbol} → TDL={data['tdl']}, "
78
+ f"fam={data.get('fam', 'N/A')}, "
79
+ f"diseases={data.get('diseaseCount', 0)}, "
80
+ f"ligands={data.get('ligandCount', 0)}")
81
+ return data
82
+
83
+
84
+ def pharos_target_list(gene_symbols):
85
+ """
86
+ Pharos — 複数ターゲット TDL バッチ取得。
87
+
88
+ Parameters:
89
+ gene_symbols: list[str] — 遺伝子シンボルリスト
90
+ """
91
+ results = []
92
+ for sym in gene_symbols:
93
+ data = pharos_target(sym)
94
+ if data:
95
+ results.append(data)
96
+
97
+ df = pd.DataFrame(results)
98
+ if not df.empty:
99
+ tdl_counts = df["tdl"].value_counts()
100
+ print(f"TDL distribution: "
101
+ f"{tdl_counts.to_dict()}")
102
+ return df
103
+ ```
104
+
105
+ ## 2. 疾患-ターゲット関連
106
+
107
+ ```python
108
+ def pharos_target_diseases(gene_symbol, top_n=20):
109
+ """
110
+ Pharos — ターゲットの関連疾患取得。
111
+
112
+ Parameters:
113
+ gene_symbol: str — 遺伝子シンボル
114
+ top_n: int — 上位件数
115
+ """
116
+ query = """
117
+ query targetDiseases($sym: String!, $top: Int!) {
118
+ target(q: {sym: $sym}) {
119
+ sym
120
+ diseases(top: $top) {
121
+ name
122
+ associationCount
123
+ datasource_count
124
+ }
125
+ }
126
+ }
127
+ """
128
+ resp = requests.post(
129
+ PHAROS_API,
130
+ json={"query": query,
131
+ "variables": {"sym": gene_symbol,
132
+ "top": top_n}},
133
+ timeout=30)
134
+ resp.raise_for_status()
135
+ target = resp.json().get("data", {}).get(
136
+ "target", {})
137
+ diseases = target.get("diseases", [])
138
+
139
+ df = pd.DataFrame(diseases)
140
+ print(f"Pharos diseases: {gene_symbol} → "
141
+ f"{len(df)} associations")
142
+ return df
143
+ ```
144
+
145
+ ## 3. リガンド・アクティビティ検索
146
+
147
+ ```python
148
+ def pharos_target_ligands(gene_symbol, top_n=20):
149
+ """
150
+ Pharos — ターゲットのリガンド/活性化合物取得。
151
+
152
+ Parameters:
153
+ gene_symbol: str — 遺伝子シンボル
154
+ top_n: int — 上位件数
155
+ """
156
+ query = """
157
+ query targetLigands($sym: String!, $top: Int!) {
158
+ target(q: {sym: $sym}) {
159
+ sym
160
+ ligands(top: $top) {
161
+ name
162
+ smiles
163
+ isdrug
164
+ actcnt
165
+ activities {
166
+ type
167
+ value
168
+ moa
169
+ }
170
+ }
171
+ }
172
+ }
173
+ """
174
+ resp = requests.post(
175
+ PHAROS_API,
176
+ json={"query": query,
177
+ "variables": {"sym": gene_symbol,
178
+ "top": top_n}},
179
+ timeout=30)
180
+ resp.raise_for_status()
181
+ target = resp.json().get("data", {}).get(
182
+ "target", {})
183
+ ligands = target.get("ligands", [])
184
+
185
+ rows = []
186
+ for lig in ligands:
187
+ rows.append({
188
+ "name": lig.get("name", ""),
189
+ "smiles": lig.get("smiles", ""),
190
+ "is_drug": lig.get("isdrug", False),
191
+ "activity_count": lig.get("actcnt", 0),
192
+ })
193
+
194
+ df = pd.DataFrame(rows)
195
+ n_drugs = df["is_drug"].sum() if not df.empty else 0
196
+ print(f"Pharos ligands: {gene_symbol} → "
197
+ f"{len(df)} compounds ({n_drugs} drugs)")
198
+ return df
199
+ ```
200
+
201
+ ## 4. Pharos 統合パイプライン
202
+
203
+ ```python
204
+ def pharos_pipeline(gene_symbols,
205
+ output_dir="results"):
206
+ """
207
+ Pharos 統合パイプライン。
208
+
209
+ Parameters:
210
+ gene_symbols: list[str] — 遺伝子シンボルリスト
211
+ output_dir: str — 出力ディレクトリ
212
+ """
213
+ from pathlib import Path
214
+ output_dir = Path(output_dir)
215
+ output_dir.mkdir(parents=True, exist_ok=True)
216
+
217
+ # 1) TDL 分類
218
+ targets = pharos_target_list(gene_symbols)
219
+ targets.to_csv(output_dir / "pharos_targets.csv",
220
+ index=False)
221
+
222
+ # 2) 疾患関連 (上位ターゲット)
223
+ all_diseases = []
224
+ for sym in gene_symbols[:10]:
225
+ diseases = pharos_target_diseases(sym)
226
+ diseases["target"] = sym
227
+ all_diseases.append(diseases)
228
+ if all_diseases:
229
+ disease_df = pd.concat(all_diseases,
230
+ ignore_index=True)
231
+ disease_df.to_csv(
232
+ output_dir / "pharos_diseases.csv",
233
+ index=False)
234
+
235
+ # 3) リガンド
236
+ all_ligands = []
237
+ for sym in gene_symbols[:10]:
238
+ ligands = pharos_target_ligands(sym)
239
+ ligands["target"] = sym
240
+ all_ligands.append(ligands)
241
+ if all_ligands:
242
+ ligand_df = pd.concat(all_ligands,
243
+ ignore_index=True)
244
+ ligand_df.to_csv(
245
+ output_dir / "pharos_ligands.csv",
246
+ index=False)
247
+
248
+ print(f"Pharos pipeline → {output_dir}")
249
+ return {"targets": targets}
250
+ ```
251
+
252
+ ---
253
+
254
+ ## ToolUniverse 連携
255
+
256
+ | TU Key | ツール名 | 連携内容 |
257
+ |--------|---------|---------|
258
+ | `pharos` | Pharos | IDG Pharos/TCRD ターゲットナレッジベース |
259
+
260
+ ## パイプライン統合
261
+
262
+ ```
263
+ drug-target-profiling → pharos-targets → drug-repurposing
264
+ (DGIdb/標的同定) (TDL/IDG) (リポジショニング)
265
+ │ │ ↓
266
+ pharmacology-targets ─────┘ compound-screening
267
+ (BindingDB/GtoPdb) (ZINC ライブラリ)
268
+ ```
269
+
270
+ ## パイプライン出力
271
+
272
+ | ファイル | 説明 | 次スキル |
273
+ |---------|------|---------|
274
+ | `results/pharos_targets.csv` | TDL 分類結果 | → drug-target-profiling |
275
+ | `results/pharos_diseases.csv` | 疾患関連 | → disease-research |
276
+ | `results/pharos_ligands.csv` | リガンド/薬剤 | → drug-repurposing |
@@ -6,6 +6,10 @@ description: |
6
6
  ToolUniverse の Protein Structure Retrieval と claude-scientific-skills の
7
7
  PDB/AlphaFold スキルを統合。
8
8
  「タンパク質の構造を解析して」「PDB 構造を調べて」「ドッキング準備して」で発火。
9
+ tu_tools:
10
+ - key: proteinsplus
11
+ name: ProteinsPlus
12
+ description: タンパク質結合部位検出・構造解析ツール群
9
13
  ---
10
14
 
11
15
  # Scientific Protein Structure Analysis
@@ -4,6 +4,17 @@ description: |
4
4
  公衆衛生データアクセススキル。NHANES 疫学調査データ、MedlinePlus 一般向け
5
5
  健康情報、RxNorm 薬剤標準語彙、ODPHP 健康目標・ガイドライン、
6
6
  Health Disparities 健康格差データ統合パイプライン。
7
+ ToolUniverse 連携: nhanes, medlineplus, odphp。
8
+ tu_tools:
9
+ - key: nhanes
10
+ name: NHANES
11
+ description: 全米健康栄養調査データ
12
+ - key: medlineplus
13
+ name: MedlinePlus
14
+ description: NLM 一般向け健康情報 API
15
+ - key: odphp
16
+ name: ODPHP
17
+ description: Healthy People 健康目標・ガイドライン
7
18
  ---
8
19
 
9
20
  # Scientific Public Health Data
@@ -5,6 +5,17 @@ description: |
5
5
  代謝フラックス解析(FBA / pFBA)・遺伝子制御ネットワーク推定(GRN)・
6
6
  シグナル伝達経路モデリング・パラメータ推定・感度解析・
7
7
  BioModels/Reactome/KEGG/BiGG 統合パイプライン。
8
+ ToolUniverse 連携: bigg_models, complex_portal, wikipathways。
9
+ tu_tools:
10
+ - key: bigg_models
11
+ name: BiGG Models
12
+ description: ゲノムスケール代謝モデル BiGG REST API
13
+ - key: complex_portal
14
+ name: Complex Portal
15
+ description: EBI タンパク質複合体データベース
16
+ - key: wikipathways
17
+ name: WikiPathways
18
+ description: WikiPathways コミュニティパスウェイ
8
19
  ---
9
20
 
10
21
  # Scientific Systems Biology
@@ -6,6 +6,13 @@ description: |
6
6
  3 大予測ツールを統合したコンセンサス病原性評価パイプライン。
7
7
  Ensembl VEP 連携、バリアントフィルタリング、優先順位付け対応。
8
8
  9 の ToolUniverse SMCP ツールと連携。
9
+ tu_tools:
10
+ - key: spliceai
11
+ name: SpliceAI
12
+ description: スプライシングバリアント効果予測
13
+ - key: cadd
14
+ name: CADD
15
+ description: 統合アノテーション依存性枯湇スコア
9
16
  ---
10
17
 
11
18
  # Scientific Variant Effect Prediction