jupyter

majiayu000's avatarfrom majiayu000

Work with Jupyter notebooks without leaving Claude Code. Execute cells, inspect outputs, validate structure, and convert formats. Activate when working with .ipynb files, user mentions notebooks, Jupyter, or needs to run/debug notebook code.

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 5, 2026

When & Why to Use This Skill

This Claude skill enables seamless interaction with Jupyter notebooks directly within Claude Code, allowing users to execute cells, inspect structures, and manage .ipynb files without leaving the terminal. It eliminates the constant context-switching between the AI agent and the browser, significantly accelerating data science and machine learning workflows through integrated execution, debugging, and format conversion.

Use Cases

  • Executing and debugging data analysis code in .ipynb files directly within the Claude Code environment to maintain focus.
  • Inspecting notebook structures and modifying specific cells using the NotebookEdit tool for rapid, iterative development.
  • Converting Jupyter notebooks to Python scripts or HTML reports for documentation, sharing, or deployment purposes.
  • Validating notebook syntax and clearing outputs to ensure clean, version-control-ready commits to repositories.
  • Running complex experiments and capturing cell outputs directly into the Claude conversation for immediate AI-powered analysis and feedback.
namejupyter
descriptionWork with Jupyter notebooks without leaving Claude Code. Execute cells, inspect outputs, validate structure, and convert formats. Activate when working with .ipynb files, user mentions notebooks, Jupyter, or needs to run/debug notebook code.

Jupyter Notebook Skill

Execute, inspect, and manage Jupyter notebooks directly from Claude Code. Eliminates the context-switching loop between CLI and browser.

Workflow

1. INSPECT  → Understand notebook structure (nb.py inspect)
2. EDIT     → Modify cells with NotebookEdit tool
3. EXECUTE  → Run cells and capture outputs (nb.py execute -i)
4. VERIFY   → Read outputs, check for errors (nb.py show --output-only)
5. ITERATE  → Repeat until complete

Setup (One-Time)

# Install a Jupyter kernel (needed for execution)
uv run --with ipykernel python -m ipykernel install --user --name python3

Scripts

Located in this skill's scripts/ directory:

Script Purpose Dependencies
nb.py Full notebook CLI nbformat, nbclient, nbconvert
validate.py Quick syntax check nbformat only

Both scripts are executable with inline dependencies (PEP 723) - uv handles everything automatically.

CLI Reference

# Inspect structure
nb.py inspect notebook.ipynb

# Show cell contents
nb.py show notebook.ipynb
nb.py show notebook.ipynb -c 0,2-4      # specific cells
nb.py show notebook.ipynb -o            # include outputs
nb.py show notebook.ipynb --output-only # outputs only

# Execute cells
nb.py execute notebook.ipynb            # all cells, show output
nb.py execute notebook.ipynb -i         # save outputs back to file
nb.py execute notebook.ipynb -c 0,2-4   # specific cells

# Validate (lightweight - only needs nbformat)
validate.py notebook.ipynb

# Convert
nb.py convert notebook.ipynb --to py
nb.py convert notebook.ipynb --to html -o output.html

# Clear outputs
nb.py clear notebook.ipynb

Quick Patterns

Execute and Read Outputs (No Browser Needed)

# Execute all cells, save outputs back to file
nb.py execute notebook.ipynb -i

# Then show just the outputs
nb.py show notebook.ipynb --output-only

Debug a Failing Cell

# Execute up to the failing cell
nb.py execute notebook.ipynb -c 0-5 --allow-errors

# Inspect the error output
nb.py show notebook.ipynb -c 5 -o

Edit Cell (Built-in Tool)

Use Claude's NotebookEdit tool to modify cells:

  • cell_id: The cell ID or index
  • new_source: New cell content
  • edit_mode: "replace", "insert", or "delete"
  • cell_type: "code" or "markdown"

Validate Before Commit

# Quick syntax check (lightweight deps)
validate.py notebook.ipynb

# Clear outputs for clean commits
nb.py clear notebook.ipynb

Tool Integration

Task Tool
Read notebook structure nb.py inspect
Read cell contents nb.py show or Read tool
Edit cells NotebookEdit tool
Execute cells nb.py execute
View outputs nb.py show -o or --output-only
Validate syntax validate.py (fast) or nb.py validate
Convert formats nb.py convert

References