Summary
This AI code checker scans a pasted function or file against four real, rule-based signals: functions over 40 lines, nesting past 4 levels deep, TODO/FIXME density, and risky calls like JSON.parse or fetch left without a try/catch. It returns a 0-100 score with a line-by-line breakdown of what was deducted and why, entirely in your browser. No account, no upload, no black-box AI grading, just four checks any staff engineer would run by eye.
An AI Code Checker That Scores Real Red Flags, Not Vibes
Paste a function or file. Get a 0-100 score built from four checks a staff engineer would run by eye: function length, nesting depth, TODO backlog, and error handling, calculated live in your browser as you type.

Four checks, no black box
Structure: length and nesting
Functions are flagged past 40 lines, matching ESLint's own max-lines-per-function default of 50 with some margin. Nesting depth is tracked by brace counting for curly-brace languages, or an indentation-depth fallback for Python-style code, and flagged past 4 levels deep, the point most style guides call unreadable.
Error handling
The scanner looks for risky calls: JSON.parse, fetch, await, .then, execSync, requests., os.system. Then it checks whether a try/catch exists anywhere in the pasted code. Risky call with no guard nearby means a deduction, not a free pass.
Housekeeping
TODO, FIXME, XXX, and HACK markers are counted and normalized per 100 lines of code. One or two in a file is normal engineering. A dense backlog of them is a signal the file needs a pass before it ships, not after.
Why these four checks, and not a real linter
ESLint, pylint, and their equivalents parse an abstract syntax tree, which is why they can catch unused variables, unreachable branches, and type mismatches. This tool doesn't do that. It's a text scanner you can run on a snippet with no build step, no config file, and no install, useful for the ten seconds between finishing a function and opening a pull request. The tradeoff is honest: fewer, coarser checks, computed transparently, versus a real static analyzer's deeper but slower setup. If a team already runs ESLint or pylint in CI, keep running it. This tool is for the gap before that, when code isn't in a repo yet.
Questions about the score
Is this AI code checker actually free?
Does my code get uploaded anywhere?
What counts as an AI code checker here, versus a real linter?
Which languages does it work with?
Why did a function I think is clean get flagged?
Where do the thresholds (40 lines, depth 4, and so on) come from?
Can this replace a code review?
My score is 100 but the code still feels messy. Is the tool wrong?
Does pasting a partial snippet skew the score?
This checks structure. CodebaseChat answers the harder question.
Ask your codebase anything in plain language: where auth is wired, why a function exists, what calls what across repos. No grep required.