AI-powered browser agent extension — control tabs, windows, bookmarks, history, downloads, cookies, and more with natural language.
- 🧠 Natural Language — Control your browser via a sidebar chat interface
- 🗂️ Full Browser Management — Tabs, windows, groups, bookmarks, history, downloads, cookies, sessions, and more
- 🔒 Safety Guardrails — Sensitive operations require user confirmation to prevent accidents
- 🎯 Cross-Browser — Supports both Chrome (MV3) and Firefox
- 🧩 Extensible Tool System — Phased registration with Expert Mode support
- 🎤 Voice Input — Voice interaction support (in development)
# Install dependencies
npm install
# Dev mode (Chrome)
npm run dev:chrome
# Dev mode (Firefox)
npm run dev:firefox
# Build
npm run build
# Build all browser versions
npm run build:all
# Run tests
npm run test:run
# Lint
npm run lint
# Type check
npm run typecheck| Category | Technology |
|---|---|
| Framework | WXT — Next-gen Web Extension Framework |
| UI | React 18 + TypeScript |
| Styling | TailwindCSS v4 |
| Build | Vite |
| Testing | Vitest + Playwright + Testing Library |
| Lint | ESLint + Prettier |
src/
├── adapters/ # Chrome/Firefox browser adapter layer
├── agent/ # Agent loop, context, system prompts
├── background/ # Service Worker logic
├── chat/ # Chat logic
├── content/ # Content Script
├── conversation/ # Conversation management
├── entrypoints/ # WXT entrypoints
│ ├── background.ts
│ ├── content.ts
│ └── sidepanel/ # Sidebar UI (App.tsx + components)
├── guardrail/ # Safety guardrails, confirmation
├── provider/ # LLM & voice recognition clients
├── registry/ # Tool registration
├── tools/ # Browser API tools
│ ├── tabs/ # Tab operations
│ ├── bookmarks/ # Bookmark operations
│ ├── cookies/ # Cookie operations
│ ├── downloads/ # Download management
│ ├── history/ # History
│ ├── sessions/ # Session snapshots
│ ├── windows/ # Window management
│ ├── tabgroups/ # Tab groups
│ ├── page/ # Page content reading
│ └── misc/ # Miscellaneous
├── types/ # Type definitions
└── shared/ # Shared utilities
| Browser | Manifest | Output |
|---|---|---|
| Chrome | MV3 | .output/chrome-mv3/ |
| Firefox | MV2 | .output/firefox-mv2/ |
# Package as zip
npm run zip
# Full build + verification
npm run pre-releaseDefault: tabs, windows, tabGroups, bookmarks, history, downloads, sessions, page content, cookies, storage, clipboard, notifications, contextMenus, sidePanel (Chrome), alarms
Expert Mode (manual enable): proxy, privacy, management, debugger, webRequest, declarativeNetRequest, nativeMessaging, identity
# Run tests (watch mode)
npm run test
# Run specific tests
npx vitest run src/tools/tabs
# E2E tests
npx playwright test
# Format code
npm run format