From claude-code-skills
This skill should be used when the user is working on Data Science, ML, or scientific research code — EDA, model training, experiment design, deep learning, NLP, tabular data, or scientific computing. Activates for .py files with DS imports (numpy, pandas, sklearn, torch, transformers), .ipynb Jupyter notebooks, projects with pyproject.toml containing DS dependencies, or when the user mentions EDA, model/modelo, training/treino, dataset, experiment/experimento, reprodutibilidade/reproducibility, data leakage, or feature engineering. Complements python-dev; use this skill when scientific rigor and research reproducibility are the primary concerns.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-code-skills:data-science-devThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Context loaded: working in a Data Science or scientific research project with a senior developer or researcher.
Context loaded: working in a Data Science or scientific research project with a senior developer or researcher.
Esta skill é para pesquisa e desenvolvimento DS — reprodutibilidade e rigor estatístico são não-negociáveis.
O que fazer:
file:line exato ao discutir código existentereferences/pitfalls.md antes de sugerir qualquer abordagem de treino/validaçãoAskUserQuestion para perguntas com opções durante execução (ver seção abaixo)/capture-learning ao encontrar padrão novo não coberto pelas referênciasO que não fazer:
python-dev — referenciar quando necessárioPrincípio central: um modelo com 99% de acurácia que tem data leakage não tem valor científico. Verificar sempre antes de reportar resultados.
| Task | Agent | Model | Quando usar |
|---|---|---|---|
| Review de código DS, pitfall check | data-science-reviewer | Haiku | Sempre que a tarefa for "revise este arquivo/diff" — rápido e barato |
| Debug de modelo, arquitetura de pipeline, NLP | data-science-expert | Sonnet | Quando precisa raciocínio sobre lógica DS ou debugging profundo |
| Validação científica, código de paper, rigor estatístico | research-validator | Opus | Quando reprodutibilidade e rigor de pesquisa são críticos |
Padrão: responder inline com Sonnet (sessão atual). Lançar agente só quando a tarefa for isolada ou precisar de outro modelo.
[ ] Seeds: random, numpy, torch, sklearn — todos setados e logados
[ ] Config salva junto com os resultados (não só os pesos do modelo)
[ ] Ambiente pinado (requirements.txt / pyproject.toml com versões exatas)
[ ] Dados checksumados ou version-pinados
[ ] Preprocessor fitted ONLY on train — nunca no dataset completo
[ ] Test set usado exatamente UMA vez — nunca em loops de seleção
[ ] Split temporal (se dados com dimensão de tempo)
[ ] Notebook: Restart + Run All executado antes de publicar resultados
Esta skill cobre as seguintes áreas — ver references/patterns.md para exemplos canônicos:
| Área | Foco |
|---|---|
| EDA | pandas-profiling, distribuições, correlações, outliers, dados faltantes |
| ML Clássico | sklearn Pipeline obrigatório, validação cruzada, feature engineering |
| Deep Learning | PyTorch primário, AMP, gradient accumulation, reprodutibilidade |
| NLP / LLMs | HuggingFace Transformers, fine-tuning, embeddings, sentence-transformers |
| Computação Científica | SciPy, SymPy, bootstrap CI, testes estatísticos |
| Tabular Pesado | Polars (lazy), DuckDB, chunked pandas para dados maiores que RAM |
| Experiment Tracking | MLflow, W&B, DVC — config sempre salva junto com resultados |
Quando esta skill precisar fazer perguntas com opções durante a execução, usar AskUserQuestion para apresentar as escolhas no terminal em vez de prosa no chat. Isso é mais rápido e menos interruptivo.
Como usar:
<!-- Passo 1: carregar o schema da ferramenta via ToolSearch -->
ToolSearch({ query: "select:AskUserQuestion", max_results: 1 })
<!-- Passo 2: chamar AskUserQuestion com as opções -->
AskUserQuestion({
question: "Qual estratégia de validação usar?",
options: [
"StratifiedKFold (classificação com classes balanceadas)",
"TimeSeriesSplit (dados temporais)",
"GroupKFold (amostras correlacionadas por grupo)",
"Hold-out simples (dataset grande, sem necessidade de CV)"
]
})
Fallback: se ToolSearch falhar ou AskUserQuestion não estiver disponível no contexto, apresentar as opções como lista numerada em prosa no chat.
Exemplos de quando usar:
Ao trabalhar com .ipynb:
Kernel → Restart & Run All antes de publicar ou compartilhar resultadossklearn.pipeline.Pipeline obrigatório — nunca preprocessor fora delapyproject.toml para projetos (não setup.py)uv ou hatch preferido sobre pip barertk pytest # 90% de economia de tokens
rtk python -m <module>
rtk pip install <pkg>
Ao final de qualquer sessão que resulte em alteração de código, atualizar README.md e CHANGELOG.md do projeto. Ver protocolo completo em skills/shared/changelog-readme-protocol.md.
references/patterns.md — Exemplos canônicos para as 7 áreas técnicas DSreferences/pitfalls.md — 8 bugs críticos em pesquisa DS (data leakage, seeds, temporal leakage, test set reuse, generator exhaustion, SettingWithCopy, float comparison, notebook state)agents/data-science-expert.md — Agente Sonnet para tarefas DS complexasagents/data-science-reviewer.md — Agente Haiku para review rápido de código DSagents/research-validator.md — Agente Opus para validação científica rigorosaskills/python-dev/SKILL.md — Para Python genérico fora de contexto DSnpx claudepluginhub josgomes/claude-code-skills --plugin claude-code-skillsGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.