ai-code-enforcer
v1.0.1
Published
An AI-powered, AST-based architectural and style enforcer for TypeScript and React projects.
Readme
🚀 AI Code Enforcer
An advanced, AI-powered, AST-based architectural and style enforcer for TypeScript, React, and Next.js projects.
Unlike traditional linters that use simple regex, AI Code Enforcer leverages ts-morph to parse your code into a full Abstract Syntax Tree (AST), enabling high-fidelity structural analysis and automated refactoring.
🌟 Key Features
- AST-Based Rules: Precise detection of naming conventions, component size, and async error handling.
- Cross-File Duplicate Logic Detection: Identify redundant functional patterns across your entire codebase.
- AI-Powered Enrichment: Get sophisticated refactoring and performance suggestions from GPT-4o-mini (Optional).
- Automated Refactoring (
--fix): Safely rename variables and functions project-wide using AST-safe transformations. - Next.js Optimized: Built-in rules for React and Next.js project structure best practices.
- Highly Configurable: Control rules and severity levels via
ai-enforcer.config.json. - Developer First: Clean CLI interface with grouped results and actionable suggestions.
📦 Installation
# Install globally
npm install -g ai-code-enforcer
# Or run instantly via npx
npx ai-code-enforcer scan .🛠 Usage
Basic Scan
ai-code-enforcer scan .Auto-Fix Mode
# Automatically fix naming issues project-wide with full AST safety.
# A backup is automatically created before any changes.
ai-code-enforcer scan . --fixAI-Powered Analysis
# Requires OPENAI_API_KEY in your environment
ai-code-enforcer scan . --aiCustom Configuration
Create an ai-enforcer.config.json in your root:
{
"rules": {
"naming-convention": { "enabled": true },
"large-component": { "enabled": true, "severity": "error" },
"duplicate-logic": { "enabled": false }
},
"exclude": ["tests/**", "legacy/**"]
}🏗 Rules Overview
| Rule | Description | Auto-Fix |
| :--- | :--- | :---: |
| naming-convention | Enforce camelCase/PascalCase | ✅ |
| generic-names | Detect data, val, temp | ❌ |
| large-component | Flag React components > 150 lines | ❌ |
| async-error-handling | Detect missing try/catch in async functions | ❌ |
| nextjs-structure | Enforce Next.js folder conventions | ❌ |
| duplicate-logic | Find repeated function bodies across files | ❌ |
🛡 Security & Backups
When using --fix, the tool automatically creates a backup of the affected files in .ai-enforcer/backups/. Your code integrity is our priority.
📄 License
ISC
Built with ❤️ by the Antigravity AI Team.
