Skip to content

Releases: JS-PACKAGE/WebChatMCP.js

v1.8.1

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 07 Oct 08:57

修正

  • Hermes 提供商改用 config.yaml 的免金鑰具名 endpoint providers.webchat,修正安裝後仍要求 API_KEY、驗證失敗與模型清單無法讀取的問題。
  • 安裝時確認橋接與模型清單;空清單會自動擷取,全部服務讀取失敗時不修改 Hermes 設定。
  • 重新安裝會移除本外掛舊 profile 與有標記的假金鑰區塊,保留其他金鑰、提供商及目前選用的模型。反安裝只移除本腳本建立的 endpoint。
  • 同步 Linux/macOS、PowerShell 安裝與反安裝腳本,以及三語 README 和官網說明。

升級

先啟動 WebChatMCP,再於更新後的倉庫重新執行安裝:

plugins/hermes/install.sh

Windows:

powershell -ExecutionPolicy Bypass -File plugins\hermes\install.ps1

重啟 Hermes,在 /model 或 hermes model 選 WebChat (WebChatMCP),不需要輸入 API_KEY。需要支援具名 providers: endpoint 的 Hermes 與其 Python/ruamel.yaml;自動尋找不到 Python 時,可指定 --python PATH 或 -Python PATH。

驗證

  • npm run build、npm run gen:design 與 npm test 通過:168 項測試,無失敗或略過。
  • 隔離沙盒實跑 sh/PowerShell 安裝與反安裝。
  • 實際 Hermes 模型選單、模型清單讀取與 SDK 呼叫通過(隔離瀏覽器測試頁)。
  • 實際 stdio MCP handshake 回報版本 1.8.1。

v1.8.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 07 Oct 06:33

新功能

  • 新增選用的本機 CDP 除錯入口:設定 WEBCHATMCP_CDP=1 後,Chromium 在 127.0.0.1 分配隨機 port,WebSocket 端點寫入 stderr,並由 webchat_status 的 cdp.enabled/cdp.endpoint 回報。
  • CDP 端點隨瀏覽器關閉清空、重啟更新;除錯用戶端斷線不會關閉主瀏覽器。預設關閉、無認證,請勿轉送 port 或提供給不信任的工具。

效能與穩定性

  • 提示送出後並行預載下一題的無痕聊天頁,重用相容的載入中頁面,保留模型與思考深度設定的正確語意。
  • 回覆取樣傳輸增量與變更標記,模型選單批次讀取,快取 UA 探測結果,減少瀏覽器協定傳輸與等待。
  • MCP SSE 收到完整結果即交付,不再等待 EOF;HTTP 回應關閉連線,避開 Node fetch 重用閒置連線的延遲。
  • 維持六個宿主外掛的上下文與工具往返語意,同步三語 README、官網及驗收說明。

驗證

  • npm run build、npm run gen:design 成功。
  • npm test:164 項測試全數通過。
  • 實跑可視/無頭 CDP 接入、端點生命週期與 stdio MCP 流程;v1.8.0 runtime handshake 驗證通過。

v1.6.1

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 13:46

變更

  • 修正:omp/pi 的 /webchat-logout 省略服務時原本只登出 ChatGPT;現在省略=ChatGPT、Claude、Grok、Gemini 全部登出,也能一次指定多個服務(例如 /webchat-logout claude gemini)。
  • Codex 外掛支援思考深度:
    • 重新擷取模型清單時,ChatGPT、Claude、Gemini 會逐一切到每個模型,讀出該模型各自的思考深度,最後切回原本的模型(比以前慢,只發生在重新擷取時;--refresh-models 的逾時拉長為 30 分鐘)。
    • 網頁上有兩段以上深度(ChatGPT 滑桿、Claude 努力程度)的模型,會在 Codex 宣告成 reasoning 選項,值是網頁標籤原樣;Codex 送來的 reasoning.effort 若是該模型的標籤,送出前會先在網頁設好。
    • 只有開關型(Gemini)或沒有思考設定(Grok)的模型維持單一 medium,effort 會被忽略。
  • 修正:模型名稱比對改為完全相同優先,其次才是包含(選 GPT-5 不會誤選排在前面的 GPT-5.5)。

