๐ค QuickAI for PowerToys Run
February 12, 2026 ยท View on GitHub
๐ค QuickAI for PowerToys Run
โก AI-Powered Assistance Right at Your Fingertips โก
Never leave your workflow to get AI help again.
Access multiple AI providers instantly with Alt+Space โ ai explain quantum computing โ Done! โจ
๐ Download Statistics
๐ฏ Why Developers Love QuickAI
"Stop switching between browser tabs and AI chat interfaces"
| โ Before | โ With QuickAI |
|---|---|
| Open browser โ Login to AI โ Type question โ Copy | Alt+Space โ ai speed of light โ Copy |
| 30+ seconds, context switching | 2 seconds, zero interruption |
๐ Quick Demo - Try it now:
Alt+Space โ ai explain recursion # ๐ง Complex concepts
Alt+Space โ ai write python script # ๐ Code generation
Alt+Space โ ai summarize this # ๐ Text analysis
Alt+Space โ ai translate to french # ๐ Language tasks
๐งญ Table of Contents
- Overview
- Recent Changelog
- Features
- Supported AI Providers
- Demo
- Quick Start
- Installation
- Configuration
- Usage Examples
- Advanced Features
- Building from Source
- Development & Quality
- Project Structure
- FAQ
- Troubleshooting
- Security & Privacy
- Tech Stack
- Contributing
- Screenshots
- Support the Project
- License
- Acknowledgements
๐ Overview
QuickAI brings the power of multiple AI providers directly into PowerToys Run. Get instant, streaming responses from leading AI models without leaving your workflow. Launch PowerToys Run with Alt+Space, type ai (or your custom keyword), and ask anything.
- Plugin ID:
420129A62ECA49848C5C7CA229BFD22C - Action Keyword:
aior change toquickai - Platform: Windows 10/11 (x64, ARM64)
- Tech: C#/.NET 9.0, WPF, PowerToys Run API
๐ Recent Changelog
โก v1.2.1 - Quick Commands & Clipboard Text Auto-Read
Quick Commands System:
- Type
ai /to see all available commands instantly - Built-in commands:
/read,/explain,/summarize,/translate,/fix - Clipboard Text Auto-Read: Commands automatically grab text from clipboard when no extra text typed
ai /translateโ translates clipboard textai /summarizeโ summarizes clipboard content
- Custom Quick Commands: Add your own commands in settings
- Format:
/name=prompt; /name2=prompt2 - Example:
/review=Review this code for best practices; /eli5=Explain like I'm 5
- Format:
- UI Fix: Custom Quick Commands setting now visible (fixed Checkbox type issue)
๐ฌ v1.2.0 - System Prompt, Clipboard Image & Quick Commands
๐ธ Clipboard Image Attachment
Attach screenshots directly to your queries โ AI reads and analyzes image content!
๐ Clipboard image indicator shows when image attachment is active
QuickAI Response window โ send "read text from image" with a clipboard screenshot
New Features:
- ๐ฌ Custom System Prompt: Persistent instructions sent before every query (e.g. "You are a concise assistant")
- OpenAI:
role: systemยท Google:systemInstructionยท Cohere:preamble
- OpenAI:
- ๐ธ Clipboard Image Attachment: Send clipboard images with queries for vision models
- OpenAI:
image_urlยท Google:inlineDataยท UI shows ๐ when active
- OpenAI:
- โก Quick Commands: Type
/to see built-in commands โ no need to type full prompts! - โ๏ธ Custom Commands: Add your own
/commandsin settings
โก Quick Commands
| Command | Description |
|---|---|
/read | ๐ธ Read text from clipboard image |
/explain | ๐ป Explain code step by step |
/summarize | ๐ Summarize content concisely |
/translate | ๐ Translate to English |
/fix | ๐ Find and fix bugs in code |
Add your own in settings (Custom Quick Commands):
/review=Review this code for best practices; /eli5=Explain like I'm 5
Thanks to @ELGUAPOLIFE for the feature request (#13)!
๐จ v1.1.1 - UI Overhaul & Enhanced Experience
Major UI Improvements:
- ๐ช New Dedicated Results Window: Replaced static MessageBox with a beautiful, full-featured WPF window
- ๐ Markdown Rendering: Proper support for bold, italic,
code blocks, and inline code - ๐จ Modern Typography: Inter font for UI and JetBrains Mono for code (matching Cursor editor style)
- ๐ Dynamic Theme Support: Automatic light/dark mode with real-time theme updates when system theme changes
- ๐ Real-time Streaming: Token-by-token updates directly in the results window
- ๐ Enhanced UX: Copy button, word wrap toggle, character counter, and keyboard shortcuts (Ctrl+C, Esc)
- ๐งน Clean Interface: Query box automatically clears when opening results window
- ๐ Auto-scroll: Automatically scrolls to bottom as new content streams in
Thanks to @WuJunkai2004 (Wu Junkai) for the ideas and contributions!
๐ v1.1.0 - Local AI with Ollama
Major Feature:
- ๐ Local AI Support: Run AI models completely offline on your own machine with zero API costs
- ๐ Full Privacy: All processing happens locally - no data leaves your computer
- ๐ฐ Zero Cost: Unlimited queries with no API fees
- ๐ Fast: No network latency, instant responses
- ๐ง Flexible: Use any Ollama model - llama3.2, mistral, qwen2.5, deepseek-r1, etc.
- โ๏ธ Customizable: Configure custom host URL for remote Ollama instances
Thanks to @fuzhiyin-7 for suggesting this feature!
โก Features That Matter
โก Streaming Responses Real-time token-by-token display as you type |
๐ Multi-Provider Groq, Together, Fireworks, OpenRouter, Cohere, Google, Ollama |
๐ Dual API Keys Primary key with automatic secondary key fallback |
โ๏ธ Highly Configurable Customize model, temperature, max tokens, and timeout |
๐ One-Click Copy Press Enter to copy responses to clipboard |
๐ฌ Custom System Prompt Persistent instructions before every query |
๐ธ Clipboard Images Attach screenshots for vision AI models |
๐ช Results Window Dedicated window with markdown rendering |
๐ Local AI Run models offline with Ollama |
๐ค Supported AI Providers
| Provider | Endpoint | Default Model | API Schema |
|---|---|---|---|
| Groq | https://api.groq.com/openai/v1/chat/completions | llama-3.1-8b-instant | OpenAI |
| Together | https://api.together.xyz/v1/chat/completions | llama-3.1-8b-instant | OpenAI |
| Fireworks | https://api.fireworks.ai/inference/v1/chat/completions | llama-3.1-8b-instant | OpenAI |
| OpenRouter | https://openrouter.ai/api/v1/chat/completions | llama-3.1-8b-instant | OpenAI |
| Cohere | https://api.cohere.com/v1/chat | command | Cohere |
https://generativelanguage.googleapis.com/v1beta | gemini-1.5-flash | ||
| Ollama ๐ | http://localhost:11434/v1/chat/completions | llama3.2 | OpenAI |
๐ New in v1.1.0: Local AI with Ollama support! Run models on your own machine with zero API costs. Thanks to @fuzhiyin-7 for the idea!
๐จ New in v1.1.1: Dedicated Results Window with markdown rendering, modern typography (Inter & JetBrains Mono), dynamic theme support, and enhanced UX! Thanks to @WuJunkai2004 for the ideas!
๐ฌ New in v1.2.0: Custom System Prompt & Clipboard Image Attachment! Configure persistent instructions and attach screenshots for vision models. Thanks to @ELGUAPOLIFE for the feature request!
๐ธ Demo Gallery
AI Assistant in Action
Streaming Response
Plugin Settings
Multiple Use Cases
New Results Window (v1.1.1)
Clipboard Image & Quick Commands (v1.2.0)
๐ Clipboard image indicator in PowerToys Run
QuickAI Response window with clipboard image query
๐โโ๏ธ Get Started in 60 Seconds
1๏ธโฃ Download & Extract (15 seconds)
# Choose your architecture
wget https://github.com/ruslanlap/PowerToysRun-QuickAi/releases/download/v1.2.1/QuickAi-1.2.1-x64.zip
# Extract to PowerToys plugin directory
2๏ธโฃ Auto-Install Location (30 seconds)
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\QuickAi
3๏ธโฃ Restart PowerToys (15 seconds)
Right-click PowerToys tray icon โ Exit โ Restart from Start Menu
4๏ธโฃ Configure API Key ๐ฏ
- Open PowerToys Settings โ PowerToys Run โ Plugins โ QuickAI
- Enter your API key for the preferred provider
- Hit
Alt+Spaceโ Typeai what is quantum computing?โ Marvel at the magic! โจ
Pro Tip: Change the keyword from
aitoqoraskin PowerToys settings for even faster access!
๐ก Power User Commands
# ๐ง Complex Explanations
ai explain machine learning in simple terms
ai how does blockchain work?
ai what is the difference between REST and GraphQL?
# ๐ป Code Generation & Help
ai write a python function to sort a list
ai debug this javascript code: [paste code]
ai convert this sql to mongodb query
# ๐ Text Processing
ai summarize this text: [paste text]
ai improve the grammar of this sentence
ai translate "hello world" to spanish
# ๐ฏ Creative Tasks
ai write a poem about programming
ai brainstorm ideas for a mobile app
ai create a product description for headphones
# โก Quick Commands (NEW! Type / to see all)
ai /read # ๐ธ Read text from clipboard screenshot
ai /explain # ๐ป Explain code from clipboard image
ai /summarize # ๐ Summarize content
ai /translate # ๐ Translate to English
ai /fix # ๐ Find and fix bugs in code
# ๐ธ Vision & Screenshot Tasks
ai what does this error message mean? ๐ (with clipboard screenshot)
ai explain this code snippet ๐ (with clipboard screenshot)
ai read the text from this image ๐ (with clipboard screenshot)
# ๐ฌ System Prompt Examples
# Set system prompt to "You are a concise assistant" then:
ai explain quantum computing
# Set system prompt to "You are a helpful coding tutor" then:
ai debug this python code
# โ๏ธ Custom Commands (add your own in settings!)
# /review=Review this code for best practices
# /eli5=Explain like I'm 5
ai /review # Uses your custom prompt
ai /eli5 # Uses your custom prompt
๐จ See All Available Features
- Streaming Responses: Watch answers appear in real-time (updates every 3 tokens or 150ms)
- Context Menu: Right-click results for:
- Show full response (Enter)
- Copy response (Ctrl+C)
- Restart query (Ctrl+R)
- Multi-language Support: Works with any language
- Code Highlighting: Syntax-aware responses for code snippets
- History: Previous responses cached for quick reference
- Custom Models: Use any model from supported providers
๐ง Advanced Configuration
๐ฏ Customize Your Experience
Change Trigger Keyword
PowerToys Settings โ PowerToys Run โ Plugins โ QuickAI โ Change ai to your preference
Optimize Performance
- Temperature: Adjust creativity (0.0 = factual, 2.0 = creative, default: 0.2)
- Max Tokens: Control response length (16-4096, default: 128)
- Request Timeout: Configure timeout in seconds (3-30, default: 8)
- Model Selection: Choose specific models per provider
- Dual API Keys: Configure backup keys for reliability
๐ New Advanced Features
- System Prompt: Configure persistent instructions sent before every query (e.g., "You are a concise assistant")
- Works across all providers with native API support
- Perfect for setting consistent AI personality or response style
- Clipboard Image Attachment: Toggle to attach clipboard images with queries
- Requires vision-capable models (GPT-4V, Gemini Pro Vision, etc.)
- Shows ๐ indicator when enabled
- Great for code analysis, error messages, charts, and visual content
- Quick Commands: Type
/to see built-in commands (/read,/explain,/summarize,/translate,/fix)- Add your own custom commands in settings
- Format:
/name=prompt; /name2=prompt2 - Append extra text:
ai /translate to Frenchsends "Translate the following to English: to French"
Provider-Specific Settings
- Groq: Best for speed with Llama models
- Together: Wide variety of open-source models
- Fireworks: Fast inference with custom models
- OpenRouter: Access to multiple providers via one key
- Cohere: Enterprise-grade models with different API
- Google: Google Gemini models (API key passed as URL parameter)
- Ollama ๐: Run models locally on your machine - zero API costs, complete privacy, customizable host URL
โ ๏ธ Important: Model Name Configuration
Critical: Always copy the exact model name from your provider's documentation or dashboard. Model names vary by provider and must match exactly:
Examples of correct model names:
- Groq:
llama-3.1-8b-instant,mixtral-8x7b-32768 - Together:
meta-llama/Llama-3-8b-chat-hf,mistralai/Mixtral-8x7B-Instruct-v0.1 - Fireworks:
accounts/fireworks/models/llama-v3p1-8b-instructโ ๏ธ (must include full path) - OpenRouter:
meta-llama/llama-3.1-8b-instruct,anthropic/claude-3-haiku - Cohere:
command,command-light,command-nightly - Google:
gemini-1.5-flash,gemini-1.5-pro,gemini-pro - Ollama ๐:
llama3.2,mistral,qwen2.5,codellama,deepseek-r1(any locally pulled model)
Example: Fireworks requires full model path like
accounts/fireworks/models/llama-v3p1-8b-instruct
Where to find correct model names:
- Groq: console.groq.com/docs/models
- Together: docs.together.ai/docs/inference-models
- Fireworks: docs.fireworks.ai/models - Copy from "Model ID" field
- OpenRouter: openrouter.ai/models
- Cohere: docs.cohere.com/docs/models
- Google: ai.google.dev/models - Google Gemini models
- Ollama ๐: ollama.com/library - Run
ollama listto see locally pulled models
๐ API Key Acquisition
How to Get Your API Keys
Groq
- Visit https://console.groq.com
- Sign up or log in
- Navigate to API Keys section
- Create a new API key
- Copy and paste into QuickAI settings
Together
- Visit https://api.together.xyz
- Create an account
- Go to Settings โ API Keys
- Generate a new key
- Copy and paste into QuickAI settings
Fireworks
- Visit https://fireworks.ai
- Sign up for an account
- Navigate to API Keys
- Create a new key
- Copy and paste into QuickAI settings
OpenRouter
- Visit https://openrouter.ai
- Sign up or log in
- Go to Keys section
- Generate an API key
- Copy and paste into QuickAI settings
Cohere
- Visit https://cohere.com
- Create an account
- Navigate to API Keys
- Create a new key
- Copy and paste into QuickAI settings
- Visit https://ai.google.dev
- Sign up or log in with your Google account
- Navigate to Get API Key section
- Create a new API key
- Copy and paste into QuickAI settings
Ollama (Local - No API Key Required!) ๐
- Install Ollama from https://ollama.com
- Run
ollama serveto start the local server - Pull a model:
ollama pull llama3.2(or any model) - Select "Ollama" provider in QuickAI settings
- Set model name to your pulled model (e.g.,
llama3.2,mistral,qwen2.5) - Optionally configure custom host URL (default:
http://localhost:11434)
๐ก Tip: Most cloud providers offer free tiers perfect for testing QuickAI! With Ollama, run unlimited queries locally for free!
๐ง Technical Details
Architecture & Implementation
Architecture
- Target Framework: .NET 9.0 Windows (10.0.22621.0)
- Plugin Type: PowerToys Run Plugin (DynamicLoading: false)
- HTTP Client: Static singleton with configurable timeout (default: 8 seconds, range: 3-30)
- Streaming: Server-Sent Events (SSE) parsing with real-time UI updates
- JSON: System.Text.Json for serialization
- UI: WPF with theme-aware design
Implementation Highlights
- Implements
IPluginfor PowerToys Run integration - Implements
ISettingProviderfor GUI configuration viaAdditionalOptions - Implements
IContextMenufor right-click actions (show full response, copy, restart) - Implements
IDisposablefor proper resource cleanup - Async HTTP requests with
Task.Run()for non-blocking queries - Real-time result updates during streaming (batched every 3 tokens or 150ms for performance)
- Automatic retry with secondary API key on failure
- Thread-safe response building with
StringBuilder - Supports multiple API schemas (OpenAI, Cohere, Google Gemini)
Error Handling
- Validates API key presence before requests
- Handles network failures gracefully
- Shows user-friendly error messages
- Configurable timeout protection (default: 8 seconds, range: 3-30)
- JSON parsing error recovery
- Automatic fallback to secondary API key
Project Structure
PowerToysRun-QuickAi/
โโโ QuickAi/
โ โโโ Community.PowerToys.Run.Plugin.QuickAi/
โ โ โโโ Main.cs # Core plugin implementation (1275 lines)
โ โ โโโ plugin.json # Plugin manifest
โ โ โโโ *.csproj # Project file
โ โ โโโ Images/
โ โ โโโ ai.dark.png # Dark theme icon
โ โ โโโ ai.light.png # Light theme icon
โ โโโ QuickAi.sln # Solution file
โโโ assets/ # README images and demos
โโโ .github/workflows/ # CI/CD automation
โโโ README.md # This file
๐๏ธ For Developers
๐ Quick Build
git clone https://github.com/ruslanlap/PowerToysRun-QuickAi.git
cd PowerToysRun-QuickAi
./build-and-zip.sh # Creates distribution-ready packages
๐งช Tech Stack
- Runtime: .NET 9.0 with Windows 10/11 target
- UI: WPF with theme-aware design
- HTTP: HttpClient with streaming support
- Architecture: Service-oriented with clean separation
- Serialization: System.Text.Json for API responses
๐ฏ Project Highlights
- Clean Code: Well-documented, testable architecture
- Multi-Platform: x64 + ARM64 builds
- Streaming: Real-time response handling
- Plugin Template: Great starting point for other PowerToys plugins
- Provider Abstraction: Easy to add new AI providers
๐ Community & Support
Show Some Love โค๏ธ
If QuickAI boosts your productivity, consider starring the repo and sharing with colleagues!
Support Development โ
Join the Community
- ๐ Report bugs
- ๐ก Request features
- ๐ค Contribute
- ๐ข Awesome PowerToys Plugins
๐ Troubleshooting
Plugin not showing up?
- โ
Check path:
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\QuickAi - โ
Verify files: Ensure
plugin.jsonexists in the folder - โ Restart: Completely exit and restart PowerToys
- โ Permissions: Run PowerToys as administrator once
API requests failing?
- โ API Key: Verify your API key is correct and active
- โ Internet: Check connection for API requests
- โ Provider: Ensure selected provider is available
- โ Model: Verify model name is supported by provider
Streaming not working?
- โ Network: Check if streaming is blocked by firewall
- โ Timeout: Increase timeout in plugin settings
- โ Provider: Some providers may have streaming limitations
"Show full response" only shows partial text?
From issue #3: this is expected when the AI response is truncated by settings, not a UI bug. The provider stops early if token limits or timeouts are too low, so the modal only shows the first words.
What to do
- โ Increase Max Tokens: Try 2048โ4096 to allow full answers.
- โ Raise Request Timeout: Low timeouts can cut responses.
- โ Provider limits: Some providers enforce their own caps.
- โน๏ธ Temperature: Only affects creativity, not length.
If you still need the full text, press Ctrl+C in the result list to copy the complete response.
โ FAQ
How do I change the AI provider?
PowerToys Settings โ PowerToys Run โ Plugins โ QuickAI โ Select provider from dropdownCan I use multiple API keys?
Yes! Configure both primary and secondary API keys. The plugin will automatically fallback if the primary fails.What models are supported?
Any model supported by your chosen provider. Popular choices include Llama 3.1, Mixtral, and provider-specific models.Is my data private?
Your queries are sent to the chosen AI provider's API. Check each provider's privacy policy for details on data handling. **NEW**: With Ollama, everything stays on your machine - complete privacy!Can I use it offline?
Cloud providers (Groq, Together, etc.) require internet. **NEW**: With Ollama, you can run AI completely offline on your local machine!How do I use Quick Commands?
Typeai / to see all available commands. Built-in commands include /read, /explain, /summarize, /translate, /fix. You can also add your own custom commands in PowerToys Settings โ QuickAI โ Custom Quick Commands using the format: /name=prompt; /name2=prompt2
How do I use Ollama for local AI?
1. Install Ollama from [ollama.com](https://ollama.com)2. Run `ollama serve` in terminal
3. Pull a model: `ollama pull llama3.2`
4. Select "Ollama" in QuickAI settings
5. Set model name to your pulled model
6. Enjoy unlimited local AI queries with zero API costs!
๐ Privacy & Security
- โ Local Plugin: All plugin functionality runs locally
- โ No Tracking: Zero analytics or telemetry from the plugin
- โ Open Source: Full code transparency
- โ MIT License: Free for any use
โ ๏ธ API Key Storage
Important Security Notice: API keys are currently stored in plain text in PowerToys settings JSON file:
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\settings.json
Security Recommendations:
- โ Use API keys with limited permissions or quotas
- โ Do not use production or billing-critical keys
- โ Consider rotating keys periodically
- โ Avoid sharing your settings.json file
- โ Use provider-specific key restrictions (IP allowlists, rate limits)
Future Enhancement: Windows DPAPI encryption for API keys is planned for a future release.
Data Privacy
- Your queries are sent to the chosen AI provider's API
- QuickAI plugin itself does not collect or store any query data
- Check each provider's privacy policy for their data handling practices
- Most providers use queries for model improvement (check provider settings to opt-out)
- ๐ Ollama: Complete privacy - all processing happens locally on your machine, no data leaves your computer
๐ License
Released under the MIT License. Free for personal and commercial use.
๐ Acknowledgements
Powered by amazing AI providers:
- Groq - Fast inference platform
- Together AI - Open-source model platform
- Fireworks AI - AI model inference
- OpenRouter - Unified AI API access
- Cohere - Enterprise AI models
- Google AI - Google Gemini models
- Ollama - Local AI model runner
Built with:
- Microsoft PowerToys - The extensible Windows productivity toolkit
- .NET - Cross-platform development platform
Special Thanks:
- @fuzhiyin-7 - For suggesting Ollama integration, bringing local AI support to QuickAI! ๐
- @WuJunkai2004 (Wu Junkai) - For ideas and contributions that inspired the major UI overhaul with dedicated ResultsWindow, markdown rendering, and improved user experience in v1.1.1! ๐จโจ
- @ELGUAPOLIFE - For the feature request that brought custom system prompts and clipboard image attachment to QuickAI in v1.2.0! ๐ฌ๐ธ