This is an AI-powered Chrome Extension that helps users navigate complex websites. It acts as a smart sidecar, allowing users to ask "Where is X?" or "How do I do Y?" and getting direct navigation assistance.
It features a dual-mode AI backend:
- Cloud Mode: Uses Google Gemini (via Node.js) for high-intelligence reasoning and general queries.
- Local Mode: Uses a locally hosted
SentenceTransformermodel (via Python) for offline, privacy-focused, and fast semantic link matching.
- Dual AI Modes: Toggle between Cloud (Gemini) and Local (Python) AI.
- Voice Commands: Click the microphone to speak your query.
- Smart Shortcuts:
Shift + F: Toggle the chat window (won't trigger while typing).Escape: Close/Hide the chat window.bot exit: Type this command to close the chat.
- Link Highlighting: The assistant highlights the relevant link on the page before clicking it.
- Local Model Fine-Tuning: Train the local AI on your own custom data for better accuracy on specific sites.
- Firewall (Privacy Shield): Automatically blocks third-party trackers (ads, analytics) like
doubleclickandgoogle-analyticswhile keeping banking/login sites safe. - Optimized Local Navigation: Intelligent heuristics to instantly understand commands like "change password" or "edit settings" without wait times.
git clone <repository-url>
cd Hackathon-Hacktide- Open Chrome and navigate to
chrome://extensions. - Enable Developer Mode (top right).
- Click Load unpacked and select the
Hackathon-Hacktidefolder.
You need to run both servers for full functionality.
Node.js Server (Cloud Mode)
cd server
npm install
# Create a .env file with GEMINI_API_KEY=your_key
node server.jsRuns on port 3000.
Python Server (Local Mode)
cd server
pip install flask flask-cors sentence-transformers
python ai_server.pyRuns on port 5000.
You can fine-tune the local AI model to understand specific jargon or website mappings.
- Edit Data: Open
server/training_data.jsonand add your examples:{ "query": "Where can I see my grades?", "positive": "Academic Reports", "negative": "Hostel Fee" } - Train: Run the training script.
cd server python train.py - Restart: Restart
ai_server.pyto load the new model.
manifest.json: Chrome extension configuration.content.js: Main logic injected into webpages (UI, event listeners).styles.css: Styling for the chat interface.server/: Backend code.server.js: Node.js server for Gemini API.ai_server.py: Python server for local embeddings.train.py: Script to fine-tune the local model.
- Open any webpage.
- Press
Shift + For click the 🤖 icon to open the assistant. - Type your question (e.g., "Login page", "Contact support").
- The AI will find the best link, highlight it, and navigate for you.