Review AI Code
A lightweight local AI review layer for iterative coding workflows with inline comments. Click on lines to add review notes, then copy to clipboard and share back with Claude, Copilot, or any AI coding assistant.

Features
- One-Click Review Mode: Toggle review mode with a single toolbar button
- Inline Comments: Click or select lines to add review notes - no keyboard shortcuts required
- Multi-Line Comments: Write detailed, multi-line review feedback
- Visual Indicators: Subtle decorations show reviewable lines, bold indicators highlight commented lines
- Copy to Clipboard: One-click copy all review comments in markdown format
- Direct AI Integration: Send comments directly to VS Code Chat, GitHub Copilot, Cline, Roo Code, or Claude Code
- AI-Ready Format: Optimized for pasting into Claude Code, Cursor, Copilot Chat, or any AI assistant
- Edit & Update: Easily edit existing comments or delete them
Usage
Typical Workflow: Review AI-Generated Code
- AI generates code (Claude, Copilot, Cursor, etc.)
- Click 💬 "Enter Review Mode" in the editor toolbar
- Click lines to add review comments
- Click 📋 "Copy Review" in the status bar
- Comments are copied to clipboard (and configured AI assistant chat is focused)
- Paste into your AI chat to share feedback
- Click the "Enter Review Mode" button (comment icon) in the editor toolbar
- Click on a line or select multiple lines
- Choose single-line or multi-line comment
- Type your review feedback
- Click "Done" (for multi-line) or press Enter (for single-line)
- Hover over any line with a comment decoration to see the tooltip
- The overview ruler on the right shows all comment locations in the file
- Place your cursor on a commented line
- Right-click and select "Delete Review Comment"
- Confirm the deletion
- Click the "Export Comments" button in the status bar (bottom right)
- A JSON file will be created in your workspace root:
code-review-[timestamp].json
- Click "Open File" in the notification to view the exported data
Review Mode Toggle
- Enter Review Mode: Shows subtle decorations on all lines, enables click-to-comment
- Exit Review Mode: Hides review decorations, keeps comment decorations visible
- Comments remain visible even when review mode is off
Comments are exported in a minimal JSON format:
[
{
"file": "src/app.ts",
"lines": "42-45",
"comment": "Consider extracting this into a helper function"
},
{
"file": "src/utils.ts",
"lines": 10,
"comment": "Add input validation here"
}
]
Clean and simple - perfect for pasting into Claude Code, Cursor, GitHub Copilot Chat, or any AI coding assistant.
Configuration
AI Integration Settings
Send comments directly to your preferred AI coding assistant:
reviewAiCode.aiIntegration.enabled (default: false)
- Enable direct integration with AI assistants. When disabled, only copies to clipboard.
reviewAiCode.aiIntegration.targetAssistant (default: "clipboard-only")
- Choose which AI assistant to send comments to.
- Options:
clipboard-only, vscode-chat, github-copilot, cline, roocode, claude-code, ask-each-time
reviewAiCode.aiIntegration.alwaysCopyToClipboard (default: true)
- Also copy to clipboard when sending to AI assistant (recommended as backup).
reviewAiCode.aiIntegration.autoSubmit (default: false)
- Automatically submit message to AI. When false, message is inserted for review before sending.
- Only works with VS Code Chat and GitHub Copilot.
Example: Enable Cline Integration
{
"reviewAiCode.aiIntegration.enabled": true,
"reviewAiCode.aiIntegration.targetAssistant": "cline",
"reviewAiCode.aiIntegration.alwaysCopyToClipboard": true
}
Export Settings
Customize how comments are formatted when copied to clipboard:
reviewAiCode.export.headerText (default: "# Code Review Comments")
- Main header for copied comments. Supports Markdown formatting.
- Example:
"## My Code Review" or "# Feedback for AI"
reviewAiCode.export.showTotalCount (default: true)
- Show or hide the total comment count in the introduction.
reviewAiCode.export.totalCountFormat (default: "Total: {count} comment(s)")
- Format string for the count line. Use
{count} as a placeholder.
- Example:
"Found {count} issues" or "{count} comments below"
reviewAiCode.export.customPrefix (default: "")
- Text to add before all copied comments (great for AI context).
- Example:
"Here is my feedback:" or "Please review these comments:"
reviewAiCode.export.fileReferenceFormat (default: "@{path}")
- Format for file path references. Use
{path} as a placeholder.
- Default
@{path} format is recognized by AI agents like Claude Code and Cursor.
- Example:
"## {path}" for plain paths, or "📄 {path}" with emoji
Example Configuration
{
"reviewAiCode.export.headerText": "## Code Review Feedback",
"reviewAiCode.export.customPrefix": "Here is my feedback:",
"reviewAiCode.export.totalCountFormat": "I have {count} comments:",
"reviewAiCode.export.showTotalCount": true,
"reviewAiCode.export.fileReferenceFormat": "@{path}"
}
Why Review AI Code?
When AI tools like Claude, Copilot, or Cursor generate code, you need a fast way to:
- ✅ Mark sections that need changes
- ✅ Add context about your requirements
- ✅ Document issues or improvements
- ✅ Send structured feedback back to the AI
Review AI Code makes this workflow seamless with inline comments and one-click sharing.
Commands
codeReview.enterReviewMode - Enter review mode
codeReview.exitReviewMode - Exit review mode
codeReview.deleteComment - Delete comment at cursor
codeReview.sendToChat - Copy comments to clipboard or send to AI assistant
codeReview.exportComments - Export all comments to JSON
Requirements
Known Limitations
- Comments are stored with absolute file paths - renaming or moving files will break the association
- Maximum 100 lines can be selected at once for commenting
- Comments are stored in VS Code's global state (not version-controlled)
Future Enhancements
- Webview sidebar for viewing all comments in a list
- Workspace-relative paths with file watcher support
- Optional
.vscode/reviews/ folder storage
- Rich text formatting (Markdown, code blocks)
Development
Building from Source
npm install
npm run compile
Running in Development
- Open this project in VS Code
- Press F5 to open Extension Development Host
- Test the extension in the new window
Packaging
npm install -g @vscode/vsce
vsce package
License
MIT
Feedback
Report issues or suggest features at: GitHub Issues