Agent JIT: DeepSeek Harness 插件

在 LLM agent 的開發實踐中,循環中的確定性執行路徑(例如多步工具編排、狀態維護、中間數據流轉)往往由模型逐次調用完成。這不僅消耗大量 token,還會將中間數據暴露給模型上下文。Agent JIT 是 DeepSeek Harness 的一款插件,它將這些確定性的路徑編譯成受限的 DSL 程序,並直接執行。它將“數據如何流通”的控制權從模型手中收回,讓 Agent 僅保留作爲規劃者的角色,執行層則由編譯器和運行時接管。

核心功能

Agent JIT 的核心能力在於將機械性的執行邏輯從 Agent Loop 中剝離。

1. 確定性路徑編譯

插件會將 Agent Loop 中已確定的執行路徑編譯成受限的 DSL 程序。這些程序通過 schema-validated graph runtime 進行確定性執行,不再需要模型逐次推理每一步。

2. 工具適配契約

agent-jit/adapter 提供了一個與具體 Harness 無關的最小工具適配契約。它支持工具目錄的同步 live view:每次調用 catalog 或 listTools 時都會讀取宿主當前可見的工具,而非初始化時的快照。這意味着動態註冊或卸載工具會立即反映在查詢結果中。

3. DSH 元工具與適配器

插件向 Harness 註冊了兩個元工具:
* jit_describe_tools:將工具描述爲確定性函數式契約。
* jit_execute_program:將 DSL 源碼編譯並執行。

同時,插件提供了官方 bridge agent-jit/dsh,允許用戶在 DSH 環境下直接使用這些功能。

4. 實驗模式與工具發現

默認情況下,插件只註冊元工具,不註冊實驗性的業務工具。通過配置 experimentMode: true,可以啓用實驗工具(如 github_*、crm_* 等)。宿主工具(通過 hostDiscovery)會自動被發現並註冊,支持“describe 即用”。

安裝與啓用

Agent JIT 作爲一個 DeepSeek Harness bundle,提供了預構建產物,安裝過程無需構建授權。

1. 安裝插件

推薦使用 npm 方式安裝到 web profile:

dsh plugin --profile web add agent-jit

或者直接從 GitHub 安裝:

dsh plugin --profile web add github:sybolization/agent-jit

2. 驗證安裝

安裝後,啓動 dsh web 時會自動加載。可以通過以下命令驗證配置中是否包含 agent-jit-dsl:

dsh web --dump-config

3. 關於 Profile 與依賴

  • 該插件支持安裝到 web、headless 或自定義 profile。
  • DSH 的 peer dependency 已標記爲 optional。這意味着,如果你僅使用 agent-jit/adapter 進行自建 harness 開發,可以不安裝 DSH;一旦導入 agent-jit/dsh,則需要宿主提供兼容的 Cordis、DSH Tools 和 DSH LLM。

典型用法

DSL 語法採用函數式編程風格,旨在簡化確定性的數據流轉。

示例:搜索倉庫並獲取詳情

repos = github.search_repositories(query="dsl", limit=5)
details = map(repos, github.get_repository(full_name=_.full_name))
active = filter(details, archived=false)
top = take(active, 3)
return top

示例:文件操作與結果收集

files = glob(pattern="src/**/*.ts")
top = take(files.paths, 3)
hits = web_search(query="dsh plugin")
proof = bash(command="git log --oneline -1", description="驗證")
both = collect(hits, proof)
return both

通過這種方式,原本需要 11 次模型往返的迭代調用,現在可以由 jit_execute_program 在 1 次調用中完成。

配置說明

插件支持通過配置文件進行行內 patch,控制其行爲。

關鍵配置項:

  • experimentMode: false(默認):生產環境默認不註冊實驗業務工具(如 github_* 等),僅保留元工具。設爲 true 時啓用實驗工具。
  • dsl.systemPrompt: false(默認):生產環境默認不注入 DSL system prompt,依靠工具描述中的 routingPrompt: tool-embedded 進行路由。
  • dsl.describeTools: true:控制是否註冊 jit_describe_tools。
  • dsl.routingPrompt: tool-embedded:工具描述中包含 trigger 和中性 DSL manual。

關於 adapter:

agent-jit/adapter 目前是實驗性 API。它定義了宿主邊界,包含同步 catalog 接口和異步執行接口,適合在自建 harness 中複用工具註冊和嵌套調用邏輯。

注意事項

  • 權限範圍:插件以當前 DSH 進程的權限運行。安裝前應檢查倉庫源碼與許可證。
  • 工具發現:宿主工具通過 hostDiscovery 活視圖自動發現,無需手動註冊即可在 DSL 中編排。
  • 生態獨立性:本插件位於 DeepSeek 社區目錄,與 DeepSeek / 幻方無官方從屬關係。

總結

Agent JIT 通過將確定性的執行邏輯從 LLM Loop 中 offload 到編譯器和運行時,顯著降低了 token 消耗、往返輪次和上下文暴露。它保留了 LLM 作爲規劃者的靈活性,同時讓機械性的執行步驟變得高效且確定。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