pi-marimo
Live marimo notebooks in Pi: kernel state in context, and a terminal notebook view (outline and detail, docked beside the chat) where you run cells, drive widgets and tables, and read what the agent changed.
Package details
Install pi-marimo from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-marimo- Package
pi-marimo- Version
0.5.0- Published
- Nov 13, 2026
- Downloads
- 563/mo · 90/wk
- Author
- spencerboucher
- License
- MIT
- Types
- extension
- Size
- 951.4 KB
- Dependencies
- 5 dependencies · 5 peers
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-marimo
The marimo notebook your agent is editing, live in your terminal beside the chat.

pi-marimo is an extension for the Pi coding agent. Your agent edits the notebook through marimo pair; you watch it run, read it and steer it from the terminal, docked beside the conversation. You need the browser much less.
- The notebook beside the chat.
ctrl+'docks an outline of sections and cells, and the selected cell's output, error and code. - Real outputs in the terminal. Tables you can page, sort, search and filter; Matplotlib, Vega-Lite and live Plotly charts on Kitty-graphics terminals; widgets you drive with keys or the mouse.
- What runs, as it runs. A spinner and elapsed time, the dataflow around the selected cell, the run chain, and errors with their tracebacks.
- The agent knows the notebook. Each prompt carries the notebook's current state: cells, what they define, what is stale or broken.
- What the agent changed, and undo. Changed cells are marked, with a diff, the cells it reruns, and
uto revert. - A native pair agent. On marimo's host protocol, Pi attaches as an agent and receives the notebook's messages.
Install
You need Pi in a terminal (docking beside the chat needs "tuiMode": "fullscreen" in Pi's settings), Node 22.19 or later and marimo.
pi install npm:pi-marimo
npx skills add marimo-team/marimo-pair -s marimo-pair -a pi # lets the agent edit cells
Quick start
- Open a notebook from Pi:
/marimo new analysis.py, or/marimo edit analysis.pyfor an existing one, such asexamples/demo.py. Pi starts the marimo server if none is running; no browser is needed. - Ask the agent to work in it: "load sales.csv and chart revenue by month".
- Press
ctrl+'. The notebook docks beside the chat and follows the running cell. ctrl+]switches between the chat and the notebook, and?lists every key.
A notebook you already have open in the browser (started with marimo edit --no-token) is followed automatically when it is under Pi's working directory.
Compatibility
marimo 0.25.2 and marimo main (the host protocol); charts need a terminal with Kitty graphics (Ghostty, Kitty, herdr). Details and known gaps.
Documentation
- Getting started
- Guide: the notebook view, tables, widgets and charts, editing cells, working with the agent, background execution
- Reference: keys, commands and tools, configuration
- How it works, troubleshooting, development
Development
npm ci && npm run check
Live tests, the demo notebook and the docs build are in Development; releases and rollout are in AGENTS.md.
License
MIT. See LICENSE.