Overview

logo

Use LLMs to enforce best practices across your codebase.

NPM Build Status MIT License Prettier Code Formatting Discuss on Twitter

GPTLint

A fundamentally new approach to code quality. Use LLMs to enforce higher-level best practices across your codebase in a way that takes traditional static analysis tools like eslint to the next level.

Features

  • ✅️ enforce higher-level best practices that are impossible with ast-based approaches
  • ✅️ simple markdown format for rules (example, spec)
  • ✅️ easy to disable or customize rules
  • ✅️ add custom, project-specific rules
  • ✅️ same cli and config format as eslint
  • ✅️ supports gptlint.config.js and inline overrides /* gptlint-disable */
  • ✅️ content-based caching
  • ✅️ outputs LLM stats per run (cost, tokens, etc)
  • ✅️ built-in rules are extensively tested w/ evals
  • ✅️ supports all major LLM providers and local models
  • ✅️ augments eslint instead of trying to replace it (we love eslint!)
  • ✅️ includes guidelines for creating your own rules
  • ❌ MVP rules are JS/TS only for now
  • ❌ MVP rules are single-file context only for now
  • ❌ MVP does not support autofixing for now

Demo

Here’s a demo of gptlint running on its own codebase:

Getting Started

👉

Check out the quick start to get started.