VacantAI 的可究責層GitHub

開始 · 安裝 / 需求 · 

安裝

Vacant 是 Python 套件 vacant-network,安裝後用 vacant on 從選單挑你電腦上已有的 AI 助手,在中介之下啟動,不改動你的常駐設定。

#需求

Python3.11 以上
作業系統macOS、Linux(Windows 的沙箱無法建置)
模型通道任何 OpenAI 相容端點:LM Studio、Ollama、vLLM,或雲端 API
AI 助手指令列代理(Codex、OpenCode、Claude Code、pi…),或你自己接的 OpenAI 相容代理

#三種接法,強制程度不一樣

這是安裝前最該知道的一件事。Vacant 對「每一通都經過我」這件事的保證,範圍取決於它怎麼接。

形態強制性說明
函式庫/MCP 工具自願代理在自己的設定註冊 Vacant 的 MCP 伺服器,可以呼叫 delegate 等工具。代理不呼叫,Vacant 也無從介入。
控制器只對親手啟動的子行程先委派、驗收、再啟動下游代理。保證只涵蓋透過這個控制器啟動的行程;同一作業系統使用者可以直接繞過它執行代理。
擁有迴圈的執行框架完全強制生成、驗收、出貨都由它控制。增益實驗的 runner 屬於這一類。

2026 年 7 月的一次實測保存了反面教材:Hermes 代理少設一個環境變數,就安靜地直接連到外部服務。除了 requests_seen 為零之外,那一格的每一個欄位都像一次合法的拒交。所以收據上的 requests_seen 欄位是唯一能證明中介真的發生過的證據——「我設了環境變數」不是證據。

#安裝

git clone https://github.com/cosmopig/Vacant.git
cd Vacant
pip install -e .
# 或
pip install git+https://github.com/cosmopig/Vacant.git

#兩種啟動方式,證據等級不同

#vacant on(不改你的設定,建議)

vacant on

從選單挑你電腦上實際存在的命令列代理,在中介之下啟動它。vacant on 把 base URL 寫進這一次執行自己的暫存設定目錄,不改動你的常駐設定檔。選單上會標出每一種代理的通道驗證到什麼程度,例如「通道已驗」或「通道沒量過,跑完請看 requests_seen」。

#vacant install(改常駐設定)

把代理的常駐設定改掉。兩者的證據等級不同,不能互相背書——用 install 跑出來的收據不能拿來證明 on 的通道是通的。

#交付點在哪

2026 年 9 月 18 日加入的 vacant run 建立在一個觀察上:若只是要攔下交付,觸發點不在網路協定上,而在代理行程結束的那一刻。這個訊號完全可靠、不需要任何協定知識、不耗 token,而且跨所有框架成立。

它的流程:

  1. 啟動本機代理伺服器,依一份名單設定代理的 base URL 環境變數;把真實上游位址與金鑰從代理的環境中移除,只留在代理伺服器行程。
  2. 記錄工作區的樹雜湊。
  3. 啟動代理並等待結束;結束後終止整個行程群組,以防孫行程在凍結後寫入。
  4. 在凍結的工作區快照上執行可見驗收,並再量一次樹雜湊;不相等則標為基礎設施失敗。
  5. 簽下每次嘗試與每格裁決,以退出碼反映裁決。
退出碼意義
0交付
20拒交
22基礎設施失敗(樹雜湊對不上)

#收據等級

收據會說清楚自己證明了多少。等級由探針結果決定,不是由「我們裝過了」的推論。

等級條件收據能說的話
A圍欄成立、框架掛鉤的探針已觸發、未解釋的呼叫數為 0每一通模型呼叫都經過 Vacant,且都對得上一個工具事件
B圍欄成立,沒有掛鉤每個離開的位元組都有紀錄,但分不出哪一通是模型發出的
B′模型通道不在(或不完整在)Vacant 眼前,但工���層有紀錄只能說明工具層事件
C兩者皆無拒發收據

第一張真實代理的 A 級收據簽於 2026-09-20(pi 0.85.1 在真模型上執行,未解釋呼叫數為 0)。涵蓋性欄位全部採三態(真、假、未量)——未量到的值不得寫成零或假。

#接下來

最後更新: · 閱讀約 4 分鐘

世新大學世新大學資訊傳播學系Vacant

世新大學資訊傳播學系 2026 畢業專題・實體展覽