Guides and deep dives.
How-to guides, pattern breakdowns, and project updates.
How to Add a Quality Gate to Your AI Agent in 2 Minutes
Run a baseline, add a reproducible GitHub Actions job, and introduce a quality threshold without blocking the team on legacy findings.
Read more →Swallowed Exceptions: How Silent Failures Reach Production
Empty catches and log-and-continue paths can leave systems in an unexpected state. Learn how to review, test, and detect swallowed exceptions.
Read more →SonarQube and aislop: Where Their AI Code Gates Differ
SonarQube offers broad AI Code Assurance. aislop is a focused local scanner for generated-code hygiene. Compare their overlap, differences, and fit.
Read more →High-Quality AI Coding Standards: 10 Rules Teams Can Enforce
Ten enforceable standards for AI-assisted code: scope, small patches, validation, error handling, dependencies, tests, complexity, cleanup, and handoff.
Read more →Vibe coding, done right
Letting the agent drive is a cheat code. It is also how you ship five unrelated files full of slop at 2am. Here is how we vibe-code without shipping the slop.
Read more →AGENTS.md is a sign on the wall. Agents don't read signs.
AGENTS.md is not enough. You have to hold your agent accountable. AGENTS.md is the WHAT. aislop rules are the HOW. aislop ci is the GATE. aislop fix --agent is the LOOP. Four layers, none optional.
Read more →Stop cleaning up after your coding agent
Your agent writes code. You clean up. That is backwards.
Read more →Nobody reads code anymore. Write for the linter.
Median score across 25 real projects was 15 out of 100. That is what code looks like when nobody is reading it. The linter is the reader now.
Read more →aislop v0.7.0. Config inheritance, public score badge, security floor
extends: lets project configs inherit a parent and override only what they need. The public score badge puts your live aislop score in any README. A postcss security floor closes the only vulnerability aislop's own scan flagged on itself.
Read more →If your function needs 80 lines, your agent gave up. If your file needs 400, it never started.
If your function is more than 80 lines, your agent is doing something wrong. If your file is more than 400, same story. We found a 981-line component in the wild.
Read more →