plmbr/notebook-intelligence
A JupyterLab extension supporting Claude Code, Copilot, Ollama, and OpenAI-compatible LLMs, with MCP, skills, plugins, and notebook agents.
Notebook Intelligence (NBI)
概要 – JupyterLab 内で動作するオープンソースの AI コーディングアシスタントです。チャットサイドバー、インラインコード生成、自動補完、そしてノートブックセルを作成・編集・実行できるプログラム可能なエージェントを追加します。このアシスタントは、GitHub Copilot、OpenAI または LiteLLM 互換エンドポイント、ローカルの Ollama モデル、Anthropic の Claude (Claude Code CLI 経由) など、さまざまな大規模言語モデル (LLM) バックエンドと対話できます。
主な機能
- チャットパネル – 左側のサイドバーにあるチャット UI で、モデルとの対話、画像の添付、特殊な参加者 (
@workspace,@mcpなど) の呼び出しによるツールへのリクエストルーティングが可能です。 - インラインコード生成 – セルの火花アイコンをクリック(または
Ctrl+G/Cmd+Gを押下)してポップオーバーを開き、コードの提案を受け取ります。Ctrl+Enterで適用します。 - 自動補完 – コードセルや Python ファイルエディタでの入力中に提案が表示されます。
Tabキーで適用します。 - エージェントモード
- デフォルトエージェント – チャットから直接ノートブックの作成・編集・実行を行います。
- ACP エージェント – 外部の Agent Client Protocol サービス(現在は OpenAI Codex)と通信する実験的モードで、管理者の有効化が必要です。
- Claude モード – Claude Code CLI がインストールされている場合、チャットパネルは Claude Code を介して実行され、インライン/チャット機能は Anthropic モデルを使用します。これにより、Claude 特有のツール、スキル、Model Context Protocol (MCP) サーバーを JupyterLab に導入できます。
- Chatbook – 自然言語でセルを記述できるノートブック (
NLバッジ)。プロンプトセルを実行すると、ノートブックのアクティブなカーネルに対してコードが生成・実行されます(確認動作は設定可能)。 - セル出力アクション – セルの出力を右クリックまたはホバーして、モデルにエラーの説明、フォローアップの質問、トラブルシューティングを依頼できます。出力はコンテキストとして送信されます。
- ツールバー生成 – ノートブックツールバーの火花アイコンからポップオーバーを開き、そのノートブックに限定した生成が可能です。複数ノートブックのセッションで便利です。
- 多言語対応 – NBI はアクティブなカーネルと言語を検出し、ノートブックの言語(Python, R など)に合わせたコード生成を保証します。
- ファイル変更の再読み込み – 未保存の編集がない限り、ディスク上で基盤ファイルが変更されると開いているタブが自動的に更新されます。
はじめ方
pip install notebook-intelligence # Python パッケージのインストール
jupyter lab # 実行中の場合は再起動
- JupyterLab 左サイドバーの新しい NBI アイコンをクリックしてチャットパネルを開きます。
- Settings (歯車アイコン) → Notebook Intelligence Settings を開きます。
- LLM プロバイダーにサインインします:
- GitHub Copilot – Sign in をクリック。
- OpenAI/LiteLLM – API キーを貼り付け。
- Ollama – 実行中のローカルデーモンを指定。
- Claude – Claude mode を有効にし、Claude Code CLI が
PATHにあることを確認(またはNBI_CLAUDE_CLI_PATHを設定)。
- チャットパネルにメッセージを入力して Enter を押します。
設定 – 設定は ~/.jupyter/nbi/ (JSON ファイル) に保存されます。プロバイダーの選択、モデル ID、トークン制限、Claude の権限モード、管理者がロック可能なポリシー(自動実行の可否、権限バイパスモードの表示など)を調整できます。ルールセット (markdown ファイル) を ~/.jupyter/nbi/rules/ に配置することで、カスタムのシステムプロンプト指示を注入できます。
管理 – 一部の実験的機能(ACP エージェント、フルアクセスバイパス権限)は、管理者が環境変数ポリシー (NBI_ACP_EXPERIMENTAL_POLICY, NBI_CLAUDE_BYPASS_PERMISSIONS_POLICY など) を介して有効にするまで非表示になっています。管理者は確認動作の制限や UI トグルのロックも可能です。
ライセンス – 本プロジェクトはオープンソースライセンスの下で公開されています(リポジトリの License セクションを参照)。
関連
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト