๐ง Your All-in-One AI Browser Companion. Supercharge your Chrome experience with the power of Google Gemini, Groq (Llama 3/DeepSeek), OpenAI (GPT-4o), and Ollama (Local AI).
Omni AI is a modern, lightweight Chrome extension that integrates advanced AI models directly into your workflow. Whether you're drafting emails, debugging code, reading foreign articles, or researching complex topics, Omni AI helps you write better, read faster, and understand everything instantly.
Highlight any text on any website to see the โจ Omni AI Floating Button. One click gives you access to:
- Fix Grammar & Spelling - Professional polish in a click.
- Rephrase - Rewrite with different words for better flow.
- Summarize - Get the gist of long paragraphs instantly.
- Change Tone - Swiftly switch between Professional, Casual, Formal, and more.
- Ask AI - Direct chat contextually based on your selection.
- Persistent Chat - Popup chat retains history for multi-turn conversations.
- Context Awareness - AI remembers context from previous messages in the popup.
- Page Context - Smarter answers with awareness of the current page title and URL.
Dedicated tools for specific needs:
- Improve Clarity - Make your thoughts clearer.
- Make Concise - Cut the fluff.
- Expand - Elaborate with AI-generated depth.
- Emojify - Add the perfect emojis for social or chat.
- Universal Compatibility: Works on
input,textarea, and rich text editors like TinyMCE. - Smart Replacement: "Replace" button seamlessly updates content in complex editors.
- Translate - Supports 10+ languages including Spanish, French, German, Japanese, and Chinese.
- Primary Language - Set your native language (e.g., Vietnamese) for one-click instant translations.
- Explain - Simplifies difficult concepts, technical jargon, or complex paragraphs.
Track your productivity with the new Usage Dashboard:
- Monitor Total Actions taken.
- See how many Words Processed and Words Generated.
- Clean, grid-based visualization for your AI activity.
- Multiple AI Providers: Support for Google Gemini (1.5 Flash, 1.5 Pro, 2.0 Flash), Groq (Llama 3.3, Llama 3.1, GPT-OSS 120B), OpenAI (GPT-4o, GPT-4o Mini, GPT-4 Turbo), and Ollama (TranslateGemma, Llama 3.1, Gemma 2).
- Glassmorphic Design: A sleek, modern settings page (
settings.html) with smooth animations and high-resolution visuals. - Helper Tooltips: Interactive instructions and links to help you get your API keys quickly.
- Context Presets: Tailor AI responses for Email, Chat, Social Media, Technical, or Academic contexts.
git clone https://github.com/ddtcorex/omni-ai.git
cd omni-ai- Open Chrome and navigate to
chrome://extensions. - Enable Developer mode (top right toggle).
- Click Load unpacked.
- Select the
omni-aidirectory.
You can choose between Google Gemini, Groq, or OpenAI as your AI provider.
- Go to Google AI Studio.
- Create a new API key.
- In Omni AI, go to Settings > AI Provider and select Google Gemini.
- Paste your key and save.
- Go to Groq Console.
- Create a new API Key.
- In Omni AI, select Groq as the provider.
- Paste your key
gsk_...and save.
- Go to OpenAI Platform.
- Create a new API Key.
- In Omni AI, select OpenAI as the provider.
- Paste your key
sk-...and save.
- Ensure Ollama is installed and running on your machine.
- In Omni AI, go to Settings > AI Provider and select Ollama.
- Set your endpoint (default:
http://localhost:11434). - Important: You must configure Ollama to allow requests from the extension (CORS). See Ollama CORS Configuration below.
- Specialized Models: Omni AI supports specialized models like
TranslateGemmafor translations andDeepSeek Coderfor technical tasks.
Omni AI allows you to use any model provided by your chosen AI provider, even if it's not in the default list.
- In Settings, find the AI Model dropdown.
- Select the "Custom Model..." option for your preferred provider (e.g., Groq Custom Model...).
- A new field Custom Model Name will appear.
- Enter the Model ID provided by the AI platform (e.g.,
gpt-4o-2024-08-06for OpenAI). - Click Save Settings.
Omni AI features a smart resolution system that maps common short names to their official API IDs. You can enter a simplified name, and the extension will automatically use the correct implementation:
- Groq: Entering
llama-3.1-8bautomatically maps tollama-3.1-8b-instant. - OpenAI: Entering
gpt-4omaps to the latest stablegpt-4oversion. - Ollama: Prefix
ollama-is automatically handled if you enter a local model name.
- Groq:
llama-3.3-70b-versatile,deepseek-r1-distill-llama-70b,mixtral-8x7b-32768. - OpenAI:
gpt-4o,gpt-4o-mini,o1-preview. - Google:
gemini-1.5-pro-latest,gemini-2.0-flash-exp.
For the extension to communicate with your local Ollama server, you must set the OLLAMA_ORIGINS environment variable.
-
Run
sudo systemctl edit ollama.service -
Add the following lines:
[Service] Environment="OLLAMA_ORIGINS=*"
-
Restart Ollama:
sudo systemctl daemon-reload sudo systemctl restart ollama
-
Quit Ollama from the menu bar.
-
Run in terminal:
launchctl setenv OLLAMA_ORIGINS "*" -
Restart the Ollama application.
- Close Ollama from the system tray.
- Open Edit the system environment variables in the Start menu.
- Add a new User variable:
- Variable:
OLLAMA_ORIGINS - Value:
*
- Variable:
- Restart Ollama.
To use the personalization features (syncing settings across devices), you need to configure OAuth.
-
Go to Google Cloud Console.
-
Create a new project.
-
Navigate to APIs & Services > Credentials.
-
Create OAuth client ID > Chrome extension.
-
Detailed steps can be found in the Chrome Identity API docs.
-
Copy the
client_idand paste it intomanifest.json:"oauth2": { "client_id": "YOUR_NEW_CLIENT_ID.apps.googleusercontent.com", ... }
-
(Recommended) Copy the
keyfrom the Developer Dashboard tomanifest.jsonto keep the extension ID stable.
| Shortcut | Action |
|---|---|
Alt+O |
Open Omni AI Popup |
Alt+A |
Quick Ask Overlay (Ask AI from any page) |
Alt+R |
Rephrase (on selected text) |
Alt+T |
Translate to Primary Language |
Shortcuts can be customized in chrome://extensions/shortcuts
Omni AI currently supports 10 languages:
- ๐บ๐ธ English
- ๐ป๐ณ Vietnamese (Default)
- ๐ช๐ธ Spanish
- ๐ซ๐ท French
- ๐ฉ๐ช German
- ๐ฎ๐น Italian
- ๐ต๐น Portuguese
- ๐ฏ๐ต Japanese
- ๐ฐ๐ท Korean
- ๐จ๐ณ Chinese
The language is automatically detected, but you can pin a Primary Language in Settings for quick translations.
omni-ai/
โโโ manifest.json # Extension Manifest V3
โโโ background/ # Background service worker
โ โโโ service-worker.js
โโโ content/ # Injected scripts & UI
โ โโโ content.js # Core injection logic
โ โโโ overlay.css # Floating buttons & popups
โโโ lib/ # Shared logic & AI Providers
โ โโโ ai-service.js # AI Dispatcher
โ โโโ history.js # Statistics & History management
โ โโโ providers/ # AI Model Implementations
โ โโโ gemini.js
โ โโโ groq.js
โ โโโ openai.js
โ โโโ ollama.js
โโโ assets/ # Branding & High-res icons
โโโ settings.html # Main configuration page
โโโ settings.js
โโโ settings.css
โโโ popup/ # Extension Popup
โ โโโ popup.html
โ โโโ popup.js
โ โโโ popup.css
โโโ scripts/ # Build & Utility scripts
โโโ publish.sh # Automates ID key removal & zipping
- Manifest V3: Using the latest Chrome extension standards.
- Vanilla JavaScript: Lightweight, no heavy frameworks, maximum performance.
- Modern CSS: Variables, Flex/Grid, Glassmorphism, and smooth animations.
- Provider Architecture: Easily extendable to add new AI providers (OpenAI, Anthropic, etc.).
Follow this guide to publish Omni AI to the official Chrome Web Store.
First, you need to create a clean .zip file containing only the necessary files for the extension to run.
We provide a script that automatically handles versioning and removes the development key field (required for OAuth locally but forbidden on the Web Store).
# Make the script executable (first time only)
chmod +x scripts/publish.sh
# Run the build script
./scripts/publish.shThis will create omni-ai-vX.X.X.zip in the root directory, ready for upload.
To publish on the Chrome Web Store, you need a Google Developer account.
- Go to the Chrome Web Store Developer Console.
- Sign in with your Google Account.
- Pay the one-time $5 USD developer registration fee.
- Complete your developer profile.
- Upload: Click + New Item and upload your
.zip. - Store Listing:
- Description: Use text from this README.
- Icons: Use
assets/icons/(ensure 128x128 PNG is available or convert SVG). - Screenshots: Upload 1280x800 screenshots of the extension in action.
- Category: Productivity or Search Tools.
- Privacy & Permissions:
- Single Purpose: "Unified writing assistant and productivity tool".
- Justification: Explain
activeTab,storage,identity,contextMenususage clearly. - Privacy Policy: Link to your privacy policy (GitHub Pages or similar).
- Screenshot Quality: Use high-quality screenshots. Show the โจ floating button and the Usage Dashboard.
- Clear Description: Clearly explain that users need an API key (Gemini, Groq, or OpenAI) to use the extension.
- Permission Scope: Chrome reviewers prefer the narrowest permissions possible.
Contributions are welcome! Whether it's fixing a bug, adding a new feature, or improving documentation:
- Fork the repository.
- Create a feature branch:
git checkout -b feature/amazing-feature. - Commit your changes:
git commit -m 'feat: add amazing feature'. - Push to the branch:
git push origin feature/amazing-feature. - Open a Pull Request.
- Use Vanilla JavaScript (ES6+). Avoid adding external frameworks or heavy libraries.
- Maintain the CSS Variable system for styling.
- Ensure any new AI providers follow the existing pattern in
lib/providers/.
This project is licensed under the GPL-3.0 License - see the LICENSE file for details.
Made with โค๏ธ by ddtcorex