Why Use This
This skill provides specialized capabilities for pymc-labs's codebase.
Use Cases
- Developing new features in the pymc-labs repository
- Refactoring existing code to follow pymc-labs standards
- Understanding and working with pymc-labs's codebase structure
Skill Snapshot
Auto scan of skill assets. Informational only.
Valid SKILL.md
Checks against SKILL.md specification
Source & Community
Updated At Jan 11, 2026, 09:59 PM
Skill Stats
SKILL.md 35 Lines
Total Files 1
Total Size 0 B
License NOASSERTION
---
name: working-with-marimo
description: Interactive development in marimo notebooks with validation loops. Use for creating/editing marimo notebooks and verifying execution.
---
# Working with Marimo
Follows a **Plan-Execute-Verify** loop to ensure notebook correctness.
## Feedback Loop
1. **Context & Plan**:
* **Sessions**: `mcp_marimo_get_active_notebooks` (Find session IDs).
* **Structure**: `mcp_marimo_get_lightweight_cell_map` (See cell IDs/content).
* **Data State**: `mcp_marimo_get_tables_and_variables` (Inspect DataFrames/Variables).
* **Cell Detail**: `mcp_marimo_get_cell_runtime_data` (Code, errors, local vars).
2. **Execute**:
* Edit the `.py` file directly using `write` or `search_replace`.
* **Rule**: Follow [Best Practices](reference/best_practices.md) (e.g., `@app.cell`, no global state).
3. **Verify (CRITICAL)**:
* **Lint**: `mcp_marimo_lint_notebook` (Static analysis).
* **Runtime Errors**: `mcp_marimo_get_notebook_errors` (Execution errors).
* **Outputs**: `mcp_marimo_get_cell_outputs` (Visuals/Console).
## Common Commands
* **Start/Sync**: Marimo automatically syncs file changes.
* **SQL**: Use `mo.sql` for DuckDB queries.
* **Plots**: Use `plt.gca()` or return figure. **No `plt.show()`**.
## Reference
See [Best Practices](reference/best_practices.md) for code formatting, reactivity rules, and UI element usage.