Registry / devops / metakernel

metakernel

JSON →
library1.0.0pypypi✓ verified 84d ago

Metakernel is a Jupyter/IPython kernel base class in Python, providing a framework for building custom kernels. Current version 1.0.0 requires Python >=3.11. Released under BSD license, maintained on GitHub by Calysto.

pip install metakernel
INSTALL
IMPORT
SIG · METAKERNEL
M
metakernel
devopspythonv1.0.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

MetaKernel
from metakernel import MetaKernel
from metakernel.metakernel import MetaKernel
Old import path before reorganization
Magic
from metakernel import Magic
from metakernel.magic import Magic
Magic class is available directly from metakernel

Defines a minimal custom kernel by subclassing MetaKernel and implementing do_execute.

from metakernel import MetaKernel # Minimal subclass to create a custom kernel class MyKernel(MetaKernel): implementation = 'MyKernel' implementation_version = '0.1.0' language = 'mylang' language_version = '1.0' language_info = { 'name': 'mylang', 'codemirror_mode': 'mylang', 'file_extension': '.my', 'mimetype': 'text/x-mylang', 'pygments_lexer': 'mylang-keywords', } def do_execute(self, code, silent, store_history=True, user_expressions=None, allow_stdin=False): if not silent: self.payload = [{'source': 'page', 'text': 'Executed: ' + code}] return {'status': 'ok', 'execution_count': self.execution_count, 'payload': [], 'user_expressions': {}} # Install with kernelspec (run once) # from metakernel import install_kernel_spec # install_kernel_spec(MyKernel, 'mykernel', 'My Kernel') print('Kernel class defined successfully')
Debug
Known issues
breakingBreaking change in 1.0.0: Removed deprecated 'get_kernel_io' method. Use 'get_io' instead.
fix
Replace calls to get_kernel_io() with get_io().
affects: >=1.0.0
breakingBreaking change in 1.0.0: Changed Magic registration API. Previously used 'magics.register()', now requires 'register_magic()'.
fix
Use 'register_magic()' method on kernel instance or via decorator.
affects: >=1.0.0
deprecatedThe 'magics' module is deprecated. Use direct 'MetaKernel' subclass methods for custom magics.
fix
Define magic methods within the kernel class using @magic decorator.
affects: >=0.12
gotchaKernel must be installed with 'install_kernel_spec()' before use; otherwise Jupyter cannot find it.
fix
Run 'from metakernel import install_kernel_spec; install_kernel_spec(MyKernel, 'mykernel', 'My Kernel')' after defining kernel class.
affects: all
Errors
Common errors & fixes
ImportError: cannot import name 'MetaKernel' from 'metakernel'
Using wrong import path from older version or broken installation.
fix
Use 'from metakernel import MetaKernel' (no submodule).
AttributeError: type object 'MyKernel' has no attribute 'get_kernel_io'
Method renamed in metakernel 1.0.0.
fix
Replace 'get_kernel_io()' with 'get_io()'.
TypeError: install_kernel_spec() missing 1 required positional argument: 'display_name'
Signature changed: required display_name now third argument.
fix
Pass both kernel_class, kernel_name, and display_name: 'install_kernel_spec(MyKernel, 'mykernel', 'My Kernel')'.
Upgrade
Version history
1.0.0latest on PyPI · released Mar 24, 2026
Audit
Dependencies
ipykernelrequiredrequired for kernel integration
jupyter_clientrequiredrequired for protocol handling
Agent activity
4 hits · last 30 days
node
4
Resources
metakernel — pip install metakernel · libregistry