diff --git a/ERROR_REPAIR_GUIDE.md b/ERROR_REPAIR_GUIDE.md
new file mode 100644
index 0000000..1bbbefb
--- /dev/null
+++ b/ERROR_REPAIR_GUIDE.md
@@ -0,0 +1,172 @@
+# Error Detection & Auto Repair Feature
+
+## Overview
+
+CodeForge includes an intelligent error detection and auto-repair system powered by AI that helps you identify and fix code issues automatically.
+
+## Features
+
+### đ Error Detection
+
+The system automatically scans your code files for various types of errors:
+
+- **Syntax Errors**: Missing parentheses, unbalanced braces, malformed statements
+- **Import Errors**: Unused imports that clutter your code
+- **Type Errors**: Use of `any` types that reduce type safety
+- **Lint Errors**: Code style issues like using `var` instead of `const`/`let`
+
+### đ§ Auto Repair Modes
+
+1. **Single Error Repair**
+ - Click the wrench icon next to any error
+ - AI fixes just that specific issue
+ - Get instant feedback with explanations
+
+2. **Batch File Repair**
+ - Repair all errors in a single file
+ - Click "Repair" button at the file level
+ - Fixes are applied all at once
+
+3. **Context-Aware Repair**
+ - Uses related files for better accuracy
+ - Understands your project structure
+ - Maintains consistency across files
+
+4. **Full Project Repair**
+ - Click "Repair All" to fix all files
+ - Processes multiple files in parallel
+ - Comprehensive project-wide fixes
+
+## How to Use
+
+### Quick Start
+
+1. Open the **Error Repair** tab in the main navigation
+2. Click **Scan** to detect errors in your project
+3. Review the detected errors grouped by file
+4. Choose your repair method:
+ - Click wrench icon for single error fix
+ - Click "Repair" for file-level fix
+ - Click "Repair All" for project-wide fix
+
+### Understanding Error Indicators
+
+- **đ´ Error Badge**: Red badge shows critical errors that break functionality
+- **â ī¸ Warning Badge**: Yellow badge shows code quality issues
+- **âšī¸ Info Badge**: Blue badge shows suggestions for improvement
+
+### Error Panel Features
+
+- **Grouped by File**: Errors are organized by the file they appear in
+- **Line Numbers**: Jump directly to the problematic code
+- **Code Snippets**: View the problematic code inline
+- **Expandable Details**: Click to see more context
+- **Quick Navigation**: Click "Open" to jump to the file in the editor
+
+## Best Practices
+
+1. **Regular Scans**: Run scans periodically as you code
+2. **Review AI Fixes**: Always review what the AI changed
+3. **Test After Repair**: Verify your code still works as expected
+4. **Incremental Fixes**: Fix errors in small batches for easier verification
+
+## Error Types Explained
+
+### Syntax Errors
+```typescript
+// â Before (missing parentheses)
+function calculate { return 5 }
+
+// â After
+function calculate() { return 5 }
+```
+
+### Import Errors
+```typescript
+// â Before (unused import)
+import { useState, useEffect, useMemo } from 'react'
+// Only useState is used
+
+// â After
+import { useState } from 'react'
+```
+
+### Type Errors
+```typescript
+// â Before (any type)
+function process(data: any) { }
+
+// â After
+function process(data: string | number) { }
+```
+
+### Lint Errors
+```typescript
+// â Before (var keyword)
+var count = 0
+
+// â After
+const count = 0
+```
+
+## Tips & Tricks
+
+- **Badge Notification**: Look for the error count badge on the "Error Repair" tab
+- **Header Alert**: When errors are detected, a button appears in the header
+- **File Targeting**: Use file-level repair when errors are localized
+- **Context Matters**: Complex errors benefit from context-aware repair
+
+## Troubleshooting
+
+**Q: The scan isn't finding errors I can see**
+A: Some complex errors may require manual review. The scanner focuses on common, fixable issues.
+
+**Q: A fix didn't work as expected**
+A: You can undo changes in the editor. Try single-error repair for more control.
+
+**Q: AI repair is taking too long**
+A: Large files or complex errors may take time. Consider fixing smaller batches.
+
+**Q: Some errors remain after repair**
+A: Some errors may require manual intervention or additional context. Check the "remaining issues" explanation.
+
+## Integration with CodeForge
+
+The error repair system works seamlessly with other CodeForge features:
+
+- **Code Editor**: Jump directly from errors to code
+- **AI Generate**: AI-generated code is also scannable
+- **Export**: Ensure clean code before project export
+- **All Designers**: Errors in any file type are detected
+
+## Technical Details
+
+### Error Detection Algorithm
+
+1. **Lexical Analysis**: Tokenize source code
+2. **Pattern Matching**: Identify common error patterns
+3. **Import Analysis**: Track import usage
+4. **Type Checking**: Basic type validation for TypeScript
+
+### AI Repair Process
+
+1. **Context Gathering**: Collect error details and surrounding code
+2. **Prompt Construction**: Build repair prompt with constraints
+3. **LLM Processing**: Send to GPT-4o for intelligent fixes
+4. **Validation**: Parse and validate the response
+5. **Application**: Apply fixes to the codebase
+
+### Supported Languages
+
+- TypeScript (`.ts`, `.tsx`)
+- JavaScript (`.js`, `.jsx`)
+- CSS/SCSS (basic syntax checking)
+
+## Future Enhancements
+
+- Real-time error detection as you type
+- Custom error rules
+- Integration with ESLint
+- TypeScript compiler integration
+- Performance metrics
+- Error history tracking
diff --git a/PRD.md b/PRD.md
index c3b7ac9..4753eeb 100644
--- a/PRD.md
+++ b/PRD.md
@@ -68,6 +68,13 @@ This is a full-featured low-code IDE with multiple integrated tools (code editor
- **Progression**: Create test suite manually or with AI â Select test type (component/function/hook/integration) â Add test cases â Configure setup, assertions, and teardown â AI can generate complete test suites â Export test files for Vitest/React Testing Library
- **Success criteria**: Can create test suites for different types; test cases have multiple assertions; setup/teardown code is optional; AI tests are comprehensive; generates valid Vitest test code
+### Auto Error Detection & Repair
+- **Functionality**: Automated error detection and AI-powered code repair system that scans files for syntax, type, import, and lint errors
+- **Purpose**: Automatically identify and fix code errors without manual debugging, saving time and reducing bugs
+- **Trigger**: Opening the Error Repair tab or clicking "Scan" button
+- **Progression**: Scan files â Detect errors (syntax, imports, types, lint) â Display errors grouped by file â Repair individual errors or batch repair all â View explanations â Rescan to verify fixes
+- **Success criteria**: Detects common errors accurately; AI repairs produce valid, working code; can repair single errors or entire files; provides clear explanations of fixes; supports context-aware repair using related files
+
### Project Generator
- **Functionality**: Exports complete Next.js project with all configurations
- **Purpose**: Converts visual designs into downloadable, runnable applications
@@ -88,6 +95,9 @@ This is a full-featured low-code IDE with multiple integrated tools (code editor
- **Invalid Test Selectors**: Warn when Playwright selectors might be problematic
- **Missing Test Assertions**: Highlight test cases without assertions as incomplete
- **Storybook Args Type Mismatch**: Auto-detect arg types and provide appropriate input controls
+- **No Errors Found**: Show success state when error scan finds no issues
+- **Unrepairable Errors**: Display clear messages when AI cannot fix certain errors and suggest manual intervention
+- **Context-Dependent Errors**: Use related files as context for more accurate error repair
## Design Direction
The design should evoke a professional IDE environment while remaining approachable - think Visual Studio Code meets Figma. Clean panels, clear hierarchy, and purposeful use of space to avoid overwhelming users with options.
@@ -149,10 +159,15 @@ Animations should feel responsive and purposeful - quick panel transitions (200m
- Play (play icon) for Playwright E2E tests
- BookOpen (book-open icon) for Storybook stories
- Flask (flask icon) for unit tests
+ - Wrench (wrench icon) for error repair
- FileCode (file-code icon) for individual files
- Plus (plus icon) for create actions
- Download (download icon) for export
- Sparkle (sparkle icon) for AI generation
+ - Lightning (lightning icon) for scan/quick actions
+ - CheckCircle (check-circle icon) for success states
+ - Warning (warning icon) for warnings
+ - X (x icon) for errors
- **Spacing**:
- Panel padding: p-6 (24px) for main content areas
diff --git a/src/App.tsx b/src/App.tsx
index 28283f9..bbdeaf0 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -1,10 +1,12 @@
-import { useState } from 'react'
+import { useState, useEffect } from 'react'
import { useKV } from '@github/spark/hooks'
+import { useAutoRepair } from '@/hooks/use-auto-repair'
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'
import { Button } from '@/components/ui/button'
+import { Badge } from '@/components/ui/badge'
import { Card } from '@/components/ui/card'
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from '@/components/ui/resizable'
-import { Code, Database, Tree, PaintBrush, Download, Sparkle, Flask, BookOpen, Play } from '@phosphor-icons/react'
+import { Code, Database, Tree, PaintBrush, Download, Sparkle, Flask, BookOpen, Play, Wrench } from '@phosphor-icons/react'
import { ProjectFile, PrismaModel, ComponentNode, ThemeConfig, PlaywrightTest, StorybookStory, UnitTest } from '@/types/project'
import { CodeEditor } from '@/components/CodeEditor'
import { ModelDesigner } from '@/components/ModelDesigner'
@@ -14,6 +16,7 @@ import { FileExplorer } from '@/components/FileExplorer'
import { PlaywrightDesigner } from '@/components/PlaywrightDesigner'
import { StorybookDesigner } from '@/components/StorybookDesigner'
import { UnitTestDesigner } from '@/components/UnitTestDesigner'
+import { ErrorPanel } from '@/components/ErrorPanel'
import { generateNextJSProject, generatePrismaSchema, generateMUITheme, generatePlaywrightTests, generateStorybookStories, generateUnitTests } from '@/lib/generators'
import { AIService } from '@/lib/ai-service'
import { toast } from 'sonner'
@@ -109,6 +112,8 @@ function App() {
const safeStorybookStories = storybookStories || []
const safeUnitTests = unitTests || []
+ const { errors: autoDetectedErrors } = useAutoRepair(safeFiles, false)
+
const handleFileChange = (fileId: string, content: string) => {
setFiles((currentFiles) =>
(currentFiles || []).map((f) => (f.id === fileId ? { ...f, content } : f))
@@ -200,6 +205,16 @@ function App() {