前言¶
DeepSeek Harness (DSH) 是面向開發者的基座。隨着模型能力的演進,模型將具備“元認知”,能夠自我剖析。在有限的上下文中,傳統 harness(包括 DSH)通常在超過閾值後被動壓縮上下文,模型無法干預。DSH 的設計方向是配合模型的元認知,讓模型容易地編輯自己的上下文,並能夠爲自己添加和刪除工具。dsh-tools-meta 正是這一方向的具體實現,它把“爲自己添加和刪除工具”變成模型可以直接調用的動作。
插件定位¶
名稱:dsh-tools-meta
核心價值:允許 agent 在 DSH 裏爲自己動態增刪工具。新增的工具可以跨 DSH 重啓存在。
維護者:DViridescent
核心功能¶
- 動態增刪工具:允許 agent 在 DSH 裏爲自己動態增刪工具。
- 持久化:新增的工具可以跨 DSH 重啓存在。
- 可寫資產:工具目錄是模型自己的可寫資產。
- 比 Skill 更直接:工具一旦註冊就進入目錄,調用時不需要“讀 skill + bash 跑腳本”,一個工具調用直達。
- 複用現有能力:增刪工具完全複用模型已有的文件工具,零新增工具。
- 實現簡單:代碼量約 200 行。
- 可被認知:agent 可以直接閱讀源碼,理解甚至修改插件本身。
安裝與啓用¶
使用 DSH 的插件安裝命令添加此插件。
dsh plugin --profile <name> add dsh-tools-meta
使用方式¶
插件與一個簡短的 skill 配合使用,不增加額外的模型工具。
1. 工具目錄與註冊¶
- 目錄位置:
$DSH_HOME/tools-meta/<name>.ts。TS 模塊,工具名 = 函數名 = 文件名。 - 註冊機制:插件在每個模型 step 前掃描該目錄。目錄指紋變化時重建註冊:新增自動註冊、修改熱更新、刪除即卸載。
2. Skill 指引¶
meta-tools skill 在運行時註冊,內容會注入工具目錄與插件源碼的絕對路徑,指示模型按指示寫入、修改或刪除腳本。
3. 腳本格式¶
模型生成的工具腳本需符合以下格式:
export const description = '一句話:工具做什麼、何時用。'
export const parameters = { text: { type: 'string', required: true, description: '參數說明。' } } // 可選
export const output = { type: 'object', additionalProperties: false, properties: { characters: { type: 'integer', required: true } } } // 可選
export async function <name>(input) { return { /* lossless JSON */ } }
4. 約束條件¶
- 僅可擦除 TS 語法。
- 頂層無副作用。
- 路徑一律絕對路徑。
依賴與要求¶
- 主機平面服務:
tools、subprocess(web profile 默認具備)。 - 可選依賴:
skills(存在則註冊 skill)。 - Node 版本:≥ 22.18(支持
.ts原生 type stripping)。
適用場景與注意事項¶
此插件適合需要實現“自我進化”能力的 agent。工具目錄作爲模型的可寫資產,是持續學習在 harness 側的最小形態。
注意事項:
* 插件以當前 DSH 進程權限運行,請確保對目標目錄有寫入權限。
* 在安裝前,建議閱讀源碼與許可證(MIT)。
結語¶
dsh-tools-meta 提供了一種讓模型控制自身能力的機制。通過簡單的 TS 腳本,模型可以將學會的知識沉澱爲可複用的工具,實現從“使用工具”到“創造工具”的跨越。