
Iterating with shadow workspaces · Cursor
9/2/2024
Designed and implemented the 'shadow workspace' concept to allow AI agents to iterate on code within a development environment. This involves creating an independent, hidden instance of the editor to process AI edits and gather LSP feedback (lints, go-to-definition) without impacting the user's active editing session. Explored and discarded simpler approaches like TextModel copying due to independence issues. The current implementation uses a hidden Electron window and inter-process communication (IPC) between renderer and extension host processes, with plans to leverage gRPC and buf for communication. Also discussed the future goal of a kernel-level folder proxy for enhanced performance and isolation.