前言¶
用 AI 助手寫代碼、查資料時,回覆裏經常混着 RAG、LoRA、MCP 這類術語。不認識就得中斷當前話題:要麼複製出去搜,要麼在對話裏追問——前者打斷節奏,後者會污染上下文。
下面介紹一個把這件事自動化的小插件:what-was-that。它在 DSH 的 web 界面裏放一隻小章魚桌面寵物,自動掃描 AI 回覆裏的術語,用大白話給你解釋。
這是什麼¶
what-was-that 是 SH-9999 開發的一個 DSH 靜態客戶端插件(運行在 web 平臺),MIT 許可,已發佈到 npm(what-was-that@0.1.9,壓縮包 212 KB,解壓 1.3 MB)。它的定位用作者的話說就是:一個可愛的小章魚桌面寵物插件,自動幫你“看懂” AI 回覆裏的術語和黑話。
從原型階段的“粘貼 JS”重寫爲規範的 TypeScript 靜態插件包:源碼在 src/,資源(詞庫、寵物 SVG)隨包內置,通過 import.meta.url 相對解析,不依賴寫死的絕對路徑。
核心功能¶
桌面寵物¶
章魚有四個狀態:呆萌、疑惑、思考、開心,形象是透明 SVG,深淺色主題自適應,可以拖動。
自動掃描與本地詞庫¶
插件自動掃描 AI 回覆正文,命中本地詞庫裏的術語時,章魚身上出現紅點角標並彈出氣泡輕提示。本地詞庫共 255 條,全部用大白話解釋,零消耗、不聯網。
AI 深挖¶
本地解釋不夠時,點“再講深一點點”,讓模型繼續解釋,多輪遞進:短解釋 → 換個說法 → 長解釋 → 到底線。
對話區選詞¶
在對話區直接框選一個不認識的詞(10 字以內),選區旁會彈出大白話解釋卡片,點卡片外任意處關閉。這是靜態插件專屬、需要 DOM 才能實現的功能。
可設置¶
- 解釋用哪個模型:默認跟隨對話,也可以固定選一個已配置的模型,設置重啓後保持,僅當該模型消失時才退回默認。
- 選到詞庫外的詞時,是否彈“幫我解釋”提示。
隱私與權限設計¶
這部分值得單獨說:
1、不註冊任何模型工具(Tool),只做觀察和展示。
2、不讀取模型“思考中”的內部過程,只關心最終回答正文。
3、絕不把完整回覆發回模型。AI 深挖只發送你點中的詞加上前後各 80 字,並且帶緩存。
安裝與啓用¶
要求機器上已安裝 pnpm(dsh plugin 命令依賴它),Node 版本 >= 22(package.json 的 engines 字段)。在 DSH 的 profile 裏執行:
dsh plugin --profile web add what-was-that
裝完重啓 dsh web 並硬刷新(Ctrl+Shift+R),右下角出現小章魚即成功。
沒有 pnpm 時,可以把倉庫裏的 lib/ 產物放進 profile 手動掛載(cordis.patch.yml 聲明瞭掛載點),無需編譯。
開發者:本地構建¶
想自己改源碼的話,先裝依賴(esbuild、typescript 都只在 devDependencies),再執行構建腳本:
pnpm install
node build.mjs
node build.mjs 會打包出 lib/index.js 和 lib/client.js,並複製 assets。倉庫配置了 GitHub Actions CI,每次 push/PR 自動跑 typecheck + 測試 + 構建。插件零運行時依賴,只用 DSH 自帶接口,可以隨時停止或刪除,不留全局副作用。
適用場景與注意¶
適合在 DSH web 界面裏對話的用戶,尤其是剛入門、經常被術語卡住的人。詞庫覆蓋不到的詞,可以用選詞加 AI 深挖兜底。
安裝前提醒一點:插件以當前 dsh 進程的權限運行,裝之前建議先看一遍源碼和許可證。這個倉庫是 MIT,源碼、詞庫、構建產物都在 GitHub 上 openly 可查。
結尾¶
what-was-that 解決的是一個小但高頻的問題:AI 回覆裏看不懂的詞,不用再打斷手頭的事去查。詞庫本地解釋零消耗,深挖時也只發送最小上下文,權限收得很乾淨。
- 社區目錄頁:https://www.skillhub.cn/plugins/SH-9999/what-was-that
- GitHub 倉庫:https://github.com/SH-9999/what-was-that
有問題可以通過倉庫的 Issue 反饋。