github jupyterlab/jupyter-ai v3.0.0rc0

latest release: v3.0.0rc1
pre-release4 hours ago

3.0.0rc0

We're excited to share the first release candidate for Jupyter AI v3.0. This release introduces support for:

  • Claude, Gemini, Kiro, and Mistral Vibe in Jupyter AI via the Agent Client Protocol (ACP),
    • (Codex, OpenCode, Goose are WIP)
  • A default set of JupyterLab tools for ACP agents (via jupyter_server_mcp and jupyter_ai_tools), and
  • Support for custom MCP servers in .jupyter/mcp_settings.json, allowing you to infinitely extend the capabilities of your agents in JupyterLab.

Getting started

Install the Jupyter AI RC pre-release via:

pip install jupyter-ai==3.0.0rc0

To add an agent, follow the installation instructions for the ACP agent you wish to use with Jupyter AI. We're working on improving this process to be more well-documented and automatic.

New features

  • Agent support via ACP: By using ACP, we are able to provide access to every frontier agent. The v3.0 official release will support the following agents out of the box: Claude, Codex, Gemini, Goose, Kiro, and OpenCode. Agents are automatically enabled when their required dependencies are installed.
  • [ACP] Real-time chat UI: Live-streaming agent responses with tool call status, reasoning traces, execution plans, and inline diff views for file edits.
  • [ACP] Tool call permissions: Agents request permission before performing actions like writing files or running terminal commands, giving you guardrails over agent behavior.
  • [ACP] File system and terminal access: Agents can read and write files and run terminal commands through the ACP client, with all operations subject to the permission system.
  • MCP server integration: MCP servers can now be defined in .jupyter/mcp_settings.json. You can use this to add custom MCP servers for domain-specific tools, resources, and prompts. These will be picked up by ACP agents automatically.
  • New Jupyter MCP server: jupyter_server_mcp lets agents update files and execute notebooks directly in your JupyterLab session. ACP agents have access to these tools automatically (and request permission before using them, of course).

What happened to Jupyternaut?

The jupyter_ai_jupyternaut package still exists but is no longer a required dependency. Its real-time notebook editing capabilities have been migrated into a new jupyter_ai_tools package, and are made available to all other ACP agents through jupyter_server_mcp.

You can still install Jupyternaut by running pip install 'jupyter-ai[jupyternaut]==3.0.0rc0'.

What happened to AI magic commands?

The magic commands now live in a new jupyter-ai-magic-commands package. Since AI agents are now capable of editing notebooks directly, we believe this is no longer necessary in the default experience. Keeping this package optional drastically reduces the number of dependencies required by Jupyter AI.

You can still install Jupyternaut by running pip install 'jupyter-ai[magics]==3.0.0rc0'.

Why ACP?

Rather than building and maintaining our own agent, Jupyter AI v3.0 focuses on integration. ACP is the open standard that connects coding agents to editors — the same way LSP standardized language server integration. By adopting it, JupyterLab joins Zed, JetBrains, VS Code, and neovim as a first-class ACP client, giving users access to the full ecosystem of ACP-compatible agents.

For the full background, see the v3.0 release plan.

Future direction

As we move towards the v3.0 official release, we will continue to iron out bugs we find during testing. We will also contribute substantial user, developer, and contributor documentation ahead of the v3.0 official release.

Changelog

(Full Changelog)

Enhancements made

Maintenance and upkeep improvements

Documentation improvements

Contributors to this release

The following people contributed discussions, new ideas, code and documentation contributions, and review.
See our definition of contributors.

(GitHub contributors page for this release)

@dlqqq (activity) | @krassowski (activity) | @srdas (activity) | @Zsailer (activity)

Don't miss a new jupyter-ai release

NewReleases is sending notifications on new releases.