Blinky is an open-source, VSCode-oriented AI debugging agent that uses an LLM to help identify and fix backend code errors. Inspired by SWE-agent, its core agent loop is ported from SWE-agent.
In terms of purpose, Blinky focuses on bug localization and fixing in real-world backend systems. The project states that it focuses on backend systems in order to optimize the user experience for a specific development stack; backend bugs are usually easier to reproduce programmatically and can be expressed in text, making them convenient to feed to most LLMs. It plans to expand to other development stacks in the future.
In terms of main capabilities, Blinky combines the VSCode API, the Language Server Protocol (LSP), and print-statement debugging to triangulate and address bugs. Building on SWE-agent's core ideas, it extends the agent-computer interface with navigation tools: it uses VSCode's LSP to implement GoToDefinition and GetAllReferences to efficiently traverse the codebase; it also adds GetFilesRelevantToEndpoint to better navigate backend systems. It edits files using a "match and replace" approach rather than using start line numbers, end line numbers, and replacement text; this technique requires the agent to generate the original text with line numbers, using the redundancy between line numbers and text content to catch hallucinations and indentation errors, and helps generate replacement text with correct indentation. The Verify tool allows the agent to run user-specified reproduction steps, and the agent needs to iterate debugging until the tests in the reproduction steps pass. Verify also enables the agent to use the execution feedback of print statements. Verify is similar to the reproduce.py created by SWE-agent.
In terms of usage, the Blinky VSCode extension needs to be installed from the VSCode Marketplace. On first run, it prompts for an OpenAI API key, and the key is stored in the local VSCode configuration for subsequent calls to the OpenAI server. After installation, click the ghost icon in the sidebar to enter the chat interface; describe the bug to fix in the chat box; specify the reproduction steps that trigger the bug (optional but recommended, because this allows the agent to obtain runtime information for debugging); make sure no other terminal process may have a port conflict with the build and test commands; start the agent. Feedback can be provided at any time while the agent is running, and this feedback will be taken into account by the agent in subsequent steps; after the agent finishesA UI will be displayed for the user to accept or reject the changes it makes.
For local development, the repository provides a quick start: begin by running npm run install:all, then press F5 or run the Debug: Start Debugging command from the command palette (⇧⌘P).
Regarding common issues, common reasons Verify runs slowly include: the build/run process is already running in the terminal, causing a port conflict (the solution is to terminate the process running in the local terminal); Verify needs to wait for the build/run step to complete before running the test step, and the build step is considered complete when it exits or the logs match certain patterns in src/tools/verifier.ts. If the build step logs do not match, you can click "Advanced Settings" under "Specify Reproduction Steps" and fill in "Build Ready Text" to configure it yourself; the build process itself takes a long time, which is difficult to avoid and has no simple solution. Regarding prompt customization, since the repository is open source, you can edit the prompts in src/config/default.yaml and rebuild the extension; currently there is no easy way for end users to edit prompts without rebuilding, and it can be added to the roadmap if there is enough demand.
Regarding its relationship with SWE-agent, Blinky is deeply inspired by the work of the SWE-Agent team and borrows from their results, with the core agent loop ported from theirs; at the same time, it extends their core insight about building a good agent-computer interface by adding the aforementioned LSP navigation tools and GetFilesRelevantToEndpoint; second, it aims to embed SWE-agent into VSCode so that developers can use it during development and provide feedback midway through the extension UI; it also experimented with "match and replace" techniques to edit files.
Regarding limitations and known issues, it currently only targets backend systems, with plans to expand to other development stacks only in the future; the supported models are currently mainly OpenAI, and the roadmap mentions support for more models (such as LLaMA 3 and Claude); as the agent progresses, the prompt becomes too long, causing LLM inference to slow down and Blinky to become more prone to confusion. The roadmap mentions stronger pruning techniques, chunking and summarizing history into relevant key points, improving embedding-based context discovery, stateful representation of file contents, and adding comprehensive unit and end-to-end tests; automated reproduction step creation is also on the roadmap, because creating reproduction steps is tedious and time-consuming and increases usage friction. Currently, it is not possible for an end user to edit prompts without rebuilding the extension.
Regarding licensing and community, all code in the repository is open source (MIT license). You can ask questions and learn about Blinky development updates in the Discord community; you can submit bug reports and feature requests on GitHub; if you are interested in contributing to the codebase, you can submit issues and pull requests.