e2a131a6dc
- parallel-fix-issues: detecta build tag del proyecto (auto o via BUILD_TAG env/arg), usa $(git rev-parse --show-toplevel) para rutas en vez de /home/ubuntu/agents_and_robots - verify-worktree.sh: acepta BUILD_TAG como env o segundo argumento, auto-detecta con //go:build, ejecuta sin -tags si no hay tag configurado - create-tui: DEVFACTORY_PATH, DEVFACTORY_MODULE y GO_NAMESPACE configurables via env - init-jupyter: resuelve SKILL_DIR dinamicamente siguiendo el symlink de ~/.claude - pass-usage: elimina GPG-ID hardcodeado, instruye leer de ~/.password-store/.gpg-id - settings.json: refresh de formato + effortLevel Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
60 lines
2.3 KiB
Markdown
60 lines
2.3 KiB
Markdown
---
|
|
name: init-jupyter
|
|
description: Inicializa entorno Jupyter para exploración de datos con MCP compartido. Autodetecta puerto y configura repo.
|
|
argument-hint: [ruta-proyecto]
|
|
disable-model-invocation: true
|
|
user-invocable: true
|
|
allowed-tools: Bash, Read
|
|
---
|
|
|
|
# Inicializar Entorno Jupyter para Data Science
|
|
|
|
Skill para preparar cualquier repo para exploración de datos con Jupyter + Claude colaborando en kernel compartido.
|
|
|
|
## Instrucciones para el agente
|
|
|
|
**Todo el trabajo está automatizado en `setup-jupyter.sh`.** Solo ejecuta el script y comunica el resultado.
|
|
|
|
### Paso único: Ejecutar el script
|
|
|
|
```bash
|
|
# Obtener ruta del script (está junto a este SKILL.md)
|
|
# Resolver via symlink a la ubicación real del skill (portable entre máquinas)
|
|
SKILL_DIR="$(dirname "$(readlink -f "$HOME/.claude/skills/init-jupyter/SKILL.md")")"
|
|
|
|
# Ejecutar con la ruta del proyecto (argumento del skill o directorio actual)
|
|
bash "$SKILL_DIR/setup-jupyter.sh" "${1:-.}"
|
|
```
|
|
|
|
### Interpretar el resultado
|
|
|
|
El script imprime una línea `STATUS:` al final:
|
|
|
|
| STATUS | Significado | Qué decir al usuario |
|
|
|--------|-------------|---------------------|
|
|
| `READY` | Todo configurado y Jupyter corriendo | "Jupyter ya está listo. Puedes empezar a trabajar con notebooks via MCP." |
|
|
| `CONFIGURED_NOT_RUNNING` | Configurado pero Jupyter no corre | "Todo configurado. Ejecuta `./run-jupyter-lab.sh` en otra terminal para iniciar Jupyter." |
|
|
| `CONFIGURED` | Recién configurado | Mostrar los pasos siguientes que imprime el script |
|
|
|
|
### Si hay errores
|
|
|
|
- Si el script falla, leer el error y ayudar al usuario
|
|
- Problemas comunes:
|
|
- `jq` no instalado → el merge de `.mcp.json` puede fallar
|
|
- `uv` no disponible → usa pip como fallback
|
|
- Puerto ocupado → el script autodetecta otro
|
|
|
|
## Archivos que crea el script
|
|
|
|
| Archivo | Propósito |
|
|
|---------|-----------|
|
|
| `run-jupyter-lab.sh` | Lanzador de Jupyter con autodetección de puerto |
|
|
| `.mcp.json` | Config MCP con ruta absoluta al ejecutable local |
|
|
| `.claude/CLAUDE.md` | Reglas para que Claude use MCP en lugar de bash |
|
|
| `.jupyter-port` | Puerto actual (creado al ejecutar Jupyter) |
|
|
|
|
## Regla crítica: MCP siempre local
|
|
|
|
El script instala `jupyter-mcp-server` en `.venv/bin/` del proyecto, NUNCA globalmente.
|
|
Si detecta instalación global, la elimina automáticamente.
|