---
title: How to fix Oxlint slowing down TypeScript in VS Code and Zed
url: https://roboin.io/article/en/2026/09/28/preventing-oxlint-from-slowing-down-typescript-tooling/
description: After I installed the Oxc extension in Zed and enabled the Oxlint
  language server, I ran into issues such as Oxlint diagnostics taking an
  excessive amount of time to update after code changes. After investigating, I
  found that Oxlint was, in effect, spawning a new TypeScript process for each
  character I typed, which caused these problems.
publishedDate: 2026-09-28T08:53:10.509Z
modifiedDate: 2026-09-28T08:53:10.509Z
thumbnail: https://roboin.io/api/og/en/2026/09/28/preventing-oxlint-from-slowing-down-typescript-tooling/
thumbnailAlt: 記事のサムネイル画像
thumbnailCaption: N/A
---

# How to fix Oxlint slowing down TypeScript in VS Code and Zed

## Symptoms

After installing the [Oxc extension](https://github.com/oxc-project/oxc-zed) in Zed and enabling the Oxlint language server, I encountered the following problems while editing code:

- Oxlint diagnostics took an unusually long time to update after code changes.
- TypeScript diagnostics from [typescript-ls](https://github.com/zed-extensions/tsgo) also took an unusually long time to update.
- After editing for a while, both Oxlint and TypeScript diagnostics stopped updating until I restarted the language servers.
- Vitest runs from the terminal became much slower.

## Cause

I found that Oxlint was starting a new TypeScript process for nearly every keystroke. The resulting processes consumed enough system resources to affect other development tools.

The problem occurs when a project uses type-aware linting and the editor runs the linter on every code change.

The large number of TypeScript processes comes from tsgolint, which Oxlint uses for type-aware linting. [The tsgolint developers are aware of the problem](https://github.com/oxc-project/oxc/issues/26613), and [users have reported the same behavior in VS Code](https://github.com/oxc-project/tsgolint/issues/878).

## Workarounds

A complete fix requires changes to tsgolint. For now, you can reduce the impact by changing your editor settings.

### Zed

In Zed, you can debounce diagnostic requests to reduce how often the editor requests diagnostics. The best interval depends on your hardware, but I use 1,000 ms on my machine.

With this setting, diagnostics will not update until at least 1,000 ms after you stop typing. Without the debounce, however, the issue described above caused diagnostics to take more than 10 seconds to update on my machine, so the delay is still an improvement.

```json
{
	  "diagnostics": {
	      "lsp_pull_diagnostics": {
		        "debounce_ms": 1000
				}
	  }
}
```

### VS Code

I have not tested this workaround in VS Code. VS Code does not appear to provide an equivalent debounce setting, so you can set `"oxc.lint.run": "onSave"` to run Oxlint only when you save a file.

```json
{
	  "oxc.lint.run": "onSave",
	  // If auto-save is enabled, add a delay to it.
	  "files.autoSave": "afterDelay",
	  "files.autoSaveDelay": 1000
}
```

## Verification details and sources

### Verification environment

- OS: Windows 11
- Editor: Zed 1.21.0
- Oxc extension: 0.4.8

### Verification details

I reproduced the issue with the Oxc extension in Zed and confirmed that adding a diagnostic debounce reduces its impact.

### Last verification date

2026-09-28T08:30:00.000Z

### Reference links

- [language server: \`run\` is ignored in pull diagnostic mode, so onSave clients lint on every keystroke · Issue #26613 · oxc-project/oxc](https://github.com/oxc-project/oxc/issues/26613)
- [Slow type-aware diagnostics in VSCode with large monorepo using TS project references · Issue #878 · oxc-project/tsgolint](https://github.com/oxc-project/tsgolint/issues/878)