本篇延續上篇文章如何用 WXT 和 LangChain 快速打造具備 SidePanel 的 AI Chrome 擴充功能,將 SidePanel 擴充優化為「類 ChatGPT」對話介面,並加入 LLM 設定功能,探索如何結合 LangChain 與 Chrome Extension 打造更智慧的 AI 助手。
實作 類 ChatGPT」對話介面,並加入 LLM 設定功能
網路上有許多的 Chat UI ,例如 run-llama/chat-ui, reactchat 及 Ant Design X 等其他類似工具,本專案採用 Ant Design X 來建立對話機器人的界面,因為它使用起來相對比較容易。
1.安裝套件
首先,我們需要安裝 @ant-design/x
和 @ant-design/v5-patch-for-react-19
(如果使用 react 19 要安裝這個套件) 及其他需要的套件:
1 | npm install @ant-design/x @ant-design/v5-patch-for-react-19 dayjs markdown-it |
2.建立 Header (entrypoints/sidepanel/ChatHeader.tsx
)
Header 包含標題、新對話按鈕及開啟設定按鈕:
1 | import { Button, Space } from "antd"; |
3.建立設定畫面 (entrypoints/sidepanel/SettingsPanel.tsx
)
建立簡單的 LLM 設定畫面,包含 apiUrl, apiKey, model 輸入框及存檔/取消按鈕:
1 | import { Card, Input, Button, message, Form, Space } from "antd"; |
4.建立對話 UI(entrypoints/sidepanel/ChatUi.tsx
)
主要的 UI 包含 Header、訊息歷史(顯示過往對話)以及對話框(用於輸入新訊息)。
使用 markdown 格式來顯示對話(renderMarkdown
), rolesAsObject 是用來設定訊息依不同角色設定不同的顏色及 icon。
當設定完成後或是 Tab URL 有改變時,要重新建立新的 Agent。
使用者輸入訊息,按下送出後,會透過 Agent 來處理(agentRef.current.invoke
)。
1 | import { Bubble, Sender, BubbleProps } from "@ant-design/x"; |
在utils\types\message.ts
中加入export const TAB_URL_CHANGED = "TAB_URL_CHANGED";
5.在entrypoints\background.ts
中加入當前頁面 URL 變化時,發送TAB_URL_CHANGED
事件
1 | import { TAB_URL_CHANGED } from "@/utils/types/message"; |
6.加入 CSS 設定(entrypoints\sidepanel\style.css
)
1 | html, |
7.將對話 UI 加入 entrypoints/sidepanel/App.tsx
之中
1 | import ChatUi from "./ChatUi"; |
最後,執行 npm run dev
,
先到設定頁面設定 LLM ,再回到對話頁面,進行對話。

針對網頁重點整理,

查看 Agent 的 network 記錄,

在 messages 中,
0: 是使用者發出的訊息,
1: 是 LLM 要取 Call Tool 的訊息,
2: 是 Agent 呼叫 Tool 的結果
這些訊息一併發給 LLM,LLM 會根據這些訊息進行回覆。
結論
本篇文章實作了將原本的 SidePanel UI 優化為具備完整對話介面的 AI 助手,並加入設定頁面,讓使用者可以靈活調整 LLM 的參數與 API 資訊。
透過 Ant Design X 提供的 Chat UI 元件,我們快速建立了現代化的對話體驗,同時搭配 LangChain Agent 讓 SidePanel 對話具備語境感知與網頁背景整合的能力。
這樣的架構不僅可用於簡單的聊天用途,也為日後整合更多工具(如資料擷取、表單填寫、自動化操作等)奠定基礎。
例如針對表單系統,可以貼上合約內容來與畫面欄位進行比對,讓 AI 助手幫我們找出應該填寫的資訊,如下圖所示:

未來展望
未來可進一步考慮加入:
- 對話訊息的持久化與同步
- 工具(Tool)模組的整合(如查詢網頁內容、搜尋引擎等)
- 上傳附件進行處理
…
透過 Chrome 擴充功能結合 LLM,能將 AI 由「問答工具」進化為「主動型助理」,解鎖更多生產力場景。
程式碼可以參考:wxtagent程式碼
參考資源
用 Browser Extension 打造具網頁背景感知的 AI 助理,補足 LLM 的視野盲點
為什麼 AI 工具需要瀏覽器擴充功能來補全 Web 背景?
如何用 WXT 和 LangChain 快速打造具備 SidePanel 的 AI Chrome 擴充功能
wxtagent 程式碼