Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>AI TODO Hunter — Resolve TODOs & FIXMEs with OpenRouterNew to Visual Studio Code? Get it now.
AI TODO Hunter — Resolve TODOs & FIXMEs with OpenRouter

AI TODO Hunter — Resolve TODOs & FIXMEs with OpenRouter

Ciro Cesar Maciel

| (1) | Free
AI agent that resolves TODO and FIXME comments. Scans the workspace, lists every hit, writes the implementation. Any model on OpenRouter — GPT-5, Claude Sonnet, Gemini, DeepSeek. Pay-per-token.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

AI TODO Hunter

AI TODO Hunter for VS Code

Stop letting // TODO comments rot. Scan the whole workspace, pick one, and let an AI agent resolve it in-place.

Marketplace version Installs Rating OpenRouter Proprietary

By Ciro Cesar Maciel - one of a series of small, sharp VS Code tools.


AI TODO Hunter scans your workspace for every TODO, FIXME, XXX, and HACK comment, groups them in a dedicated VS Code side-bar view, and lets you resolve any item with an AI agent powered by OpenRouter.

It is not a chat window. It is not another vague "AI assistant" panel. It is a concrete workflow:

scan workspace -> choose TODO -> AI reads surrounding code -> preview -> apply

You keep control. The extension finds the debt. The model writes the patch. VS Code shows you the result before anything touches your file.

The problem

Every mature codebase has a hidden second backlog:

// TODO: handle empty state
// FIXME: this breaks when the token expires
// HACK: temporary workaround until billing v2
// XXX: this needs a proper parser

Those comments are usually honest. They point to real risk, missing behavior, rushed decisions, and unfinished cleanup.

The problem is that nobody comes back.

AI TODO Hunter turns those comments into an actionable queue.

What it does

  • Scans the workspace for TODO, FIXME, XXX, and HACK comments.
  • Supports many file types: TypeScript, JavaScript, Python, Go, Rust, Ruby, PHP, Java, Kotlin, Swift, C/C++, C#, Scala, shell, SQL, Vue, Svelte, Astro, Markdown, and more.
  • Groups findings in the Activity Bar so you can see technical debt by file.
  • Jumps straight to source when you click a TODO in the tree.
  • Resolves one TODO at a time by sending the relevant surrounding code to the model you choose.
  • Works from the editor with Resolve TODO at Cursor with AI.
  • Shows confirmation before mutation: apply the result or inspect a diff first.
  • Uses OpenRouter BYOK: one API key, hundreds of models, pay-per-token.
  • Keeps scanning local: nothing leaves your machine until you explicitly ask AI to resolve an item.

Why it is different

Usual AI assistant AI TODO Hunter
Starts with a blank chat box Starts with real TODOs in your code
You explain what to fix The comment already points to the work
Easy to forget context Pulls surrounding source automatically
Hard to track progress Side-bar list shows the actual queue
Can overwrite too much One TODO, one preview, one controlled apply

This is not "ask the AI something." This is "clear the TODO backlog."

Core workflow

  1. Open the TODO Hunter icon in the Activity Bar.
  2. Click Scan Workspace for TODOs.
  3. Pick a TODO/FIXME from the tree.
  4. Click the sparkle action or run Resolve TODO with AI.
  5. The extension sends the selected comment plus surrounding source to your chosen OpenRouter model.
  6. Review the generated change.
  7. Apply it, inspect the diff, or discard it.

Example

Before:

export function getDisplayName(user?: User) {
  // TODO: handle empty user names
  return user?.name.trim() || user?.email || 'Unknown';
}

Run TODO Hunter: Resolve TODO with AI.

Possible result:

export function getDisplayName(user?: User) {
  const name = user?.name?.trim();
  if (name) return name;

  const email = user?.email?.trim();
  if (email) return email;

  return 'Unknown';
}

The exact patch depends on the model and surrounding code. You always review before applying.

Supported tags

By default, TODO Hunter tracks:

Tag Meaning
TODO Work intentionally left for later
FIXME Known bug or broken behavior
XXX Suspicious, risky, or needs attention
HACK Temporary workaround that deserves cleanup

You can customize the list with todoHunter.tags.

Supported files

The default scan includes common source and documentation files:

