Chromium Manifest V3 extension for organizing tabs into native Chrome tab groups with an OpenRouter-backed LLM. The extension uses a React + TypeScript side panel, supports preview-before-apply, remembers protected group titles, and stores one undo snapshot for restoring the previous layout.
- React + TypeScript side panel UI for settings, run controls, protected groups, preview, apply, and undo
- Background service worker for Chrome tab APIs, OpenRouter requests, and last-run snapshot storage
- Shared message/type contracts between the panel and background worker
- Vitest coverage for protected-group resolution, prompt/plan validation, and restore-plan building
- Install dependencies with
npm install. - Build the extension with
npm run build. - Open
chrome://extensions. - Enable
Developer mode. - Click
Load unpackedand select [dist](/Users/matthewgold/code/LLM Browser Extension/dist) after the build completes.
- Open the side panel from the extension action.
- Add your OpenRouter API key and model ID, then save settings.
- Optionally define default categories and protected group titles.
- Refresh the current tab inventory, adjust per-run protected groups, and click
Generate preview. - Review the proposed groups, click
Apply preview, or useUndoto restore the last applied run.
npm run buildnpm run typechecknpm run test