Every AI code documentation tool I looked at had the same problem: it sent your entire file to an LLM and asked for it back with comments added.

That means the model is rewriting your code. Every single line. Including the ones it wasn't supposed to touch.

I built devsplain to solve this. It adds JSDoc and inline comments to 22 programming languages using any LLM you choose — without touching a single line of your executable code. If it can't guarantee that, it aborts.

Here's the architecture decision that made that possible, and why the "obvious" solution would have destroyed the tool.

The Problem With Every Other Tool