<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Drift Zef</title>
    <description>The latest articles on DEV Community by Drift Zef (@driftapplied).</description>
    <link>https://dev.to/driftapplied</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3943091%2Feb364edc-6521-496b-9820-0b4fd26c9993.jpeg</url>
      <title>DEV Community: Drift Zef</title>
      <link>https://dev.to/driftapplied</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/driftapplied"/>
    <language>en</language>
    <item>
      <title>I kept seeing the same dumb mistakes in AI-generated code, so I built a local tool to catch them</title>
      <dc:creator>Drift Zef</dc:creator>
      <pubDate>Thu, 21 May 2026 01:26:44 +0000</pubDate>
      <link>https://dev.to/driftapplied/i-kept-seeing-the-same-dumb-mistakes-in-ai-generated-code-so-i-built-a-local-tool-to-catch-them-1kab</link>
      <guid>https://dev.to/driftapplied/i-kept-seeing-the-same-dumb-mistakes-in-ai-generated-code-so-i-built-a-local-tool-to-catch-them-1kab</guid>
      <description>&lt;p&gt;I've been using AI coding tools pretty heavily lately — mostly GROK fast code and some sonnet and haiku. The speed is incredible, and It's been fun to learn, but I started noticing the same patterns of mistakes showing up in the code.&lt;br&gt;
Not huge architectural disasters. Just the small, annoying things that are easy to miss when you're moving fast and building with AI:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bare &lt;code&gt;except:&lt;/code&gt; blocks that swallow every error&lt;/li&gt;
&lt;li&gt;Extremely generic function names like &lt;code&gt;process()&lt;/code&gt;, &lt;code&gt;handle()&lt;/code&gt;, or &lt;code&gt;execute()&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Code that confidently references imports or error paths that don't actually exist
These aren't hard to spot if you're carefully reviewing every line, but when you're accepting a lot of AI suggestions, they slip through more often than I'd like.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Another example
&lt;/h3&gt;

&lt;h1&gt;
  
  
  try:
&lt;/h1&gt;

&lt;h1&gt;
  
  
  result = db.execute(query)
&lt;/h1&gt;

&lt;h1&gt;
  
  
  return result
&lt;/h1&gt;

&lt;h1&gt;
  
  
  except:
&lt;/h1&gt;

&lt;h1&gt;
  
  
  return None
&lt;/h1&gt;

&lt;p&gt;This was generated code that would have silently hidden database failures in production. The tool caught it immediately.&lt;/p&gt;

&lt;p&gt;Why I built something.&lt;/p&gt;

&lt;p&gt;I got tired of catching the same classes of issues by hand, so I made a small, local CLI tool to do it for me.&lt;br&gt;
It's called DriftCode Auditor. It runs entirely on your machine (no code is sent anywhere). I used AI to build it and guide the entire process, but behind it all is a human being. DriftCode Auditor respects .gitignore, and is fast enough to run on real projects.&lt;br&gt;
It currently focuses on three main areas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy risks (hardcoded secrets, PII, etc.)&lt;/li&gt;
&lt;li&gt;Maintainability issues (long functions, generic names, missing error handling, etc.)&lt;/li&gt;
&lt;li&gt;Some basic architecture smells
The goal isn't to replace thoughtful code review. It's to act as a quick safety net for the obvious stuff that AI tends to generate.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;How to try it&lt;/p&gt;

&lt;p&gt;If you want to kick the tires:&lt;/p&gt;

&lt;p&gt;pipx install driftcode-auditor&lt;/p&gt;

&lt;p&gt;driftcode-auditor --path . --privacy --maintainability&lt;/p&gt;

&lt;p&gt;It works on any codebase and gives you a clear report of what it found.&lt;br&gt;
What I'm doing now&lt;br&gt;
I'm currently testing the tool with real users to figure out what's actually useful. I posted a thread on X earlier today sharing some of the patterns it's been catching.&lt;br&gt;
If you use AI coding tools regularly, I'd genuinely appreciate it if you tried it on something you've been working on and told me what it found (or missed). Even "it didn't catch anything" is useful feedback.&lt;/p&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/DriftApplied/driftcode-auditor" rel="noopener noreferrer"&gt;https://github.com/DriftApplied/driftcode-auditor&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Discussions (where people can share real examples): &lt;a href="https://github.com/DriftApplied/driftcode-auditor/discussions" rel="noopener noreferrer"&gt;https://github.com/DriftApplied/driftcode-auditor/discussions&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm also happy to take suggestions for new rules or improvements.&lt;/p&gt;

&lt;p&gt;Drift Zev&lt;br&gt;
DistortionApplied&lt;br&gt;
X &lt;a class="mentioned-user" href="https://dev.to/driftapplied"&gt;@driftapplied&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>showdev</category>
      <category>tooling</category>
    </item>
  </channel>
</rss>