驗證

  • npm test 109 項全過。以真實 Codex 0.160.1 驗證:設定自訂 effort 後橋接收到原樣字串;Codex 能解析並保留自訂的 reasoning 選項。
  • 尚未確認:Codex 選單畫面實際顯示、逐模型擷取在真實登入帳號上的行為(只用假頁面測過)。其他宿主外掛(Claude Code、Grok Build、Hermes、omp、pi)還不會傳思考深度。

v1.6.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 13:24

變更

  • webchat_ask 新增 thinking? 參數:依 webchat_models 回傳的 thinking[].label 設定思考深度,在選完 model 之後才套用(可選的深度會隨模型而異)。
    • ChatGPT:走訪思考強度滑桿取得各段名稱,以方向鍵移到目標段並以讀數確認;比對不中時滑桿還原。
    • Claude:點選「努力程度」子選單中對應的選項。
    • Gemini:把「延伸思考」這類開關打開;已開啟就不再點,因此不能用來關閉。
    • Grok 沒有獨立的思考設定(併在模式裡),請用 model 選擇。
  • 新增錯誤碼 thinking_not_found:標籤不在 thinking 清單內,或該服務沒有思考設定。
  • 標籤比對先取完全相同者,再取包含關係者(High 不會先被 Extra high 吃掉)。
  • README(三語)、官網、AGENTS、PLAN 同步更新。

驗證

  • npm test 105 項全過(新增 ChatGPT 滑桿、model 與 thinking 的先後順序、Claude 子選單、Gemini 開關四項假頁面測試)。
  • 尚未在真實登入帳號上實測滑桿/子選單/開關;既有的 omp、pi、Codex、Claude、Grok、Hermes 橋接尚未接上 thinking。

v1.5.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 13:06

變更

  • 所有模型外掛(omp、pi、Codex、Claude Code、Grok Build、Hermes)支援本機工具往返:網頁模型只用嚴格的 JSON 信封(綁定每次請求的 nonce,比對宿主工具名稱與必要參數)提出要求,外掛轉成宿主原生工具呼叫,由宿主依自己的權限與確認設定在本機執行,結果再送回網頁模型,直到它給出答案。模型自由輸出的文字永遠不會被執行。
  • 新增共用協定 plugins/lib/tool-protocol.js;每次網頁聊天都是全新的無痕聊天,所以每一輪都重新帶入系統提示(截斷 24k 字元)、對話、先前的工具要求與結果(每則結果截斷 50k 字元)。
  • 以真實 omp 完整驗證過一次往返;其餘外掛由單元與橋接測試覆蓋。

注意

  • 你讓宿主讀取的檔案內容與指令輸出,會傳到所選網頁服務的平台。
  • 模型漏填必要參數或亂叫工具時,該回合以宿主的原生錯誤結束,不會自動重試。
  • 更新後請重啟 MCP 伺服器,並重啟 omp/pi/Codex/Claude Code/Grok/Hermes 以載入新版外掛。
  • HTTP endpoint 仍無認證,預設只綁 127.0.0.1。

v1.4.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 11:18

變更

  • /webchat-login 不帶參數時依序檢查 ChatGPT、Claude、Grok、Gemini,不再只查 ChatGPT。已登入不開視窗;指定服務仍只檢查該服務。
  • 模型清單不再加入沒有標籤的服務名稱(webchat/chatgpt、ChatGPT (WEB) 這類)。omp、pi、Codex、Claude、Grok、Hermes 都只列出擷取到的 服務/模型標籤,要先 refresh。

注意

  • 更新後請重啟 MCP 伺服器,並重啟 omp/pi 以載入新的外掛。
  • HTTP endpoint 仍無認證,預設只綁 127.0.0.1。

v1.3.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 10:35

