Iranb/bjtu-hpc-submit-skill

Habilidade sanitizada do Codex para autenticação no portal HPC da BJTU, submissão de jobs no Slurm e monitoramento de tarefas.

O que é bjtu-hpc-submit-skill?

Esta habilidade permite que um agente de IA (como o Codex) interaja com o cluster de alto desempenho (HPC) da Universidade de Beijing Jiaotong (BJTU) por meio de seu portal web. Ela lida com todo o ciclo de vida de um job: autenticação no portal, submissão de scripts Slurm, consulta de status de jobs (pendentes, em execução, concluídos ou falhos) e cancelamento de tarefas. A habilidade é projetada para ser segura, utilizando apenas operações sanitizadas e sem expor credenciais sensíveis. É especialmente útil para desenvolvedores e pesquisadores que desejam automatizar o workflow de computação científica em um ambiente acadêmico, integrando comandos de shell, varredura de saídas e lógica condicional para tomada de decisões.

Funciona com~Claude Code✓Codex CLI~Cursor
npx skills add Iranb/bjtu-hpc-submit-skill

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que bjtu-hpc-submit-skill faz?

Habilidade sanitizada do Codex para autenticação no portal HPC da BJTU, submissão de jobs no Slurm e monitoramento de tarefas.

Funcionalidades

  • Autenticação automática no portal HPC da BJTU usando credenciais fornecidas pelo usuário.
  • Submissão de jobs Slurm a partir de um script de job enviado pelo usuário.
  • Monitoramento de jobs: consulta do status de um job específico (ex: PENDING, RUNNING, COMPLETED, FAILED).
  • Cancelamento de jobs usando o comando scancel.

Pré-requisitos

  • Acesso à internet e ao portal HPC da BJTU.
  • Um par de credenciais válidas (nome de usuário e senha).
  • Ambiente com curl e jq instalados (para operações de API e parsing).

Como usar

1. Configuração de credenciais

Configure as variáveis de ambiente para autenticação segura:

export BJTU_HPC_USER="seu_usuario"
export BJTU_HPC_PASS="sua_senha"

2. Autenticação

Execute o comando de login:

curl -c cookies.txt -b cookies.txt -X POST \
  -d "username=$BJTU_HPC_USER&password=$BJTU_HPC_PASS" \
  https://hpc.bjtu.edu.cn/api/login

3. Submissão de um job

Envie um script Slurm (job.slurm) para o cluster:

curl -c cookies.txt -b cookies.txt -X POST \
  -F "[email protected]" \
  https://hpc.bjtu.edu.cn/api/submit

4. Consulta de status

Para verificar o status de um job com ID 12345:

curl -c cookies.txt -b cookies.txt \
  https://hpc.bjtu.edu.cn/api/job/12345/status

5. Cancelamento de job

Para cancelar um job:

curl -c cookies.txt -b cookies.txt -X DELETE \
  https://hpc.bjtu.edu.cn/api/job/12345/cancel

Estrutura esperada do script Slurm

O script deve ser um arquivo de texto que inicia com um cabeçalho de diretivas #SBATCH. Exemplo:

#!/bin/bash
#SBATCH --job-name=meu_job
#SBATCH --output=saida_%j.out
#SBATCH --error=erro_%j.err
#SBATCH --ntasks=4
#SBATCH --time=01:00:00

module load gcc/9.3.0
./meu_programa

Tratamento de erros

  • Falha de autenticação: Certifique-se de que as credenciais estão corretas e que as variáveis de ambiente estão definidas.
  • Job não encontrado: Verifique o ID do job e se ele realmente pertence ao seu usuário.
  • Timeout de rede: O portal pode demorar a responder; aumente o timeout do curl com --max-time 30.

Notas de segurança

  • Nunca inclua credenciais diretamente no código. Sempre use variáveis de ambiente ou um gerenciador de segredos.
  • O cookie de sessão (cookies.txt) deve ser mantido privado.
  • Esta habilidade é sanitizada: não executa comandos arbitrários no HPC, apenas chamadas à API controladas.

Contribuição

Sinta-se à vontade para abrir issues ou pull requests no repositório original do Iranb.

Habilidades Relacionadas