ts, tsx, js, jsx, mjs, cjs, py, go, rs, rb, php, java, kt, swift,
c, cc, cpp, h, hpp, cs, scala, sh, bash, zsh, sql, vue, svelte,
astro, md

It skips noisy generated folders by default:

node_modules, dist, build, out, .git, coverage, .next, .nuxt,
vendor, __pycache__

Both lists are configurable.

Bring your own model

TODO Hunter uses OpenRouter so you can choose the model that fits the task and budget.

Recommended starting points:

Model Best for
Claude Sonnet 4.6 Default. Strong code reasoning and careful edits
GPT-5.1 Codex OpenAI-style coding, refactors, implementation details
Gemini 3.5 Flash Cheap, fast, good for simple TODOs
DeepSeek V3.2 Very low cost, solid for straightforward code changes
Qwen3 Coder Plus Code-heavy tasks and implementation cleanup

The settings page includes a curated shortlist. The command TODO Hunter: Select Model opens the live model list from OpenRouter.

Commands

Command What it does
TODO Hunter: Scan Workspace for TODOs Rescans files matching todoHunter.includeGlobs
TODO Hunter: Resolve TODO with AI Resolves the TODO selected in the side-bar
TODO Hunter: Resolve TODO at Cursor with AI Resolves the TODO on the current editor line
TODO Hunter: Select Model Opens the live OpenRouter model picker
TODO Hunter: Set OpenRouter API Key Prompts for your sk-or-... key

Settings

Setting Default Description
todoHunter.openRouterApiKey empty Your OpenRouter API key
todoHunter.model anthropic/claude-sonnet-4.6 Model slug used for code generation
todoHunter.includeGlobs common code/doc extensions Files to scan
todoHunter.excludeGlobs generated/dependency folders Folders to skip
todoHunter.tags ["TODO", "FIXME", "XXX", "HACK"] Comment tags to track, case-insensitive
todoHunter.contextLines 60 Source lines sent before/after the selected TODO

Privacy

Scanning is local.

Your code is sent to OpenRouter only when you explicitly ask TODO Hunter to resolve a specific item. The request includes:

  • the TODO/FIXME comment;
  • surrounding source code based on todoHunter.contextLines;
  • enough file context for the model to propose a patch.

From OpenRouter, the request is routed to the model provider you selected, such as Anthropic, OpenAI, Google, DeepSeek, Meta, Mistral, Qwen, or xAI.

Nothing is sent during normal scanning. Nothing is sent just because the side-bar is open.

Safety model

TODO Hunter is intentionally narrow:

  • It works on one TODO at a time.
  • It sends bounded context, not your whole repository.
  • It asks before applying changes.
  • It lets you inspect the result before accepting it.
  • It is designed for cleanup tasks, missing edge cases, small implementations, and localized fixes.

For large architectural rewrites, use a full coding agent. For the TODO that has been sitting in one file for six months, use this.

Setup

  1. Install the extension.
  2. Create an OpenRouter API key.
  3. Run TODO Hunter: Set OpenRouter API Key.
  4. Run TODO Hunter: Select Model or keep the default.
  5. Open the TODO Hunter Activity Bar view and scan the workspace.

Development

From the repository root:

npm install
npm run build -w apps/todo-hunter

Debug from VS Code:

Run and Debug -> Debug: todo-hunter -> F5

Package locally:

npm run package -w apps/todo-hunter

Build every extension in the monorepo:

npm run build
npm run package:all

Publishing

This extension is packaged with vsce:

npm run package -w apps/todo-hunter

To publish from the app directory:

cd apps/todo-hunter
npx vsce publish --no-dependencies

The publisher is ciro-maciel. The Marketplace item ID is:

ciro-maciel.ciro-maciel-todo-hunter

Marketplace metadata

Field Value
Extension ID ciro-maciel.ciro-maciel-todo-hunter
Package name ciro-maciel-todo-hunter
Display name AI TODO Hunter - Resolve TODOs & FIXMEs with OpenRouter
Publisher ciro-maciel
Categories Machine Learning, AI, Linters, Other
License Proprietary
Runtime VS Code ^1.90.0
Model provider OpenRouter

License

See LICENSE.


Built by Ciro Cesar Maciel. Sibling extensions: AI Commit Message Generator, Env Var Detective, AI Error Message Humanizer, Regex Whisperer, Stack Trace Triage, Assistencia Dev Tracker.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft