LmCast :: Stay tuned in

Show HN: AISlop, a CLI for catching AI generated code smells

Recorded: May 29, 2026, 2 p.m.

Original Summarized

GitHub - scanaislop/aislop: Catch the slop AI coding agents leave in your code. 40+ rules, 7 languages, sub-second, deterministic, no LLM. MIT. · GitHub

Skip to content

Navigation Menu

Toggle navigation

Sign in

Appearance settings

PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersView all resourcesOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorGitHub StarsArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback


We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

scanaislop

/

aislop

Public

Notifications
You must be signed in to change notification settings

Fork
5

Star
38

Code

Issues
0

Pull requests
0

Discussions

Actions

Projects

Security and quality
0

Insights

Additional navigation options

Code

Issues

Pull requests

Discussions

Actions

Projects

Security and quality

Insights


scanaislop/aislop

Use this GitHub action with your projectAdd this Action to an existing workflow or create a new oneView on Marketplace mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History107 Commits107 Commits.aislop.aislop  .github.github  assetsassets  docsdocs  examplesexamples  scriptsscripts  srcsrc  teststests  .editorconfig.editorconfig  .gitattributes.gitattributes  .gitignore.gitignore  .nvmrc.nvmrc  AGENTS.mdAGENTS.md  CHANGELOG.mdCHANGELOG.md  CODE_OF_CONDUCT.mdCODE_OF_CONDUCT.md  CONTRIBUTING.mdCONTRIBUTING.md  LICENSELICENSE  README.mdREADME.md  SECURITY.mdSECURITY.md  action.ymlaction.yml  biome.jsonbiome.json  knip.jsonknip.json  package.jsonpackage.json  pnpm-lock.yamlpnpm-lock.yaml  pnpm-workspace.yamlpnpm-workspace.yaml  tsconfig.jsontsconfig.json  tsdown.config.tstsdown.config.ts  vitest.config.tsvitest.config.ts  View all filesRepository files navigationREADMECode of conductContributingMIT licenseSecurityaislop
Catch the slop AI coding agents leave in your code.

