Version 1.0.8 | Changelog | Technical Specs
Transform basic prompts into sophisticated, detailed prompts using OpenAI's API directly within Visual Studio Code. Designed for vibe coding, AI-assisted development, and prompt engineering best practices.
Initiate enhancement with a hotkey
Choose how to apply the enhanced prompt
Example enhancement output
Manage templates with import/export
- Editor Title Bar Button: One-click enhancement from editor header
- Command Palette Access: All commands available via Ctrl+Shift+P
- Save Prompt Feature: Save enhancements to markdown files
- Enhancement Tracking: All your enhancements with full metadata
- Statistics Dashboard: View usage, tokens, and performance
- Export/Import: Backup and restore your history
- VSCode Sync: History syncs with your VSCode profile
- Auto-Discovery: Fetch latest OpenAI models automatically
- Smart Filtering: Text models only (no embeddings/images)
- Priority Sorting: Best models first (GPT-5, O-series, GPT-4)
- Custom Model ID: Enter any model ID manually
- Client-Side Protection: Prevent API rate limit errors
- Real-time Status: See remaining requests
- Auto-Throttling: Wait automatically when needed
- Detailed Logging: Timestamped, categorized logs
- Output Channel: Dedicated debug panel
- Toggle Command: Quick enable/disable
- Select any text anywhere in VSCode (editor, terminal, webviews)
- Press
Ctrl+Shift+Alt+/or click the title bar button - Command Palette access for all commands
- Works universally across all VSCode contexts
- Auto-Discovery: Fetches available models from OpenAI API
- 24-Hour Cache: Fast loading with periodic refresh
- Smart Filtering: Excludes embeddings, image, audio models
- Model Priority: GPT-5 β O-series β GPT-4 β GPT-3.5
- Custom Entry: Manually enter any model ID
- Built-in Templates: 5 professionally crafted templates
- General Enhancement: Improve clarity and structure
- Technical Coding: Optimize for code generation
- Creative Writing: Enhance narrative tasks
- Code Comments: Generate documentation
- Custom Template: Your own instructions
- Template Manager: Create, edit, import/export (
Ctrl+Shift+Alt+T) - Dynamic Loading: Templates persist with version control
- Full Tracking: Original + enhanced text with metadata
- Statistics: Total, today, weekly, tokens, avg time
- Search: Find past enhancements by content
- Export: JSON backup of all history
- Individual Actions: View, copy, delete entries
- Profile Sync: Syncs with VSCode settings sync
- Multiple Formats:
- Original text only
- Enhanced text only
- Both side-by-side (markdown)
- Auto-Naming: Timestamp-based filenames
- Configurable Path: Set default save directory
- Metadata Included: Model, template, timestamp
- Quick Actions: Open file or show in Explorer
- Replace: Replace selected text
- Insert Below: Add below selection
- Insert Above: Add above selection
- Copy to Clipboard: Copy for use elsewhere
- Encrypted Storage: API keys in VSCode SecretStorage
- Dynamic Models: Auto-fetch from OpenAI
- Adjustable Settings: Timeout, tokens, temperature
- Debug Mode: Detailed logging for troubleshooting
- Rate Limiting: Client-side protection
Install from Marketplace
Or install locally:
# Download the .vsix file
code --install-extension prompt-enhancer-ex-1.0.8.vsix1. Press Ctrl+Shift+P (Cmd+Shift+P on Mac)
2. Run "Prompt Enhancer: Configure API Key"
3. Enter your OpenAI API key
Get your API key from: https://platform.openai.com/api-keys
Method 1: Keyboard Shortcut
1. Select text (or leave unselected for full editor)
2. Press Ctrl+Shift+Alt+/ (Cmd+Shift+Alt+/ on Mac)
3. Choose template
4. Select output action
Method 2: Title Bar Button
1. Click the spark icon in editor title bar
2. Choose template
3. Select output action
Method 3: Command Palette
1. Press Ctrl+Shift+P (Cmd+Shift+P on Mac)
2. Type "Prompt Enhancer: Enhance"
3. Choose template
4. Select output action
Change Model
1. Press Ctrl+Shift+P
2. Type "Prompt Enhancer: Select Model"
Or press Ctrl+Shift+Alt+M (Cmd+Shift+Alt+M on Mac)
3. View full dynamic model list from OpenAI
4. Select desired model
Before:
Write a function to sort an array
After (Technical Template):
/**
* Sorts an array of numbers in ascending order
* @param {number[]} arr - The array to sort
* @returns {number[]} A new sorted array
* @throws {TypeError} If input is not an array of numbers
*/
function sortArray(arr: number[]): number[] {
if (!Array.isArray(arr)) {
throw new TypeError('Input must be an array');
}
if (!arr.every(n => typeof n === 'number')) {
throw new TypeError('All elements must be numbers');
}
return [...arr].sort((a, b) => a - b);
}
// Example usage:
// sortArray([3, 1, 4, 1, 5]) // returns [1, 1, 3, 4, 5]Before:
A story about a robot
After (Creative Template):
Write a compelling short story about a sentient robot discovering emotions.
**Setting:** Near-future dystopian city with neon-lit streets
**Protagonist:** Unit-7, a maintenance robot
**Themes:** Consciousness, humanity, emotion vs logic
**Tone:** Thoughtful, introspective, with wonder and fear
**Length:** 1,500-2,000 words
**Requirements:**
- Vivid sensory descriptions
- Character development through dialogue
- Build tension through internal conflict
- Meaningful conclusion about consciousness
After enhancing, use Command Palette or the Save Prompt command:
-
Press
Ctrl+Shift+P -
Type "Prompt Enhancer: Save Prompt"
-
Choose save option:
- Original text
- Enhanced text
- Both (markdown format)
-
File saved to workspace (or configured directory):
prompt-write-a-sort-function-1708712345.md -
Quick actions:
- Open File
- Show in Explorer
| Command | Shortcut | Description |
|---|---|---|
| Enhance Prompt | Ctrl+Shift+Alt+/ |
Enhance selected text (or editor) |
| Enhance Entire Editor | - | Always use full document |
| Select OpenAI Model | Ctrl+Shift+Alt+M |
View and select from dynamic model list |
| Configure API Key | Ctrl+Shift+Alt+P |
Set OpenAI API key |
| Manage Templates | Ctrl+Shift+Alt+T |
Template management |
| View History | Ctrl+Shift+Alt+H |
View enhancement history |
| Toggle Debug Mode | Ctrl+Shift+Alt+D |
Enable/disable debug logs |
| Save Prompt | - | Save to markdown file |
| Clear History | - | Clear all history |
- Editor Title Bar: Click spark icon
- Command Palette: All commands available (
Ctrl+Shift+P) - Keyboard Shortcuts: See Commands table below
Access via File > Preferences > Settings β search "Prompt Enhancer"
| Setting | Default | Description |
|---|---|---|
promptEnhancer.model |
gpt-4o-mini |
Default model (dynamic list) |
promptEnhancer.timeout |
30000 |
Request timeout (ms) |
promptEnhancer.defaultTemplate |
general |
Default template |
promptEnhancer.maxTokens |
1000 |
Max response tokens (100-4000) |
promptEnhancer.temperature |
0.7 |
Creativity (0.0-2.0) |
promptEnhancer.customTemplate |
"" |
Custom template text |
promptEnhancer.debugMode |
false |
Enable debug logging |
promptEnhancer.enableHistory |
true |
Enable history tracking |
promptEnhancer.historyLimit |
50 |
Max history entries (10-500) |
promptEnhancer.savePromptDirectory |
"" |
Default save path |
| Model | Speed | Quality | Cost | Best For |
|---|---|---|---|---|
| GPT-4o-mini | β‘β‘β‘ | βββ | π° | Daily use, cost-effective |
| GPT-4o | β‘β‘ | βββββ | π°π°π° | Complex tasks, best quality |
| GPT-3.5-turbo | β‘β‘β‘ | ββ | π° | Simple prompts, fastest |
| O1 Preview | β‘ | βββββ | π°π°π°π° | Reasoning, complex logic |
| O1 Mini | β‘β‘ | ββββ | π°π°π° | Technical reasoning |
Dynamic model discovery shows all available models automatically.
β "No text selected" error
- Select text or use "Enhance Entire Editor" command
- Editor title button works with full document
β "Invalid API key" error
- Verify API key is correct (starts with
sk-) - Check API key has available credits
- Re-enter via Command Palette
β "Request timeout" error
- Increase timeout in settings
- Check internet connection
- Try a different model
β "Rate limit exceeded" error
- Wait for the shown countdown
- Client-side limiter prevents this now
- Check OpenAI account tier limits
β "No models returned" error
- Check API key validity
- Verify internet connection
- Use "Custom Model ID" as fallback
β History not showing
- Ensure
enableHistoryis true - Check if history was cleared
- Verify VSCode sync if using multiple devices
Enable for detailed troubleshooting:
- Press
Ctrl+Shift+Alt+Dto toggle - View logs:
View > Output > Prompt Enhancer (Debug) - Logs include timestamps, categories, and data
Install from VSCode Marketplace
# Download .vsix from releases
code --install-extension prompt-enhancer-ex-1.0.8.vsixgit clone https://github.com/ruhanirabin/vscode-prompt-enhancer.git
cd vscode-prompt-enhancer
npm install
npm run package
code --install-extension prompt-enhancer-ex-1.0.8.vsix- Node.js 18.x or higher
- VSCode 1.85.0 or higher
- OpenAI API key
npm install
npm run watch # Development mode
npm run compile # One-time build
npm run lint # Code quality check
npm test # Run tests# Unit tests
npm test
# Run extension
F5 in VSCode
# Package for distribution
npm run packageSee TECHNICAL_SPECIFICATION.md for full details.
- API Keys: Encrypted via VSCode SecretStorage
- Data: Only selected text sent to OpenAI
- History: Stored locally, syncs via VSCode (if enabled)
- No Telemetry: No user data collection
- HTTPS Only: All communication encrypted
- Open Source: Full code transparency
- CHANGELOG - Version history
- TECHNICAL_SPECIFICATION.md - Build & dev guide
- GitHub Issues - Report bugs
- Discussions - Community
Contributions welcome! See our Contributing Guide:
- Fork the repository
- Create feature branch
- Make changes
- Run
npm run lintandnpm test - Submit pull request
MIT License - see LICENSE file for details.
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π Docs: Wiki
- β Rate: Leave a review on the Marketplace
Made with β€οΈ for the VSCode community
Transform your prompts, enhance your productivity! π
| Version | Date | Key Features |
|---|---|---|
| 1.0.8 | 2026-02-23 | UI buttons, history, save prompt, rate limiting, debug mode, dynamic models |
| 1.0.7 | 2025-08-02 | Template manager, dynamic templates |
| 1.0.6 | 2025-08-01 | Clipboard handling improvements |
| 1.0.0 | 2025-08-01 | Initial release |
See CHANGELOG.md for full history.
