--- 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) SKILL_DIR="$HOME/DataProyects/repo_Claude/.claude/skills/init-jupyter" # 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.