Chalk’s editor integrations provide diagnostics, navigation, and typechecking for Python features and resolvers, Chalk SQL resolvers, and Chalk configuration files in projects containing a chalk.yml or chalk.yaml file.

Run chalk init from your project root before opening the project in your editor. It writes project settings for supported editors and configures command-line typecheckers to not report spurious diagnostics. If you already have existing editor configurations, they are preserved for you to merge manually.

VS Code

Install the Chalk plugin from the Visual Studio Marketplace.

The first Chalk project you open downloads the language server for your platform. To update it later, open the Command Palette and run Chalk: Update Language Server.

JetBrains IDEs

The Chalk JetBrains plugin supports IntelliJ IDEA, PyCharm, DataSpell, and other commercial IntelliJ-based IDEs version 2025.3 and newer. Install Chalk from Settings → Plugins → Marketplace.

The plugin downloads the language server when you open the first Chalk file. Use Tools → Update Chalk Language Server to update it later.

Cursor

Install the Chalk plugin from Open VSX.

The first Chalk project you open downloads the language server for your platform. To update it later, open the Command Palette and run Chalk: Update Language Server.

Neovim

On Neovim 0.12 and newer, add the Chalk Neovim plugin to your init.lua with the built-in plugin manager:

vim.pack.add({
  { src = "https://github.com/chalk-ai/chalk-nvim" },
})
require("chalk").setup()

On Neovim 0.11, install it with lazy.nvim:

{
  "chalk-ai/chalk-nvim",
  config = function() require("chalk").setup() end,
}

The plugin downloads the language server the first time it opens a supported file in a Chalk project. Run :ChalkLspUpdate to update it later.

Zed

New projects created by chalk init configure Zed to install the Chalk extension automatically when you open the project. To install it manually, open the Extension Gallery with Cmd+Shift+X on macOS or Ctrl+Shift+X on Linux and Windows, search for Chalk, and select Install.

The extension downloads the language server when you open a Chalk project and selects Chalk as the Python language server.

Python language-server conflicts

Chalk is set up to be the only semantic and typechecking language server inside Chalk projects; do not run ty, pyright, or other Python typecheckers/LSPs in the same project, as they will produce spurious diagnostics. Chalk’s editor integrations do not affect Python tooling in non-Chalk projects.