Apr 2026

AI Control Engine: making AI coding safe enough to trust

Most AI coding tools work like a black box. You describe something, they change your code, you hope it is right. I wanted something different. Every change explainable, reviewable, and reversible before it touches a real codebase.

AI Control Engine is a VS Code extension. You describe a task in plain language. It runs that task through a strict, sequential pipeline before a single line of code changes. Every phase has to pass before the next one starts.

Here is the pipeline. Claude produces a structured plan: exactly which files change and why. That plan is validated against a schema. Every file path is checked to confirm it lives inside your workspace. Claude then generates a diff for the exact changes. The diff is validated for format integrity. The workspace is checked to confirm it is a git repository. Then the patch is applied via git apply, leaving a clean, reviewable working tree change.

No auto-commits. No surprises. The change sits in your working tree, visible in your diff view, waiting for you to decide what to do with it. You stay in charge.

Where it stands

The full pipeline is implemented and compiling. Every phase exists as running TypeScript inside the extension. The extension loads, commands appear in the palette, the API key stores securely, and Claude is being called with real prompts against the Anthropic API.

Current behavior: describe a task, Claude plans it, the gates validate it, Claude diffs it, git applies it. Working tree changes appear. No commit is made.

What is left before launch

Three things are blocking release. File context injection: right now Claude generates diffs without seeing the actual contents of the files it is diffing. That needs to change. Prompt quality: the prompts need tightening so Claude returns schema-valid JSON reliably, not just sometimes. And one real end-to-end run on an actual codebase to surface edge cases before anyone else uses it.

After that: a rollback command, a dedicated output panel instead of the debug console, and a simple task history log. Then it ships.

About three days of focused work.

I am building this because I have spent years deploying AI infrastructure inside enterprises. I know what breaks, and I know what happens when a tool applies changes it was never asked to make. This is my answer to that problem.

Dheeraj Dama · dheerajdama@hotmail.com