Drug Repurposing Hub Query Skill

SkillDev tools

Query the Broad Institute Drug Repurposing Hub (~6,800 compounds). Look up drugs by name, gene target, MOA, disease area, Broad ID, or InChIKey. Returns clinical phase, mechanism of action, targets, disease area, indication, and chemical identifiers.

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the Drug Repurposing Hub Query Skill skill

What this skill tells your AI

The instructions your AI receives, as published by qsong-github/drugclaw in skills/drug_repurposing/repurposing_hub/SKILL.md and read by ahel’s review.

Search the Broad Institute Drug Repurposing Hub by any entity. Auto-detects input type by pattern:

Input PatternDetected AsMatch Logic
BRD-A12345678Broad compound IDprefix on broad_id
ABCDEFGHIJKLMN-OPQRSTUVWX-YInChIKeyexact on InChIKey
EGFR, BRAF, TOP1Gene / targetexact token in target (pipe-separated)
anything elsefree textsubstring on pert_iname, moa, indication, disease_area

API

FunctionInputReturns
load_drugs(path)drug TSV pathlist[dict]
load_samples(path)sample TSV pathlist[dict]
load_merged()—list[dict] (drugs + chemical IDs from samples)
search(entity)single entity stringlist[dict]
search_batch(entities)list of entity stringsdict[str, list[dict]]
summarize(hits, entity)hits + labelcompact LLM-readable text
to_json(hits)list[dict]list[dict] (JSON-serialisable)

Usage

See if __name__ == "__main__" block in 29_Drug_Repurposing_Hub.py for runnable examples covering: drug name, gene target, MOA keyword, disease area, batch search, and JSON output.

from importlib.machinery import SourceFileLoader
hub = SourceFileLoader("hub", "29_Drug_Repurposing_Hub.py").load_module()

# Single drug lookup
hits = hub.search("imatinib")
print(hub.summarize(hits, "imatinib"))

# Target-based search
hits = hub.search("EGFR")

# Batch
results = hub.search_batch(["metformin", "aspirin", "BRAF"])

Data

  • Source: Broad Institute Drug Repurposing Hub (https://repo-hub.broadinstitute.org/repurposing)
  • Drug file: repo-drug-annotation-20200324.txt — tab-delimited, !-prefixed comment lines
    • Columns: pert_iname, clinical_phase, moa, target, disease_area, indication
  • Sample file: repo-sample-annotation-20240610.txt — tab-delimited, !-prefixed comment lines
    • Columns include: broad_id, pert_iname, InChIKey, pubchem_cid, smiles, vendor, purity, etc.
  • Merge: on pert_iname; first sample with non-empty InChIKey is kept per drug
  • Path: DATA_DIR variable in 29_Drug_Repurposing_Hub.py
  • Citation: Corsello SM et al. Nature Medicine 23, 405–408 (2017). doi:10.1038/nm.4306

Signals

GitHub stars
116
Forks
3
Last commit
Aug 2026
Advanced
Item type
skill
Key
drug-repurposing-hub
Source
github.com/qsong-github/drugclaw