Skip to main content

jupyterlab_commands_extension

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

Display all available JupyterLab commands with their full reference IDs and arguments in a dedicated tab. The same tab exposes an allowlist of commands that the jupyterlab-commands CLI can run in the browser from a terminal.

Command Palette

Commands Reference Panel

Features

  • Command reference tab - Opens a new tab listing every registered JupyterLab command
  • Full command IDs - Shows complete command identifiers, for example iframe:open and filebrowser:copy
  • Argument inspection - Displays command arguments extracted from the running application
  • Searchable list - Filters commands by command ID, label or description
  • Command executor - Runs an allowed command from a terminal through the jupyterlab-commands CLI
  • Allowlist - Restricts the CLI to the command IDs in the allowedCommands setting

Requirements

  • JupyterLab >= 4.0.0
  • Python >= 3.10

Installation

pip install jupyterlab_commands_extension

For a development install from a clone, run make install.

Command line

jupyterlab-commands runs in a terminal of the lab. It finds the running Jupyter server, selects the most recently registered browser tab with the extension active, and asks that tab to run one command. Discovery uses the loopback address by default, and loopback requests bypass any proxy. An explicit --url with JUPYTERLAB_COMMANDS_TOKEN set reaches a remote server. The token is sent in the Authorization header and is never printed.

JUPYTERLAB_COMMANDS_TOKEN=... jupyterlab-commands --url https://remote-host:8888 --list

jupyterlab-commands --help and jupyterlab-commands <command> --help hold the full reference. The two subcommands are list, which prints the allowed command IDs, and execute, which runs one allowed command. --json prints machine-readable output.

Exit codes: 0 success, 2 discovery or usage error, 3 no browser client, 4 command not allowed, 5 execution error.

The browser tab is the executor: the command runs in the lab, not in the terminal.

Allowlist

The allowedCommands setting holds the command IDs the CLI may run. The defaults are docmanager:open, help:open, apputils:notify, notebook:create-new, console:create, terminal:create-new, launcher:create and jupyterlab-commands-reference:open.

The Add to command executor button in the Command Executor column of the reference tab appends that command ID to the setting, and the button then shows Added. The setting can also be edited directly in Settings > Settings Editor > Commands Executor, whose plugin ID is jupyterlab_commands_extension:plugin.

The reference tab opens from the command palette as Show Commands Reference under Help, and carries the text editor icon.

Agent skill

The agent skill at .agents/skills/jupyterlab-commands-extension/SKILL.md tells an AI assistant to read jupyterlab-commands --help first and adds only the rules the help cannot enforce. The wheel installs a copy at <sys.prefix>/share/jupyter/agents/skills/jupyterlab-commands-extension/SKILL.md. No agent reads that directory, so link the copy where agents look.

After pip install, with the Python that runs the lab, link the copy where Claude Code reads skills:

mkdir -p ~/.claude/skills && ln -s "$(python -c 'import sys; print(sys.prefix)')/share/jupyter/agents/skills/jupyterlab-commands-extension" ~/.claude/skills/jupyterlab-commands-extension

From a clone:

mkdir -p ~/.claude/skills && ln -s "$PWD/.agents/skills/jupyterlab-commands-extension" ~/.claude/skills/jupyterlab-commands-extension

Uninstall

pip uninstall jupyterlab_commands_extension

Contributing

If you would like to contribute to this extension, please refer to the Contributing Guide.

Metadata

Release files for jupyterlab-commands-extension 1.0.16

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-commands-extension 1.0.16
File Size Uploaded
jupyterlab_commands_extension-1.0.16.tar.gz 603.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyterlab-commands-extension 1.0.16
File Interpreter ABI Platform
jupyterlab_commands_extension-1.0.16-py3-none-any.whl Python 3 none any Details

Total release size: 655.8 kB

Release files / jupyterlab_commands_extension-1.0.16.tar.gz

Download URL jupyterlab_commands_extension-1.0.16.tar.gz
Size 603.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b50f032a9477cb740909c57d1a3304e43632dc320009af245eec078c10537233
BLAKE2b-256 checksum
How to use checksums
0369a8036d3d277e677ae687ac424b9ac12fcdeeed1eb12adb4cb07f2f0b3f79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / jupyterlab_commands_extension-1.0.16-py3-none-any.whl

Download URL jupyterlab_commands_extension-1.0.16-py3-none-any.whl
Size 52.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
305e8980da5c5f278db808682c9509c1d8696332b12896c6272da3753e2ee78e
BLAKE2b-256 checksum
How to use checksums
2f71ba3b9a7935b8120dba0d1ef95c5ce03f2305da73dd79c55db0453efa63c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release history Release notifications | RSS feed

1.0.18

2 release files

1.0.17

2 release files

This release

1.0.16 This release

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