add-molab-badge について
add-molab-badge は、MarkdownやHTMLにmarimoノートブックへの「Open in molab」バッジを追加・置換するスキルです。ノートブックの特定、URLの作成、周囲の内容を保った更新を扱います。
主な機能
- 01リポジトリ内のmarimoノートブックを検索
- 02ノートブックのパスからmolab URLを作成
- 03marimo.appのリンクとバッジを置換
- 04MarkdownとHTMLにバッジを追加
活用シーン
- 01リポジトリのREADMEにノートブックバッジを追加
- 02既存のmarimo.appバッジを置換
- 03指定されたノートブックURLからバッジ記法を作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ marimo-team/ skills --skill add-molab-badgeインストール後、Claude Code で/add-molab-badgeを入力して読み込まれたか確認します。
詳細
molab バッジを追加する
marimo ノートブックへのリンクを設定した「molab で開く」バッジを追加します。バッジは、GitHub の README、ドキュメントサイト、ブログ記事、ウェブページ、その他の Markdown/HTML ファイルなど、任意の場所に追加できます。
手順
0. molab 用のセッションをエクスポートする
GitHub リポジトリにセッション情報があると、molab のプレビューがより見やすく表示されます。次の方法で追加できます。
uvx marimo export session notebook.py
uvx marimo export session folder/
ノートブックを実行してセッションのスナップショットをエクスポートします。molab はこれを使って、事前にレンダリングされたノートブックを提供します。
主なフラグ:
--sandbox— PEP 723 の依存関係を使用し、各ノートブックを分離された環境で実行します--continue-on-error— いずれかのノートブックでエラーが発生しても、ほかのノートブックの処理を続けます--force-overwrite— 最新の状態であっても、既存のスナップショットをすべて上書きします
1. ノートブックのリンクを特定する
ユーザーからノートブックのリンクが提示される方法は、次の 2 通りです。
- ユーザーがリンクを直接提示する場合。 ユーザーがノートブックの URL を貼り付けます。そのまま使用し、リンクの調査は不要です。
- ノートブックを調査する場合(README が対象の場合のみ)。 ユーザーがリポジトリの README にバッジを追加するよう依頼し、対象のノートブックを指定していない場合は、次の手順で見つけます。
- リポジトリ内の marimo ノートブックファイル(
.pyファイル)をすべて見つけます。Globで**/*.pyのようなパターンを使い、import marimoまたはapp = marimo.Appというヘッダーがあるか確認して、marimo ノートブックであることを確かめます。 - README にノートブックへのリンク(
marimo.appリンクや既存のバッジなど)がある場合は、それらを置き換えます。 - リンクがない場合は、どのノートブックをリンクするかユーザーに尋ねます。
- リポジトリ内の marimo ノートブックファイル(
2. molab の URL を作成する
各ノートブックについて、次の形式で molab の URL を作成します。
https://molab.marimo.io/github/{owner}/{repo}/blob/{branch}/{path_to_notebook}
{owner}/{repo}:GitHub のオーナー名とリポジトリ名です。Git のリモート(git remote get-url origin)、ユーザーが提示した URL、またはユーザーへの確認から特定します。{branch}:通常はmainです。リポジトリのデフォルトブランチを確認します。{path_to_notebook}:リポジトリのルートからの相対パスで指定した.pyノートブックファイルのパスです。
3. /wasm サフィックスのルールを適用する
- 既存の
marimo.appリンクを置き換える場合は、molab の URL に/wasmを付けます。marimo.appはノートブックをクライアント側(WASM)で実行するため、その動作を維持するには、molab の同等リンクにも/wasmサフィックスが必要です。 - 新しいバッジを追加する場合(
marimo.appリンクを置き換えるのではない場合)は、ユーザーが明示的に希望しない限り、/wasmを付けません。
4. バッジの形式を整える
次の Markdown バッジ形式を使用します。
[](URL)
URL には、上記のルールに従って /wasm の有無を決めた molab の URL を指定します。
HTML が対象の場合は、次の形式を使用します。
<a href="URL"><img src="https://marimo.io/molab-shield.svg" alt="Open in molab" /></a>
5. 対象にバッジを挿入または置換する
- 既存のバッジやリンクを置き換える場合:
marimo.appの URL を、同等のmolab.marimo.ioの URL に置き換えます。- 古いシールド画像 URL(例:
https://marimo.io/shield.svgまたは camo 経由の URL)を、https://marimo.io/molab-shield.svgに置き換えます。 - alt テキストを
Open in molabに設定します。 - 周囲のテキストや構成は維持します。
- 対象ファイルを直接編集します。関係のないセクションは書き換えないでください。
- ユーザーがバッジの Markdown/HTML だけを求めている場合は、そのまま出力します。
例
README の marimo.app バッジを置き換える場合:
変更前:
[](https://marimo.app/github.com/owner/repo/blob/main/notebook.py)
変更後:
[](https://molab.marimo.io/github/owner/repo/blob/main/notebook.py/wasm)
注:marimo.app リンクを置き換えるため、/wasm を付けています。
ユーザーが提示したリンクから新しいバッジを追加する場合:
ユーザー:「次のノートブックに molab バッジを追加してください:https://github.com/owner/repo/blob/main/demo.py、https://github.com/owner/repo/blob/main/tutorial.py」
出力:
[](https://molab.marimo.io/github/owner/repo/blob/main/demo.py)
[](https://molab.marimo.io/github/owner/repo/blob/main/tutorial.py)
注:新しいバッジには、デフォルトで /wasm を付けません。