O que target-prioritization faz?
Diligência devido de alvos farmacológicos multi-fonte: de lista de genes ranqueados a dossiê por gene via UniProt, OpenTargets, PubMed + varredura DE interlinhagem + re-ranqueamento composto. Habilidade para Claude Code / OpenClaw / SkillsMP.
Visão Geral
Esta habilidade agiliza a etapa inicial de due diligence em projetos de descoberta de fármacos. Ao receber uma lista de genes com uma classificação inicial (por exemplo, de um estudo de associação genômica ampla ou análise de expressão diferencial), ela:
- Busca anotações detalhadas para cada gene no UniProt.
- Obtém associações a doenças e priorização genética do OpenTargets.
- Extrai contagens de publicações e citações relevantes do PubMed.
- Executa uma varredura de expressão diferencial em conjuntos de dados de expressão disponíveis para identificar padrões específicos de linhagens ou tecidos.
- Aplica um re-ranqueamento composto que pondera os sinais de todas as fontes em um único score de priorização.
O resultado é um relatório consolidado que permite que cientistas e equipes de P&D tomem decisões rápidas e informadas sobre quais alvos avançar.
Pré-requisitos
- Python 3.9+ instalado.
- Acesso à internet para consultar APIs externas.
- Chave de API do NCBI Entrez (eutils) para acesso ao PubMed (opcional, mas recomendado).
Instalação
-
Clone este repositório ou copie o diretório da habilidade para seu projeto de agente.
git clone https://github.com/Agents365-ai/target-prioritization.git cd target-prioritization -
Instale as dependências Python:
pip install -r requirements.txt -
(Opcional) Defina a variável de ambiente
ENTREZ_EMAILcom seu e-mail para uso do PubMed:export ENTREZ_EMAIL="[email protected]"
Uso (Modo Agente)
Esta habilidade é projetada para ser invocada por um agente de IA (Claude Code, OpenClaw, etc.). O fluxo de trabalho típico é:
-
Fornecer a lista de genes ranqueados. O usuário pode passar um arquivo de texto (um gene por linha) ou uma lista no formato
"gene1, gene2, gene3". -
Executar o comando principal da habilidade.
python run_prioritization.py --input lista_genes.txt --output resultados/O agente também pode interpretar o parâmetro
--lineagepara restringir a varredura DE a uma linhagem celular específica.
Plataformas Suportadas
- Claude Code (Anthropic)
- OpenClaw (AWS)
- SkillsMP (Plataforma de Marketplace de Habilidades)
Estrutura do Projeto
target-prioritization/
├── run_prioritization.py # Script principal
├── requirements.txt # Dependências Python
├── docs/
│ └── SKILL.md # Este documento
├── src/
│ ├── uniprot_client.py # Cliente para API do UniProt
│ ├── opentargets_client.py # Cliente para API do OpenTargets
│ ├── pubmed_client.py # Cliente para E-utilities do NCBI
│ ├── de_scanner.py # Motor de varredura de expressão diferencial
│ ├── re_ranker.py # Algoritmo de re-ranqueamento composto
│ └── report_generator.py # Geração do relatório final (Markdown/PDF)
└── data/
├── example_genes.txt # Arquivo de exemplo com lista de genes
└── expression_datasets/ # Conjuntos de dados de expressão de referência
Exemplo de Saída
Após a execução, o diretório de saída conterá:
target_prioritization_report.md: Relatório principal com tabela ranqueada de genes e scores compostos.dossiers/: Subdiretório com um arquivo markdown por gene contendo anotações detalhadas (UniProt, OpenTargets, PubMed, resultados DE).
Contribuição
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou enviar pull requests.
Licença
MIT