A browser extension that adds keyboard shortcuts to Google Gemini, making your AI conversations faster and more efficient.
- Custom Keyboard Shortcuts - Navigate Gemini with customizable key combinations
- Toggle AI Models - Quickly cycle through the available Gemini models
- Theme Switching - Cycle through System, Light, and Dark themes
- Temporary Chat - Toggle Gemini's temporary chat mode with a hotkey
- Help Overlay - Press
⌘/to see all available shortcuts at a glance - Cross-Browser Support - Works on Chrome, Firefox, and Edge
- Sync Across Devices - Your shortcut preferences sync via browser storage
| Action | Mac | Windows/Linux |
|---|---|---|
| New Chat | ⌘⇧O |
Ctrl+Shift+O |
| Search Conversations | ⌘⇧K |
Ctrl+Shift+K |
| Action | Mac | Windows/Linux |
|---|---|---|
| Show Help | ⌘/ |
Ctrl+/ |
| Focus Input | / |
/ |
| Toggle Sidebar | ⌘⇧S |
Ctrl+Shift+S |
| Toggle Model | ⌘⇧M |
Ctrl+Shift+M |
| Stop Generation | Esc |
Esc |
| Copy Last Response | ⌘⇧C |
Ctrl+Shift+C |
| Toggle Theme | ⌘⇧L |
Ctrl+Shift+L |
| Toggle Temporary Chat | ⌘⇧P |
Ctrl+Shift+P |
- Visit the Chrome Web Store (link coming soon)
- Click "Add to Chrome"
- Navigate to gemini.google.com
- Press
⌘/(Mac) orCtrl+/(Windows) to see all shortcuts
- Visit Firefox Add-ons (link coming soon)
- Click "Add to Firefox"
# Clone the repository
git clone https://github.com/k4lok/gemini-shortcuts.git
cd gemini-shortcuts
# Install dependencies
bun install
# Build for Chrome
bun run build
# Build for Firefox
bun run build:firefoxThen load the extension:
- Chrome: Go to
chrome://extensions/, enable Developer Mode, click "Load unpacked", select.output/chrome-mv3 - Firefox: Go to
about:debugging#/runtime/this-firefox, click "Load Temporary Add-on", select any file in.output/firefox-mv2
# Start development server with hot reload
bun run dev
# Start development for Firefox
bun run dev:firefox
# Type check
bun run compile
# Build for production
bun run build
# Create distributable ZIP
bun run zip- Framework: WXT - Modern Web Extension Framework
- UI Library: React 19 with TypeScript
- Styling: Tailwind CSS v4 + shadcn/ui
- State Management: Zustand
- Package Manager: Bun
├── entrypoints/
│ ├── content.ts # Keyboard shortcut engine
│ ├── background.ts # Service worker
│ ├── popup/ # Extension popup UI
│ └── options/ # Settings page
├── lib/
│ ├── types.ts # TypeScript interfaces
│ ├── defaults.ts # Default shortcut configurations
│ ├── storage.ts # Chrome storage utilities
│ ├── selectors.ts # Gemini DOM selectors
│ ├── actions.ts # Shortcut action handlers
│ └── help-overlay.ts # In-page help modal
├── components/ # React components
├── stores/ # Zustand stores
└── public/ # Static assets
- Click the extension icon in your browser toolbar
- Click "Settings" to open the options page
- Click on any shortcut badge to record a new key combination
- Toggle shortcuts on/off using the switch
- Click "Reset All" to restore defaults
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Global Gemini search hotkey (browser-wide quick search)
- Enhanced settings page UI
- More shortcut actions
This project is licensed under the MIT License - see the LICENSE file for details.
- WXT Framework for the excellent extension development experience
- shadcn/ui for beautiful UI components
- Google Gemini team for building an amazing AI assistant
Note: This extension is not affiliated with Google. Gemini is a trademark of Google LLC.