Skip to main content

A tool designed to execute all cells in a Jupyter Notebook using nbconvert’s ExecutePreprocessor, capturing outputs for testing and reporting.

Project description

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri_tool_jupyterexecutenotebook


Swarmauri Tool Jupyter Execute Notebook

Executes all cells of a Jupyter notebook using nbclient and returns the executed NotebookNode with captured outputs.

Features

  • Runs notebooks programmatically via the Swarmauri tool interface.
  • Accepts optional per-cell timeout (default 30 seconds) and continues on cell errors.
  • Returns the executed notebook object so downstream tools can inspect outputs or save it.

Prerequisites

  • Python 3.10 or newer.
  • Jupyter/nbconvert stack available (nbclient, nbformat, ipykernel, etc.—installed automatically).
  • Notebook dependencies must be installed in the environment where the tool runs.

Installation

# pip
pip install swarmauri_tool_jupyterexecutenotebook

# poetry
poetry add swarmauri_tool_jupyterexecutenotebook

# uv (pyproject-based projects)
uv add swarmauri_tool_jupyterexecutenotebook

Quickstart

from swarmauri_tool_jupyterexecutenotebook import JupyterExecuteNotebookTool

executor = JupyterExecuteNotebookTool()
executed_nb = executor(
    notebook_path="notebooks/example.ipynb",
    timeout=120,
)

# Save the executed notebook
import nbformat, json
from pathlib import Path

Path("notebooks/example-executed.ipynb").write_text(
    nbformat.writes(executed_nb),
    encoding="utf-8",
)

Tips

  • Increase timeout for notebooks with long-running cells to avoid CellTimeoutError.
  • Set allow_errors=True (default in the tool) so execution continues after a failing cell while error traces are still recorded.
  • Combine with JupyterClearOutputTool or conversion tools to build end-to-end notebook pipelines.

Want to help?

If you want to contribute to swarmauri-sdk, read up on our guidelines for contributing that will help you get started.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16.tar.gz.

File metadata

  • Download URL: swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16.tar.gz
Algorithm Hash digest
SHA256 037a456dae0156415ab5e0eb0767216b213ecce07435b0c5fefd064b03a5c95a
MD5 0939934ba1de679433efd04c80f2b94f
BLAKE2b-256 bcdc5d11d8903d2c425721a670c7863a153ca14e04819babd95ab2d600db0ad0

See more details on using hashes here.

File details

Details for the file swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_tool_jupyterexecutenotebook-0.9.3.dev16-py3-none-any.whl
Algorithm Hash digest
SHA256 44a9e9df7c28d34f00a4acf0fb2effa9ee7b436e59c1a2f0cf910f9361ca6ba2
MD5 8a3fe99b07573ff11e426d10b3ff1692
BLAKE2b-256 459ef241e96c6e34295030989dbfe95b27a79c402a4df3d841bbebea3574e725

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page