VSCode Extension logo

VSCode Extension

Free

AI Debugging Agent for VSCode

FreeFree tier
Inputs: textOutputs: code, text
Type
Open Source

About VSCode Extension

Blinky is an open-source AI debugging agent for VSCode that leverages large language models (LLMs) to identify and fix backend code errors. Inspired by SWE-agent, it integrates with the VSCode API, Language Server Protocol (LSP), and print statement debugging to triangulate and address bugs in real-world backend systems. Users provide a bug description and repro steps, then Blinky autonomously navigates the codebase, proposes fixes, and allows interactive feedback during execution. Changes can be accepted or rejected through a dedicated UI. The tool stores the OpenAI API key locally in VSCode config.

Key Features

Uses LLMs (OpenAI API) to identify and fix backend code errors
Integrates with VSCode API and Language Server Protocol (LSP) for codebase navigation
Employs print statement debugging to triangulate bugs
Match and replace editing technique to reduce hallucination and indentation errors
Allows user feedback during agent execution for iterative improvement
Provides UI to accept or reject code changes made by the agent
Stores OpenAI API key locally in VSCode config
Inspired by SWE-agent with additional navigation tools (GoToDefinition, GetAllReferences)

Pros & Cons

Pros
  • Open-source and free to use
  • Directly integrated into VSCode development workflow
  • Interactive feedback loop allows developers to guide the agent
  • Match and replace technique reduces false edits from LLMs
  • Leverages LSP for efficient codebase navigation
Cons
  • Requires an OpenAI API key (no built-in free tier for LLM calls)
  • Currently only supports OpenAI models (no Claude or LLaMA yet)
  • Repro step creation is tedious and increases friction (noted in roadmap)
  • Long agent history can slow inference and cause confusion (roadmap acknowledges need for better filtering)

Best For

Debugging backend code errors in real-world systemsAssisting developers during active development by autonomously fixing bugsReducing time spent on manual debugging and code inspection

FAQ

How is Blinky related to SWE-agent?
Blinky was heavily inspired by and borrowed from SWE-agent. It ported the core agent loop and extended it with additional navigation tools such as GoToDefinition and GetAllReferences using VSCode's LSP, and GetFilesRelevantToEndpoint for backend navigation. It also embedded SWE-agent within VSCode to allow developers to provide feedback during development.
Why do you need match and replace editing and how does it work?
As of May 2024, SOTA LLMs struggle with making big edits, causing multiple wasted iterations. The match and replace technique forces the agent to generate the original text prepended with line numbers. The redundancy of line numbers and text content helps catch hallucination and bad indentation errors.