marimo skills

Скиллы команды marimo: правильный формат ноутбуков, перенос из Jupyter и Streamlit, запуск по расписанию, WASM

  • 177 ★ репозитория
  • Последний коммит
  • Apache-2.0
Скилл

Расширенный доступ

Почему такой уровень

  • Скиллы велят агенту запускать ноутбуки через `uv run` и `marimo`, то есть выполнять код вашего проекта.
Все причины и проверки

marimo-team/skills

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/marimo-skills

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Скиллы велят агенту запускать ноутбуки через `uv run` и `marimo`, то есть выполнять код вашего проекта.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

marimo skills — набор скиллов от команды marimo для агентов, которые пишут реактивные ноутбуки на Python. Скилл `marimo-notebook` задает формат: ноутбук хранится в обычном `.py`, каждая ячейка — функция с декоратором `@app.cell`, зависимости объявлены в блоке PEP 723. Он же объясняет запуск через `uv run` и `marimo run`, режим скрипта для проверки и правило «показывать все элементы интерфейса всегда». Переносом занимаются `jupyter-to-marimo` и `streamlit-to-marimo`. Скилл `marimo-batch` готовит ноутбук к запуску по расписанию: параметры задаются моделью Pydantic. `wasm-compatibility` проверяет ноутбук правилами lint marimo на совместимость с WebAssembly. `implement-paper` вместе с вами превращает научную статью, загруженную через alphaxiv, в интерактивный ноутбук. `anywidget` создает виджеты, `add-molab-badge` добавляет значок molab.

Для кого. Аналитикам данных и исследователям, которые ведут ноутбуки в marimo и хотят, чтобы Claude Code или Codex писал их в нужном формате.

Подходит, если

  • Агент пишет ноутбук marimo, а выходит код в стиле Jupyter без `@app.cell` и без блока зависимостей PEP 723.
  • Старый ноутбук Jupyter или приложение Streamlit переезжает в marimo.
  • Статью хочется разобрать на интерактивном примере, и `implement-paper` собирает ноутбук вместе с вами.
  • Ноутбук должен работать по расписанию, а параметры запуска `marimo-batch` выносит в модель Pydantic.
  • Перед публикацией в WASM-песочнице надо проверить совместимость: `wasm-compatibility` запускает правила lint marimo.

Не подходит, если

  • Вы остаетесь на Jupyter: скиллы заточены под формат marimo и его реактивные ячейки.
  • Нужна настройка сервера marimo или его развертывания: скиллы описывают написание и перенос ноутбуков.
  • Задача — общая аналитика на pandas без ноутбука: формат marimo там не используется.

Пример запроса к агенту

Переведи ноутбук analysis.ipynb в marimo, раздели расчеты на ячейки и вынеси параметры в слайдеры.

Ограничения

Состав набора README не перечисляет, его видно только в папке `skills/` репозитория. Шаблон в `marimo-notebook` показывает marimo 0.20.4 и Python 3.14, в проектах на старых версиях их меняют вручную. Скилл `implement-paper` берет статьи через alphaxiv и работает при доступе к этому сервису. Для запуска ноутбуков примеры используют `uv`, для установки скиллов нужен Node.js с `npx`. Скиллы пишут для агентов, которые поддерживает `npx skills`, и о других инструментах README молчит.

Как отключить. Удалите скиллы тем же CLI, которым ставили, или вручную из каталога скиллов агента. Сами ноутбуки остаются обычными файлами `.py` и продолжают работать.

Частые вопросы

Как поставить скиллы только в Claude Code?

Выполните `npx skills add marimo-team/skills --agent claude-code`. Для OpenCode замените значение флага на `opencode`.

Чем ноутбук marimo отличается от Jupyter в записи?

Это обычный файл `.py`, тогда как Jupyter хранит JSON: ячейки — функции с `@app.cell`, их входы и выходы задают связи, и marimo сам отслеживает зависимости. Блок `# /// script` в начале хранит версии пакетов.

Как понять, что ноутбук идет как скрипт?

Проверка `mo.app_meta().mode == "script"` отличает запуск `uv run` от интерактивного. Скилл советует менять в этом режиме только источник данных, а все элементы интерфейса показывать всегда.

Как проверить ноутбук на совместимость с WASM?

Попросите агента применить скилл `wasm-compatibility`: он прочитает ноутбук, запустит правила lint marimo и сообщит о найденных проблемах.

Как подготовить ноутбук к запуску по расписанию?

Скилл `marimo-batch` советует объявить параметры моделью Pydantic: у каждого поля значение по умолчанию и описание. Так модель становится единым источником правды для пакетной задачи.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы
Официальный

Агент работает в одной сессии с вами в запущенном ноутбуке marimo: запускает код в том же ядре и правит ячейки на ходу

СкиллШирокий доступ432Звезды репозитория
Официальный

Скиллы Probabl для экспериментов по машинному обучению: пайплайн на scikit-learn и skrub, оценка, аудит и подключение к Skore Hub

ПлагинМинимальный доступ145Звезды репозитория

17 скиллов для вычислительной биологии: RNA-seq, одноклеточный анализ, структуры белков, докинг, литература и графики

СкиллРасширенный доступ75Звезды репозитория

pymc-modeling, пять скиллов PyMC Labs, учит агента строить байесовские модели, проверять априоры и читать диагностику.

СкиллМинимальный доступ95Звезды репозитория
Официальный

Скиллы NVIDIA для биологии и химии: агент предсказывает структуры белков, стыкует молекулы, проектирует белки и разбирает геномы

СкиллРасширенный доступ507Звезды репозитория

24 скилла по численным методам и материаловедению: агент проверяет устойчивость, сетки, сходимость и запуски на кластере.

ПлагинРасширенный доступ83Звезды репозитория

Коротко о README

README короткий: команда установки, список поддерживаемых агентов через npx skills и ссылки на описания скиллов в справке Claude. Обратную связь автор просит присылать через issues, Discord или Reddit.

Бейдж для README

Исходный SKILL.md

---
name: marimo-notebook
description: Write a marimo notebook in a Python file in the right format.
---

# Notes for marimo Notebooks

marimo uses Python to create notebooks, unlike Jupyter which uses JSON. Here's an example notebook: 

```python
# /// script
# dependencies = [
#     "marimo",
#     "numpy==2.4.3",
# ]
# requires-python = ">=3.14"
# ///

import marimo

__generated_with = "0.20.4"
app = marimo.App(width="medium")


@app.cell
def _():
    import marimo as mo
    import numpy as np

    return mo, np


@app.cell
def _():
    print("hello world")
    return


@app.cell
def _(np, slider):
    np.array([1,2,3]) + slider.value
    return


@app.cell
def _(mo):
    slider = mo.ui.slider(1, 10, 1, label="number to add")
    slider
    return (slider,)

Сообщить о проблеме