원클릭으로
bip-marimo
Generate and edit marimo reactive notebooks correctly. Auto-triggers when working with marimo .py notebook files.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Generate and edit marimo reactive notebooks correctly. Auto-triggers when working with marimo .py notebook files.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Check remote server CPU, memory, and GPU availability via SSH
Cold-start into a worktree/clone from a fresh conversation — read the PR, issue, and any status files, figure out where things stand, then STOP and ask the user what to do next. Use for a fresh conversation dropped into a bip-spawn or bip-epic-spawn worktree/clone that already has history (a PR, an in-progress phase, or a stalled worker).
Quick poll of tracked EPICs and code repos for new manuscript-relevant results
Persist manuscript session state before context reset
Cold-start for a manuscript session — the paper is the source of truth and shared context; discuss results, orchestrate research through issues/PRs, and update the paper as threads complete
Spawn a Claude session in a clone for an EPIC issue
| name | bip-marimo |
| description | Generate and edit marimo reactive notebooks correctly. Auto-triggers when working with marimo .py notebook files. |
Reactive Python notebooks stored as plain .py files.
Docs: https://docs.marimo.io/ API Reference: https://docs.marimo.io/api/
Use pixi for all marimo commands:
pixi run marimo edit notebook.py
pixi run marimo run notebook.py
pixi run marimo check notebook.py
pixi run marimo export html notebook.py -o notebook.html
pixi run marimo export ipynb notebook.py -o notebook.ipynb
pixi run marimo convert notebook.ipynb -o notebook.py
Never use --sandbox flag (creates isolated env, ignores your packages).
Every marimo notebook starts with:
import marimo
app = marimo.App()
Each cell is decorated with @app.cell:
@app.cell
def _():
import marimo as mo
import pandas as pd
return mo, pd
@app.cell
def _(mo):
slider = mo.ui.slider(0, 100, value=50, label="Amount")
slider
return (slider,)
@app.cell
def _(mo, slider):
# Auto-runs when slider changes
mo.md(f"Value: **{slider.value}**")
return
return (var1, var2,) tupledef _(mo, slider): means this cell uses mo and slidermarimo check catches thesemo.output.replace()pixi run marimo check validates notebook structure (the PostToolUse hook runs this automatically)import marimo as mo
# Markdown with interpolation
mo.md(f"# Title\nValue is **{x}**")
# UI elements (reactive)
slider = mo.ui.slider(0, 100, value=50, label="Amount")
dropdown = mo.ui.dropdown(["a", "b", "c"], label="Choice")
text = mo.ui.text(placeholder="Enter name")
checkbox = mo.ui.checkbox(label="Enable")
button = mo.ui.button(label="Click me")
# Access values
slider.value # returns current value
# Layout
mo.hstack([elem1, elem2]) # horizontal
mo.vstack([elem1, elem2]) # vertical
mo.accordion({"Section": content})
mo.tabs({"Tab1": content1, "Tab2": content2})
# Output / control flow
mo.output.replace(content) # replace cell output
mo.stop(condition, mo.md("Stopped")) # conditional halt