marimo-pair
Work inside a running marimo notebook's kernel — execute code, create cells, and build a notebook as an artifact. Use when the user wants to start a marimo notebook or work in an active marimo session.
Security Assessment
About marimo-pair
The marimo-pair skill enables direct interaction with a running marimo notebook's kernel, allowing users to execute code, create and edit cells, and manage notebooks programmatically. It is designed for scenarios where a user wants to either start a marimo notebook or continue work in an active session. By working inside the kernel, the skill ensures that all code runs in the live notebook environment, reflecting changes instantly and supporting a seamless development workflow without needing separate local Python environments.
Key features of marimo-pair include reading and inspecting existing notebook cells, creating new cells, running code (both single-line and multi-line), installing packages, and observing the notebook's reactive graph. The skill leverages bundled Bash scripts such as `discover-servers.sh` and `execute-code.sh` for server discovery and code execution, with optional use of the MCP interface for similar operations. It handles execution over HTTP to the notebook kernel, so errors are tied to the code itself rather than the local Python setup. It also supports multi-line code execution and targeting specific sessions or server URLs, providing flexible programmatic control over notebook operations.
The skill is particularly useful for developers, data scientists, or analysts who frequently work with marimo notebooks and require programmatic automation of code execution and notebook management. It is suitable for live pair programming scenarios where users can see results in real-time, as well as for automating repetitive tasks within notebooks. By enabling cell-level control and integration with existing project tooling, marimo-pair helps users maintain efficient, interactive, and reproducible workflows in Python-based data analysis, machine learning experiments, and computational research environments.
FAQ
How do I start a marimo notebook using this skill?
You should start the notebook server without a token using `--no-token` to allow auto-discovery. If a token is required, set the `MARIMO_TOKEN` environment variable before executing scripts. Avoid `--headless` unless the user explicitly requests it.
Can I execute multi-line code with marimo-pair?
Yes, multi-line code can be executed using the execute script with a heredoc format, or via the MCP tool with the same parameters.
What should I do if I encounter a SyntaxError or ImportError?
These errors occur because code runs inside the running kernel over HTTP. Ensure your code is correctly formatted, using heredocs for multi-line statements and avoiding one-line compound statements with semicolons.
Which scripts does marimo-pair use for server discovery and code execution?
The skill uses `scripts/discover-servers.sh` to discover running notebook servers and `scripts/execute-code.sh` to execute code. Both scripts can also be invoked via MCP tools for programmatic access.
Do I need to configure permissions for Bash scripts?
Yes, Claude may prompt for Bash commands even if allowed-tools are declared. To avoid prompts, add the absolute paths of the scripts to your `.claude/settings.json` under `permissions.allow`.
Install marimo-pair
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
marimo-team/marimo-pair