Babysitter jupyter-notebook-executor
Jupyter notebook execution skill for running notebooks programmatically and extracting outputs.
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/data-science-ml/skills/jupyter-notebook-executor" ~/.claude/skills/a5c-ai-babysitter-jupyter-notebook-executor && rm -rf "$T"
manifest:
library/specializations/data-science-ml/skills/jupyter-notebook-executor/SKILL.mdsource content
jupyter-notebook-executor
Overview
Jupyter notebook execution skill for running notebooks programmatically, parameterizing inputs, and extracting outputs for ML workflows.
Capabilities
- Parameterized notebook execution
- Output extraction and validation
- Notebook conversion (to HTML/PDF)
- Cell execution control
- Error handling and reporting
- Environment management
- Kernel specification
- Timeout management
Target Processes
- Exploratory Data Analysis (EDA) Pipeline
- Model Interpretability and Explainability Analysis
- Experiment Planning and Hypothesis Testing
Tools and Libraries
- papermill
- nbconvert
- jupyter
- nbformat
Input Schema
{ "type": "object", "required": ["action", "notebookPath"], "properties": { "action": { "type": "string", "enum": ["execute", "convert", "extract", "validate"], "description": "Action to perform on the notebook" }, "notebookPath": { "type": "string", "description": "Path to the Jupyter notebook" }, "executeConfig": { "type": "object", "properties": { "parameters": { "type": "object" }, "outputPath": { "type": "string" }, "kernel": { "type": "string" }, "timeout": { "type": "integer" }, "cwd": { "type": "string" } } }, "convertConfig": { "type": "object", "properties": { "format": { "type": "string", "enum": ["html", "pdf", "markdown", "script"] }, "outputPath": { "type": "string" }, "template": { "type": "string" }, "excludeInput": { "type": "boolean" }, "excludeOutput": { "type": "boolean" } } }, "extractConfig": { "type": "object", "properties": { "cellTags": { "type": "array", "items": { "type": "string" } }, "outputTypes": { "type": "array", "items": { "type": "string" } }, "variableNames": { "type": "array", "items": { "type": "string" } } } } } }
Output Schema
{ "type": "object", "required": ["status", "action"], "properties": { "status": { "type": "string", "enum": ["success", "error", "timeout"] }, "action": { "type": "string" }, "executionResult": { "type": "object", "properties": { "outputPath": { "type": "string" }, "executionTime": { "type": "number" }, "cellsExecuted": { "type": "integer" }, "errors": { "type": "array" } } }, "conversionResult": { "type": "object", "properties": { "outputPath": { "type": "string" }, "format": { "type": "string" } } }, "extractedData": { "type": "object", "properties": { "variables": { "type": "object" }, "outputs": { "type": "array" }, "figures": { "type": "array", "items": { "type": "string" } } } } } }
Usage Example
{ kind: 'skill', title: 'Execute EDA notebook with parameters', skill: { name: 'jupyter-notebook-executor', context: { action: 'execute', notebookPath: 'notebooks/eda_template.ipynb', executeConfig: { parameters: { data_path: 'data/train.csv', output_dir: 'results/eda/', sample_size: 10000 }, outputPath: 'notebooks/eda_results.ipynb', kernel: 'python3', timeout: 3600 } } } }