數位時代的鬼故事集 — Ghost Stories for the Digital Age
姑妄言之姑聽之,豆棚瓜架雨如絲 料是厭作人間語,愛聽秋墳鬼唱詩
「你有沒有想過,那些配額數字是從哪裡來的?」 「…我不敢想。」 — 最後搜索時間:2026-01-26 14:40
這個故事,從一句鬼話開始。
某個配額監控專案的開發者,在他的 README 裡這樣寫著:
「Antigravity 介面上有一個肉眼看不到的隱藏 UI,會顯示配額資訊。 我們的套件透過捕捉這個隱藏 UI 來顯示配額給你。」
Shadow DOM?隱藏元素?技術駭客的浪漫。
我信了。
我想:如果他能做到,我也能做到。 於是我開始了自己的實作。
我寫了一個 DOM 搜索腳本。
const walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT);
// 搜索所有可能包含 quota、usage、remaining 的元素...
// 找到那個隱藏的 UI。證明它存在。
Shadow DOM 穿透、MutationObserver 監聽、所有可能藏匿秘密的角落…
我按下執行鍵,期待著那個被隱藏的真相浮現。
結果回來了。
{ "ok": false, "found": [] }
什麼都沒有。
我不信。我擴大搜索範圍。搜索所有百分比符號。
{ "count": 0, "samples": [] }
零個結果。
數位驗屍官註解: DOM 裡什麼都沒有。 沒有隱藏的 UI。沒有 Shadow DOM。沒有被遮蔽的元素。 那個開發者說的「隱藏 UI」,從來就不存在。
我開始懷疑自己。 那些配額套件明明能顯示數字。 如果不是從 DOM 抓的,那數字是從哪來的?
我停止盲目搜索。打開了 Network Tab。
在那堆 gRPC 請求的深處,我看見了真相:
/exa.language_server_pb.LanguageServerService/GetUserStatus
這才是那些配額數字的來源。
不是什麼隱藏的 UI。 不是什麼神奇的 DOM 捕捉。
現在我知道配額來自 Language Server 的 GetUserStatus。
但問題是:怎麼取得它?
直接向 Language Server 發送請求,問它要配額資料。
問題:
只監聽 Language Server 已經發出的配額請求,解析它,顯示結果。
問題:
數位驗屍官的判決: 方法 B 是道德上正確的做法——你只是在聽,不是在問。 但代價是:你永遠不知道下一次更新是什麼時候。 這是為了安全而付出的不確定性代價。
那個開發者說的「隱藏 UI 捕捉」是謊言。 可能是無知。可能是行銷話術。可能是自我欺騙。
但謊言已經被散播了。
而真相是:
GetUserStatus 端點| 方法 | 風險 | 代價 |
|---|---|---|
| 官方方法 | 零 | 等到用完才知道 |
| 主動詢問 | 灰色地帶 | 可能被視為異常行為 |
| 被動監聽 | 低 | 十分鐘到數小時才更新一次 |
| 不要看 | 零 | 內心平靜 |
有時候,看不見的東西,就讓它看不見吧。
恐怖程度: 💀💀
鬼故事類型: 技術謊言 / 灰色地帶 / 資訊隱藏
關鍵字: DOM, GetUserStatus, Language Server, 灰色地帶
發生時間: 2026-01-26 14:00-14:40
倖存狀態: ⚠️ 已知真相,但無法消除風險
「專案的 README 告訴你作者最初的美好幻想 Commit 與 Issue 裡才告訴你真相 而 Network Tab 裡,藏著連作者都不想讓你知道的秘密」
愛聽秋墳鬼唱詩 ——那些配額數字,是 Language Server 在黑暗中低語的詩句。 你聽見了,但你不該聽見。