ローカルLLMを使用してWebページを素早く要約・チャットできるChrome拡張機能。
- サイドパネルUI: ページを見ながらチャット形式で会話
- ローカルLLM: vLLM(OpenAI API互換)を使用、データは外部に送信されない
- 会話履歴: タブごとに会話を保持
- ストリーミング: リアルタイムで応答を表示
- Bun
- Chrome 114+(Side Panel API対応)
- vLLMサーバー(
http://localhost:8000で起動)
bun installbun run buildchrome://extensionsを開く- 「デベロッパーモード」を有効化
- 「パッケージ化されていない拡張機能を読み込む」をクリック
.output/chrome-mv3フォルダを選択
# 使用するモデルを指定してvLLMサーバーを起動
vllm serve <モデル名> --port 8000利用可能なモデルはUIのドロップダウンから選択可能。
- 任意のWebページで拡張機能アイコンをクリック
- サイドパネルが開き、「このページを要約して」が入力済み
- Enterキーで送信
- 続けて質問可能
# 開発モード(ファイル変更を監視)
bun run dev
# テスト実行
bun test
# 型チェック
bun run typecheckサイドパネルのヘッダーにある設定アイコンから、以下を UI 上で変更可能:
- サーバーURL: vLLM API のエンドポイント(デフォルト:
http://localhost:8000/v1) - モデル: vLLM サーバーから動的に取得し、ドロップダウンで選択
- Temperature / Max Tokens: 生成パラメータの調整
briefer/
├── entrypoints/
│ ├── background.ts # Service Worker(Side Panel開閉 + コンテキストメニュー)
│ └── sidepanel/ # Side Panel UI(React)
│ ├── components/
│ └── hooks/
├── lib/ # 共通ライブラリ(型定義、APIクライアント、設定管理等)
├── public/ # アイコン等の静的アセット
├── tests/ # テスト
├── wxt.config.ts # WXT設定(manifest定義)
└── .output/chrome-mv3/ # ビルド成果物
MIT