Venice AI Extension for VS Code
A powerful VS Code extension that integrates Venice.ai directly into your development workflow. Get AI-powered code assistance, explanations, and project scaffolding without leaving your editor.
Features
- Dedicated Venice AI chat panel in the VS Code sidebar
- Persistent chat history with folder organization
- Full-screen chat mode for extended conversations
- Markdown rendering for formatted responses
💡 Context-Aware Code Actions
- Explain Code: Right-click any code selection to get detailed explanations
- Fix/Edit Code: Get AI-powered suggestions to improve or fix selected code
- Automatic context injection into chat
🏗️ Project Scaffolding
- Generate complete project structures with a single command
- Automatically creates files, folders, and configuration
- Supports multiple project types and frameworks
📝 Quick Ask Command
- Ask questions via command palette
- Insert responses directly into your active file
- Works with any file type
Installation
Prerequisites
- VS Code: Version 1.90.0 or higher
- Node.js: Version 16.x or higher
- npm: Version 7.x or higher
- Venice AI API Key: Get yours at venice.ai
Install from Source
Clone or download the extension source code
Install dependencies:
npm install
Compile the extension:
npm run compile
Run in Development Mode:
- Press
F5 in VS Code to open the Extension Development Host
- The extension will be active in the new window
Package the extension (optional):
npm install -g @vscode/vsce
vsce package
This creates a .vsix file you can install with:
code --install-extension venice-ai-extension-0.0.1.vsix
Configuration
1. Set Your API Key
After installation, configure your Venice AI API key:
Option A: Via Settings UI
- Open VS Code Settings (
Cmd+, on macOS or Ctrl+, on Windows/Linux)
- Search for "Venice AI"
- Enter your API key in the Venice AI: Api Key field
Option B: Via settings.json
- Open Command Palette (
Cmd+Shift+P / Ctrl+Shift+P)
- Type "Preferences: Open Settings (JSON)"
- Add:
{
"veniceAi.apiKey": "your-api-key-here",
"veniceAi.model": "llama-3.3-70b"
}
2. Choose Your Model (Optional)
The extension defaults to llama-3.3-70b. You can change this in settings:
{
"veniceAi.model": "venice-uncensored"
}
Available models include:
llama-3.3-70b (default)
venice-uncensored
- Other models supported by Venice AI
Usage
- Click the Venice AI icon in the Activity Bar (left sidebar)
- Or use Command Palette:
Venice AI: Focus Chat
Chat Features
Creating Chat Folders
- Click the folder icon (➕) in the sidebar header to organize conversations
- Manage multiple chat contexts simultaneously
Full-Screen Chat
- Click the expand icon in the sidebar to open chat in a full editor tab
- Maintains your current chat session and history
Clear History
- Click the trash icon to clear the current chat history
- Or use Command Palette:
Venice AI: Clear History
Reset All Data
- Command Palette:
Venice AI: Reset All Data (Fresh Start)
- Clears all chats, folders, and history
Code Actions
Explain Code
- Select code in any file
- Right-click and choose Venice AI: Explain Selection
- The chat sidebar opens with an explanation request
Fix/Edit Code
- Select code in any file
- Right-click and choose Venice AI: Fix/Edit Selection
- Get AI-powered improvement suggestions
Project Scaffolding
- Click the new folder icon in the Venice AI sidebar
- Or use Command Palette:
Venice AI: Scaffold Project
- Enter a project description (e.g., "A Node.js Express server with TypeScript and Jest")
- The AI generates a complete project structure with files
Quick Ask Command
- Open Command Palette (
Cmd+Shift+P / Ctrl+Shift+P)
- Type
Venice AI: Ask
- Enter your question
- Response is inserted at cursor position or shown in a new document
Extension Settings
This extension contributes the following settings:
veniceAi.apiKey: Your Venice AI API key (required)
veniceAi.model: The model ID to use (default: llama-3.3-70b)
Commands
| Command |
Description |
Shortcut |
Venice AI: Ask |
Quick question via input box |
Command Palette |
Venice AI: Focus Chat |
Open the chat sidebar |
Command Palette |
Venice AI: Open Full Screen Chat |
Expand chat to full editor |
Command Palette |
Venice AI: Explain Selection |
Explain selected code |
Right-click menu |
Venice AI: Fix/Edit Selection |
Fix or improve selected code |
Right-click menu |
Venice AI: Scaffold Project |
Generate project structure |
Sidebar icon |
Venice AI: Clear History |
Clear current chat history |
Sidebar icon |
Venice AI: Reset All Data |
Fresh start (clears everything) |
Command Palette |
Development
Building from Source
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch mode (auto-compile on changes)
npm run watch
# Run linter
npm run lint
# Run tests
npm test
Project Structure
venice-ai-extension/
├── src/
│ ├── extension.ts # Main extension entry point
│ ├── veniceService.ts # Venice AI API integration
│ ├── SidebarProvider.ts # Webview sidebar provider
│ └── FullChatProvider.ts # Full-screen chat provider
├── media/ # Icons and assets
├── out/ # Compiled JavaScript
├── package.json # Extension manifest
└── tsconfig.json # TypeScript configuration
Troubleshooting
API Key Not Working
- Verify your API key is correct in settings
- Check that you have an active Venice AI account
- Ensure you have API credits available
Extension Not Activating
- Check VS Code version (must be 1.90.0+)
- Look for errors in Output panel:
View > Output > Venice AI
- Try reloading VS Code:
Developer: Reload Window
Chat Not Responding
- Verify your internet connection
- Check the Venice AI service status
- Review the Developer Console:
Help > Toggle Developer Tools
Privacy & Security
- Your API key is stored locally in VS Code settings
- All requests are sent directly to Venice AI servers
- No data is collected or stored by this extension
- Chat history is stored locally in VS Code's extension storage
License
MIT License
Support
- Venice AI: Visit venice.ai for API documentation and support
Enjoy coding with Venice AI! 🏛️