新功能

  • 外掛目錄 plugins/:用一個 JSON 檔新增聊天服務(~/.webchatmcp/plugins/ 亦可);只載入資料,不執行程式碼。
  • 程式外掛讓這些工具把 WebChatMCP 當成模型來源(沒有工具呼叫、沒有逐字串流):
    • Oh My Pi、Pi:模型提供商 webchat(omp --model webchat/chatgpt、pi --model webchat/chatgpt)。
    • Codex、Claude Code、Grok Build:模型名稱結尾為 (WEB) 的網頁模型;官方模型原樣轉送。安裝時會先關閉該程式。
    • Hermes Agent:模型提供商 webchat(hermes --provider webchat -m chatgpt)。安裝時寫入假的 WEBCHAT_API_KEY(橋接不驗證),不改 model.provider。
  • 每個需要裝進其他程式的外掛都附 install/uninstall 的 .sh 與 .ps1。
  • 遠端一行安裝:curl -fsSL https://webchatmcp.js-package.xyz/script/install.sh | bash(Windows 用 irm)。缺 git/Node.js 會補齊,原始碼 clone 到 ~/.webchatmcp/app。
  • 安裝後登入時自動啟動(macOS launchd、Linux systemd --user 或 crontab @reboot、Windows 工作排程器);status 會顯示自動啟動。反安裝會收回腳本啟用的 linger。

注意

  • Windows 與 Linux 腳本尚未在實機上完整驗證(macOS 已測)。
  • 網頁模型只有文字。Codex/Claude 橋接開啟時,WebChatMCP 伺服器沒在跑,官方模型也會連不上。
  • HTTP endpoint 仍無認證,預設只綁 127.0.0.1。

v1.2.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 08:50

新功能

  • 新增安裝、背景執行與更新腳本(script/):
    • Linux/macOS:install.sh、uninstall.sh(macOS 用 launchd,Linux 用 systemd --user,不可用時退回 nohup)。
    • Windows:install.ps1、uninstall.ps1(工作排程器,隱藏視窗、失敗自動重啟)。
    • 不需 root/系統管理員;Node.js 不足時下載官方版本並驗證 SHA-256。
    • 更新時先關閉執行中的服務(含殘留的 WebChatMCP.js 行程),再 git pull、重新建置、重新啟動;沒有新版就不動。
    • 反安裝預設保留登入 profile(--purge-profile/-PurgeProfile 才刪)。
  • 官網與 README 加入安裝/更新說明。
  • 官網加入中文 og/twitter 分享標籤與中文分享圖。

注意

  • Windows 與 Linux 腳本尚未在實機上驗證(macOS 已完整測試)。
  • 腳本以 npm ci 安裝相依套件,更新時會忽略並還原 dist/。

v1.1.0

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 08:32

新功能

  • 支援 Claude、Grok、Gemini(與 ChatGPT 並列);所有工具新增 provider 參數(預設 chatgpt)。
  • 各服務的無痕入口:ChatGPT ?temporary-chat=true、Claude ?incognito=、Grok /c#private、Gemini 載入後點「臨時對話」。
  • 訪客模式:ChatGPT、Gemini 不登入也能使用;Claude、Grok 必須登入。
  • webchat_models 新增 thinking 思考深度清單(ChatGPT 滑桿、Claude 努力程度、Gemini 延伸思考)。
  • 新增 webchat_logout:清除該服務網域 cookie,不顯示視窗。
  • webchat_login 先無頭查詢登入狀態,已登入不顯示視窗;預設無頭,僅人工登入/Cloudflare 驗證需要時才顯示。

修正

  • 模型清單只取 menuitemradio,並處理 ChatGPT 被思考強度視圖遮住的選單,修正指定模型時點擊逾時。
  • 無頭模式改用一般 Chrome UA 並可自動暫時開視窗通過 Cloudflare 驗證。

注意

  • 更新後請重啟 MCP 伺服器。
  • 內部改名:ChatGPTSession → WebChatSession(src/session.ts)。

v1.0.1

Choose a tag to compare

@YueyuHoshizora YueyuHoshizora released this 06 Oct 07:00

修正登入後 MCP 伺服器取不到網頁資料的問題:

  • 登入後跟隨 ChatGPT 新分頁,並以可見指標判定登入狀態
  • 送出前記錄助理訊息基準,避免快速回覆被漏掉
  • 送出前等待輸入框就緒,取代固定延遲
  • 更新輸入框、送出鈕、停止鈕、模型選單、臨時聊天與助理回覆選擇器以符合現行 ChatGPT 介面
    更新後請重啟 MCP 伺服器。