Skip to main content

JupyterHub-Pilot

One JupyterHub for many teams. Each team gets its own worker VM, and every notebook has an AI assistant.

  • A worker VM per team. The Hub starts each user's notebook server over SSH on their team's worker, so one heavy team cannot slow down another.
  • A Linux account per user, with cgroup memory and CPU limits on every notebook server.
  • AI magics in every notebook: %do, %fix, %review, %rework (Ollama, OpenAI, Claude or Gemini through LiteLLM, or an MCP server).
  • Live monitoring at /hub/monitoring: each worker's CPU, memory, disk and network, and each user's usage against their limits.
  • Google login, SQLite state that survives Hub restarts, optional Vault secrets, and a built-in load test.

Install

Ubuntu 24.04 or 26.04: one Hub VM plus one worker VM per team, on the same private network.

Hub

sudo apt update && sudo apt install -y python3-pip
sudo pip3 install --break-system-packages --ignore-installed "jupyterhub-pilot[hub]"
sudo jupyterhub-pilot install-hub

It asks for the Hub's private IP, your admin username and the first worker's IP, and prints an SSH key and an agent token for the workers.

Each worker

sudo apt update && sudo apt install -y python3-pip
sudo pip3 install --break-system-packages --ignore-installed "jupyterhub-pilot[worker,ai]"
sudo jupyterhub-pilot install-worker

Then, on the Hub

sudo jupyterhub-pilot add-worker team_beta <worker-private-ip>   # one per extra team
sudo nano /etc/jupyterhub-pilot/hub.env                          # Google client, or test passwords
sudo systemctl enable --now jupyterhub

Put Caddy in front for HTTPS, create a group per team in Admin → Groups, and users can start their servers.

In a notebook

%load_ext jupyterhub_pilot.extension
%do load data/sales.csv and plot monthly revenue

%do writes the code into the next cell for you to check and run.

Learn more

MIT licensed.

Metadata

Release files for jupyterhub-pilot 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jupyterhub-pilot 0.7.0
File Size Uploaded Provenance Actions
jupyterhub_pilot-0.7.0.tar.gz 119.1 kB Without provenance Details for jupyterhub_pilot-0.7.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for jupyterhub-pilot 0.7.0
File Interpreter ABI Platform Actions
jupyterhub_pilot-0.7.0-py3-none-any.whl Python 3 none any Details for jupyterhub_pilot-0.7.0-py3-none-any.whl

Total release size: 205.6 kB

Release files / jupyterhub_pilot-0.7.0.tar.gz

Download URL jupyterhub_pilot-0.7.0.tar.gz
Size 119.1 kB
Tags Source
SHA-256 checksum
How to use checksums
371f6ef904b4f5aea57337bcc8db50a1d0e13067848187f61750599e5356ae99
BLAKE2b-256 checksum
How to use checksums
1777de207c5a8c48ac8f7bd5e08edc005147a68abe286fd25f00420aca149f4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13

Release files / jupyterhub_pilot-0.7.0-py3-none-any.whl

Download URL jupyterhub_pilot-0.7.0-py3-none-any.whl
Size 86.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ed383f6002368079de628d1d33396bea339f68729f872db91db2238fe7b04922
BLAKE2b-256 checksum
How to use checksums
4c07861780efb7746086ec3fc6a2a1c2eaf4d66c38c617e3e2123552c0c528e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13

Security for jupyterhub-pilot 0.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page