Run and monitor Jupyter notebook servers directly from Stanza’s CLI. The integration provides persistent server management, real-time notebook monitoring, and automatic cell output logging - all designed to streamline interactive development workflows.

Jupyter integration requires additional dependencies:
This installs:
jupyter_server for server managementjupyter_core for runtime discoveryStart a Jupyter server in your project directory:
The server runs in the background and persists across terminal sessions, making it ideal for long-running experiments on remote machines.
Launch a persistent Jupyter server that survives terminal closure:
Or via CLI:
The server automatically configures:
notebook_name.log filesGet server information including uptime and URL:
Via CLI:
Gracefully shutdown using escalating strategies (REST API CMD → SIGTERM → SIGKILL):
Via CLI:
View all running notebook kernels with their log file metadata:
Via CLI:
Monitor notebook output in real-time without interrupting execution:
The logs command is useful for monitoring long-running experiments while preserving the ability to detach without affecting the notebook kernel.
Connect directly to a notebook kernel with interactive control:
When attached:
This mode is ideal for active development and debugging when you need full control over kernel lifecycle.
When you start the Jupyter server through Stanza, cell outputs are automatically logged to {notebook_name}.log files in the same directory as each notebook. This enables:
stanza jupyter logsLog files capture stdout, stderr, and display outputs, providing a complete record of your notebook’s execution history.
For SSH sessions to lab computers, use port forwarding to access Jupyter in your local browser:
The persistent server ensures your notebooks keep running even if your SSH connection drops.
Background execution: The server runs as a detached process, so you can close your terminal without stopping Jupyter. Use stanza jupyter status to rediscover the URL after reconnecting.
Monitor long experiments: Use stanza jupyter logs to check progress on multi-hour measurements without opening the browser or disrupting execution.
Clean shutdown: Always use stanza jupyter stop to gracefully shutdown the server. This ensures proper cleanup of runtime files and state.
Port conflicts: If port 8888 is already in use, specify a different port with --port 8889 when starting the server.