jupyter-notebook

Execute stateful Python code through a live Jupyter kernel via hamelnb.

Updated Sep 10, 2026
One-click install
npx skills add https://github.com/loteiron/ZeusAgent --skill jupyter-notebook-loteiron
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: jupyter-notebook
Source: https://github.com/loteiron/ZeusAgent/tree/main/optional-skills/data-science/jupyter-notebook
Command: npx skills add https://github.com/loteiron/ZeusAgent --skill jupyter-notebook-loteiron

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jupyterlab, uv.

What problem does it solve? One-shot code execution loses all variables between runs, forcing you to rebuild state repeatedly when exploring data, testing APIs, or iterating on complex logic. This Skill provides a persistent Python REPL backed by a live Jupyter kernel so variables, imports, and objects survive across executions. ## Core Features & Use Cases - Stateful Code Execution: Run Python code against a live kernel where variables and imports persist across calls, ideal for incremental exploration. - Live Variable Inspection: List and preview variables currently held in the kernel to debug and understand intermediate results. - Notebook Cell Editing: View, insert, replace, and delete notebook cells programmatically, plus restart-and-run-all verification for clean top-to-bottom runs. - Use Case: While analyzing a large CSV, load it into a pandas DataFrame once, then iteratively filter, aggregate, and plot across multiple executions without reloading the data each time. ## Quick Start Start a Jupyter kernel session and run my Python analysis code step by step, keeping the DataFrame in memory between each step.

Frequently Asked Questions about jupyter-notebook

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run Python code with persistent state between executions?▼

Use a live Jupyter kernel through the hamelnb script's execute command, which keeps variables, imports, and objects alive across calls. Point it at a notebook path and pass code with the --code flag; state persists until the kernel restarts.

When should I use a Jupyter kernel instead of one-shot code execution?▼

Use a Jupyter kernel for iterative exploration, data science work, and tasks where you build up state incrementally. Use one-shot execution for stateless scripts, and the terminal for shell commands, builds, and installs.

What are the prerequisites for running a live Jupyter kernel?▼

You need uv installed, JupyterLab installed via uv tool install, and a running Jupyter server. You also must create a kernel session through the Jupyter REST API before executing code against a notebook.

Why does Jupyter execution time out on the first run?▼

The kernel needs time to initialize after the server starts, so the first execution may exceed the 30-second default timeout. Retry the call or pass a larger value such as --timeout 120 for setup or heavy computation.

How do I fix websocket timeouts when executing Jupyter cells?▼

Force zmq transport by adding --transport zmq to the execute command. This uses jupyter_client directly and bypasses broken websocket reply channels where the kernel actually ran but the response never arrived.

Why does creating a Jupyter session fail with an _xsrf error?▼

POST requests to /api/sessions fail with '_xsrf argument missing' when XSRF checks are enabled. Start the server with --ServerApp.disable_check_xsrf=True for REST-only local agent access.