The patterns Claude Code, Cursor, Codex, and OpenCode leave behind: narrative comments above self-explanatory code, swallowed exceptions, as any casts, hallucinated imports, duplicated helpers, dead code, todo stubs, oversized functions. Tests pass. Lint passes. The code rots anyway.
aislop catches them. 40+ rules across 7 languages (TS/JS, Python, Go, Rust, Ruby, PHP, Java). Scores every change 0–100. Sub-second. Deterministic — no LLM in the runtime path, same code in, same score out. MIT-licensed, free CLI.
Quick start
npx aislop scan
No install needed. Works on any project. Get your score in seconds.
npx aislop fix # auto-fix issues
npx aislop fix -f # aggressive fixes (deps, unused files)
npx aislop ci # CI mode (JSON + gate)
npx aislop hook install --claude # per-edit hook
Public badge: Show your score on your README
[![aislop](https://badges.scanaislop.com/score/<owner>/<repo>.svg)](https://scanaislop.com)
Run npx aislop badge to auto-generate. Free at scanaislop.com.
See it in action
Scan

Installation
# Run without installing
npx aislop scan

# npm
npm install --save-dev aislop

# yarn
yarn add --dev aislop

# pnpm
pnpm add -D aislop

# Global
npm install -g aislop
Also available as @scanaislop/aislop on GitHub Packages.

Usage
Scan
npx aislop scan # current directory
npx aislop scan ./src # specific directory
npx aislop scan --changes # changed files from HEAD
npx aislop scan --staged # staged files only
npx aislop scan --json # JSON output
Exclude files: node_modules, .git, dist, build, coverage excluded by default. Add more in .aislop/config.yml:
exclude:
- "**/*.test.ts"
- src/generated
Or via CLI: npx aislop scan --exclude "**/*.test.ts,dist"
Extend config: Project config can extend a parent:
# .aislop/config.yml
extends: ../../.aislop/base.yml
ci:
failBelow: 80 # override specific keys
Fix
Auto-fix what's mechanical (formatters, unused imports, dead code). For issues that need context, hand off to your agent with full diagnostic info.
npx aislop fix # safe auto-fixes
npx aislop fix -f # aggressive: deps, unused files
Hand off to agent
When auto-fix can't solve it, pass the remaining issues to your coding agent with full context:
npx aislop fix --claude # Claude Code
npx aislop fix --cursor # Cursor (copies to clipboard)
npx aislop fix --gemini # Gemini CLI
npx aislop fix --codex # Codex CLI
# Also: --windsurf, --amp, --aider, --goose, --opencode, --warp, --kimi, --antigravity, --deep-agents, --vscode
npx aislop fix --prompt # print prompt (agent-agnostic)
Install hook
Runs after every agent edit. Feedback flows back immediately.
npx aislop hook install --claude # Claude Code
npx aislop hook install --cursor # Cursor
npx aislop hook install --gemini # Gemini CLI
npx aislop hook install # all supported agents
npx aislop hook install claude cursor # specific agents
Runtime adapters (scan + feedback): claude, cursor, gemini.
Rules-only (agent reads rules): codex, windsurf, cline, kilocode, antigravity, copilot.
Quality-gate mode: Blocks if score regresses below baseline.
npx aislop hook install --claude --quality-gate
npx aislop hook baseline # re-capture baseline
npx aislop hook status # list installed
npx aislop hook uninstall --claude # remove
Docs: /docs/hooks
MCP server
Expose aislop as MCP tools for Claude Desktop, Cursor, Codex:
// ~/.cursor/mcp.json or Claude Desktop config
{
"mcpServers": {
"aislop": {
"command": "npx",
"args": ["-y", "aislop-mcp"]
}
}
}
Tools: aislop_scan, aislop_fix, aislop_why, aislop_baseline
CI
npx aislop ci # JSON output, exits 1 if score < threshold
Other commands
npx aislop init # create .aislop/config.yml
npx aislop init --strict # enterprise-grade gate: all engines, typecheck, failBelow 85
npx aislop rules # list rules
npx aislop badge # print badge URL
npx aislop # interactive menu
Docs: commands

CI integration
Pre-commit
npx aislop scan --staged
GitHub Actions
Run npx aislop init and accept the workflow prompt, or add manually:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npx aislop@latest ci .
Composite action:
- uses: actions/checkout@v4
- uses: scanaislop/aislop@v0.8
Quality gate
Set minimum score in .aislop/config.yml:
ci:
failBelow: 70
aislop ci exits 1 when score < threshold. Docs: CI/CD

For teams
scanaislop is the hosted platform for teams:

PR gates with score thresholds
Standards hierarchy (org → team → project)
Dashboards and agent attribution
Visual rules manager

Same engines, same scores. CLI is MIT-licensed. Learn more →

Why aislop
AI coding tools generate code that compiles and passes tests but ships with patterns no engineer would write. aislop gives you one score, one gate, and auto-fixes what it can.

One score: 0-100, enforced in CI. Weighted so sloppy patterns hit harder than style noise.
Auto-fix first: Clears formatters, unused imports, dead code mechanically. Hands off the rest to your agent with full context.
Deterministic: Regex + AST + standard tooling. No LLMs, no API calls. Same code in, same score out.
Zero-config start: npx aislop scan works on any repo. Add .aislop/config.yml to tune.

What it catches
Six deterministic engines run in parallel:

Engine
What it checks
How

Formatting
Code style consistency
Biome, ruff, gofmt, cargo fmt, rubocop, php-cs-fixer

Linting
Language-specific issues
oxlint, ruff, golangci-lint, clippy, expo-doctor

Code Quality
Complexity and dead code
Function/file size limits, deep nesting, unused files/deps (knip), AST-based unused-declaration removal

AI Slop
AI-authored code patterns
Narrative comments, trivial comments, dead patterns, unused imports, as any, console.log leftovers, TODO stubs, generic names

Security
Vulnerabilities and risky code
eval, innerHTML, SQL/shell injection, dependency audits (npm/pip/cargo/govulncheck)

Architecture
Structural rules (opt-in)
Custom import bans, layering rules, required patterns

See the full rules reference.

Docs
Installation · Commands · Rules · Config · Scoring · CI/CD · Telemetry
Community
Discussions for questions, rule requests, and false-positive triage · Issues for bugs
Contributing
See CONTRIBUTING.md. AI assistants: AGENTS.md.
Acknowledgments
Built on: Biome, oxlint, knip, ruff, golangci-lint, expo-doctor
Contributors

@heavykenny
@myke-awoniran
@yashrajoria

Auto-updated by .github/workflows/contributors.yml. Link commit email or add to .github/contributors-overrides.json.
License
MIT

About

Catch the slop AI coding agents leave in your code. 40+ rules, 7 languages, sub-second, deterministic, no LLM. MIT.

scanaislop.com

Topics

cli

devops

typescript

tools

ai

linter

static-analysis

pre-commit

astro

developer-tools

code-review

code-quality

quality-gate

github-actions

ai-slop

ai-slop-detection

Resources

Readme

License

MIT license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy

Uh oh!

There was an error while loading. Please reload this page.


Activity

Custom properties
Stars

38
stars
Watchers

0
watching
Forks

5
forks

Report repository

Releases
25

v0.9.4

Latest

May 28, 2026


+ 24 releases

Packages
0

 

 

 

Uh oh!

There was an error while loading. Please reload this page.


Contributors

Uh oh!

There was an error while loading. Please reload this page.


Languages

TypeScript
99.3%

JavaScript
0.7%

Footer

© 2026 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Community

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

The aislop project addresses the issue of code quality degradation resulting from AI coding agents, which often produce code that passes automated tests and linting but contains suboptimal patterns. The core premise of aislop is to catch this "slop" by applying over forty rules across seven programming languages, offering a deterministic and sub-second analysis without relying on large language models during the runtime of the check. This system is licensed under the MIT license and is available via a free command-line interface.

The functionality centers around scanning code to assign a quality score between zero and one hundred, which is enforced in continuous integration pipelines. The system operates using six parallel deterministic engines that inspect various aspects of the codebase. These engines are specifically designed to check for code style consistency through tools like Biome and ruff, language-specific issues handled by tools such as oxlint and golangci-lint, code quality metrics including function and file size limits and the identification of dead code using knip, pattern recognition of AI-authored issues like narrative comments and dead patterns, security vulnerabilities, and architectural rules.

The process is operationalized through several command-line utilities. Users can initiate a scan by simply running aislop scan on a directory or specific files, optionally excluding common directories like node_modules or build artifacts via configuration file modifications. A key feature is the ability to automatically fix mechanical issues, such as formatting inconsistencies, unused imports, and dead code, through commands like aislop fix and more aggressive options. For complex issues that cannot be resolved automatically, the system provides mechanisms for handing off the remaining diagnostic information to specific coding agents, such as Claude, Cursor, Gemini, or Codex, allowing the agent to receive full context for targeted remediation.

The system supports deep integration into the development workflow through hooks that execute after agent edits, providing immediate feedback. Furthermore, quality gate mode allows projects to fail builds if the calculated score drops below a predefined threshold, linking the quality assessment directly to CI/CD processes. The project also exposes tools for setting up server functionality, such as an MCP server, allowing the system to interface with external agent configurations. Beyond individual project use, the hosted platform extends this capability to teams, offering a broader structure for managing quality through standards hierarchies, dashboards, and accountability for agent contributions. Ultimately, aislop aims to provide a unified, automated quality enforcement layer that tackles the inherent stylistic and structural sloppiness introduced by AI assistants.