What problem does it solve? Adding or modifying language features (code actions, inlay hints, formatting, folding, semantic tokens) in this editor requires changes across four process boundaries—renderer, main, extension host, and the spawned LSP server—and missing any one link compiles fine but silently breaks the provider at runtime. ## Core Features & Use Cases - Data-flow mapping: Identifies which of the four data flows (provider calls, document sync, diagnostics push, provider registration) a change belongs to before editing code. - Task playbooks: Step-by-step file lists for adding a new provider type, extending provider payloads, tuning the LSP client, debugging diagnostics, and migrating a new language into a built-in plugin modeled on extensions/typescript. - Pitfall catalog: Documents twelve known failure modes such as KEEP IN SYNC bridge interfaces, 0-based vs 1-based positions, diagnostic owner mismatches, and virtual-scheme documents leaking to the LSP server. - Use Case: When adding a code action provider for TypeScript, follow the seven-step checklist covering rpc.ts protocol, extension-api, apiFactory, extensionService, renderer proxy, MainThreadLanguages, and the plugin's lspClient. ## Quick Start Ask the agent to add a new language provider such as inlay hints to the built-in TypeScript plugin and follow the data-flow checklist it produces.