Skip to main content

jupyterlab_basic_terminal_extension

GitHub Actions npm version PyPI version Total PyPI downloads JupyterLab 4 Brought To You By KOLOMOLO Donate PayPal

Launch a utility terminal in JupyterLab that runs without a shell. Perfect for spawning short-lived console utilities that close their tab automatically when the underlying process exits, instead of leaving behind an idle shell prompt.

Features

  • Shell-less terminal command - Adds a JupyterLab command that opens a terminal bound directly to a utility process, with no surrounding shell
  • Auto-close on exit - Terminal tab closes as soon as the utility process finishes, keeping the workspace tidy
  • Server extension companion - Python jupyter_server extension exposes the route used by the frontend to spawn the process
  • JupyterLab 4 native - Built against @jupyterlab/application 4.x and ships as a prebuilt federated extension

Installation

Requires JupyterLab 4.0.0 or higher, and bash on the server - the terminal initialisation step uses bash-specific syntax, so a sh-only image will not work.

pip install jupyterlab_basic_terminal_extension

Usage

The extension deliberately adds no menu item, palette entry or launcher tile. Its entire surface is one command, invoked programmatically by other extensions, notebook code, or a jupyter_app_launcher tile:

await app.commands.execute('basic-terminal:launch', {
  argv: ['/opt/utils/my-utility.sh'],
  cwd: 'projects/demo'
});
  • argv (required) - non-empty array of strings. argv[0] is executed directly; there is no shell, so no globbing, pipes or redirection
  • cwd (optional) - absolute path used as-is, or a server-relative path resolved against ServerApp.root_dir ('' is the root). Omit it and the current file browser folder is used, unless the browser is on a registered non-default drive - such a drive is not assumed to map onto the server filesystem, so the server's own working directory is used instead. A path that does not resolve to a directory is rejected with HTTP 400

The command resolves to the terminal widget, and rejects if the process exits before the widget can be displayed.

Uninstall

To remove the extension, execute:

pip uninstall jupyterlab_basic_terminal_extension

Metadata

Release files for jupyterlab-basic-terminal-extension 1.0.7

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

Source distribution (sdist)

Source distribution for jupyterlab-basic-terminal-extension 1.0.7
File Size Uploaded
jupyterlab_basic_terminal_extension-1.0.7.tar.gz 315.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyterlab-basic-terminal-extension 1.0.7
File Interpreter ABI Platform
jupyterlab_basic_terminal_extension-1.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 349.0 kB

Release files / jupyterlab_basic_terminal_extension-1.0.7.tar.gz

Download URL jupyterlab_basic_terminal_extension-1.0.7.tar.gz
Size 315.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6fe58062c9abbfe91976408775f9975c45ad43a1054ef37aad0d6c7df6762376
BLAKE2b-256 checksum
How to use checksums
17e23df3fdbf922ab37726b1349f54e8d666e37a8e749af9346dfa28fa87ced2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / jupyterlab_basic_terminal_extension-1.0.7-py3-none-any.whl

Download URL jupyterlab_basic_terminal_extension-1.0.7-py3-none-any.whl
Size 33.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aba13c39c632f607661d9b3533bd75312baaa871dee5b4ff263545b62f1ceec2
BLAKE2b-256 checksum
How to use checksums
0fd4f6794d361ad081b7e4b10a2724c4c96b2b992c79aafe00b0f85b4cb2aa9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release history Release notifications | RSS feed

This release

1.0.7 This release

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

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