Files
fn_registry/bash/functions/pipelines/init_jupyter_analysis.md
T
egutierrez 5f4f1f7508 docs: params/output semántico en 506 funciones para composabilidad
Añade campos params y output al frontmatter YAML de las 506 funciones del registry.
Cada parámetro tiene descripción semántica (qué representa, unidades, rango típico)
y cada función describe qué produce su output. Permite a agentes razonar sobre
cadenas de composición (ej: prices → log_return → sharpe_ratio) sin leer código.
2026-04-05 18:45:16 +02:00

2.6 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
init_jupyter_analysis pipeline bash pipelines 1.0.0 impure init_jupyter_analysis(nombre: string, [...paquetes_extra: string]) -> void Inicializa un analisis Jupyter completo en analysis/{nombre}/ con venv, paquetes, launcher, MCP y reglas para agentes Claude. Acepta paquetes extra opcionales.
jupyter
analysis
setup
pipeline
bash
launcher
assert_command_exists_bash_shell
find_free_port_bash_shell
init_uv_venv_bash_infra
uv_add_packages_bash_infra
write_jupyter_launcher_bash_infra
write_mcp_jupyter_config_bash_infra
write_claude_jupyter_rules_bash_infra
write_jupyter_registry_kernel_bash_infra
false error_go_core
name desc
nombre nombre del análisis a crear
name desc
paquetes_extra paquetes Python adicionales a instalar (variadic, opcional)
sin salida directa; estructura completa en analysis/{nombre}/ false
bash/functions/pipelines/init_jupyter_analysis.sh

Ejemplo

# Analisis basico
./init_jupyter_analysis.sh finanzas

# Con paquetes extra
./init_jupyter_analysis.sh duckdb polars duckdb
./init_jupyter_analysis.sh ml scikit-learn torch

# Via fn run
fn run init_jupyter_analysis finanzas
fn run init_jupyter_analysis ml scikit-learn torch

Flujo

  1. assert_command_exists — verifica que uv o python3 estan disponibles
  2. Crea estructura analysis/{nombre}/notebooks/ y analysis/{nombre}/data/
  3. init_uv_venv — crea venv en analysis/{nombre}/.venv/
  4. uv_add_packages — instala jupyter, jupyterlab, jupyter-collaboration, jupyter-mcp-server, pandas, numpy, matplotlib + extras
  5. write_jupyter_launcher — genera run-jupyter-lab.sh con modo colaborativo
  6. find_free_port + write_mcp_jupyter_config — detecta puerto libre y genera .mcp.json
  7. write_claude_jupyter_rules — genera .claude/CLAUDE.md con reglas de agente
  8. write_jupyter_registry_kernel — genera IPython startup con fn_query, fn_search, fn_code y acceso a python/functions/

Notas

Cada analisis es independiente (propio venv, propio Jupyter, propio MCP). Mismo patron que apps/ pero para exploraciones no reutilizables.

El pipeline usa set -euo pipefail — cualquier fallo detiene la ejecucion.

Paquetes base siempre incluidos: jupyter, jupyterlab, jupyter-collaboration, jupyter-mcp-server, pandas, numpy, matplotlib. Los paquetes extra se añaden a estos.