前言¶
在 DeepSeek Harness(DSH)裏跑智能體時,常見情況是用戶一句話丟過來,模型立刻改代碼、搜資料或調工具,結果方向偏了、重複造輪子,或關鍵假設沒確認就寫死實現。Skills 按需加載、記憶文件由模型自行決定是否引用,都很難在每一輪對話裏強制「先想清楚再動手」。
dsh-task-intake 走另一條路:作爲僅作用於宿主(Host)的 bundle,向 system prompt 注入固定段落 task-intake:protocol(默認順序 9900),讓智能體在把消息當成新任務處理之前,先跑一遍 intake 流程。下面介紹它是什麼、做什麼、怎麼裝、怎麼用,以及安裝時要注意的限制。
這是什麼¶
dsh-task-intake 由維護者 MrXiongBear 發佈,在 SkillHub 目錄中歸類爲工作流。一句話定位來自倉庫描述:Task intake protocol: clarify and optimize every task before running it.——在真正執行任務前,先澄清目標、暴露風險、查既有方案,並給出優化後的計劃。
當前 package.json 版本爲 1.2.1;GitHub 倉庫星標爲 0。倉庫說明標明內容爲實驗性、自用性質,且整倉由 AI 生成,人負責驗收;未發佈到 npm,緊貼某一版 DSH 的 apply / inject / client bundle / 配置解析驗證過,宿主升級後可能失效。
核心功能¶
插件通過 Cordis patch 註冊一段 systemPrompt.section,該段會隨每次請求重發,因此在長上下文或壓縮後仍能約束「新任務必走 intake」,這與僅按需加載的 Skill 不同。
對新任務,協議要求智能體按順序完成(摘要自 README):
- 重述目標與推斷的交付物;
- 列出未知項與有風險假設;
- 在寫任何新東西之前,搜索 npm、GitHub 或網頁上的 prior art(現成插件、庫、模板或成熟做法),並說明覆用、借鑑還是從零構建;
- 最多提出 N 條對請求的改進建議(N 由配置
maxImprovements控制,默認 3); - 當未知項可能改變結果時,在回覆正文裏向用戶提問並等待(不使用
ask_user_question工具);只讀、單步、純信息類請求可跳過提問;用戶說「直接做」「別問」「just do it」等也會跳過(見配置directDirectives); - 陳述優化後的計劃,再執行。
以下情況不算新任務,不會觸發 intake:回答用戶問題、糾正智能體、批准計劃、或繼續當前目標的消息。
配置項¶
在 profile 的 cordis.patch.yml 裏編輯 task-intake 行上的 config: 塊;index.js 只提供默認值。修改 index.js 或 cordis.patch.yml 後需重啓 DSH 生效。
| key | default | 含義 |
|---|---|---|
enabled |
true |
設爲 false 可禁用插件而不卸載 |
order |
9900 |
system prompt 中的位置,須低於 10000(環境類段落) |
maxImprovements |
3 |
允許提出的改進建議條數上限 |
maxQuestionsPerTask |
1 |
每個任務最多向用戶提問次數;超出部分改爲 stated assumptions |
priorArt |
true |
新建前先跑 prior art 檢索 |
priorArtCandidates |
3 |
報告的候選方案數量 |
language |
auto |
auto 跟隨用戶語言;其他值原樣用於規則文案 |
directDirectives |
中英文短語列表 | 表示「跳過 intake」的指令 |
安裝與啓用¶
README 給出的安裝方式爲:
dsh plugin --profile desktop add <repo>
其中 <repo> 以官方文檔或目錄頁說明爲準,勿自行拼接未在資料中出現的倉庫字符串。
安裝前務必知曉:
- DSH 的 profile 加載是全有或全無:任一插件
import失敗可能拖垮整個 profile,甚至寫殘配置。請先備份 profile 裏的package.json與cordis.patch.yml。 - 本包沒有發佈到 npm:也可將目錄放入 profile 的
node_modules,或在package.json中用"<包名>": "link:<本目錄絕對路徑>",再在dsh.profile.bundles登記後重啓 DSH。
卸載/回滾:從 dsh.profile.bundles 移除登記 → pnpm remove <包名> 或刪除 junction → 重啓;異常時用備份的兩個文件還原。
典型用法¶
安裝並重啓後,無需單獨調用 CLI:只要用戶發出會被判定爲新任務的消息,注入的協議段就會驅動上述六步流程。例如用戶提出一個需要從調研到實現的功能需求,智能體應先重述交付物、列出假設、檢索 prior art 並彙報若干候選,再在正文裏提出至多 maxQuestionsPerTask 個問題(若需要),最後給出優化計劃並開始執行。
若用戶明確希望跳過澄清,可使用配置中的跳過短語(如「直接做」)或發起只讀、單步、純信息請求。
開發者本地可運行倉庫測試驗證行爲:
node --test test/
README 說明共有十個測試,覆蓋 section 註冊、enabled:false、順序與預算覆蓋、語言處理、指令引用、續作措辭,以及 prior art 步驟(默認開啓、priorArt:false 時的步驟重編號、可配置候選數量)。
適用場景與注意¶
適合誰:希望在 DSH 桌面 profile 上統一約束「新任務先 intake」的開發者;尤其在意避免重複造輪子、希望在動手前暴露假設與 prior art 的團隊自用場景。
務必注意:
- 插件以當前 DSH 進程權限運行;安裝前應自行閱讀 GitHub 源碼 與倉庫內許可/聲明,確認可接受實驗性與 AI 生成代碼的風險。
- SkillHub 目錄(插件頁)是社區獨立站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本文介紹的是社區維護的工作流 bundle,而非官方應用商店條目。
結尾¶
dsh-task-intake 用一段常駐 system prompt 把「澄清 → 查 prior art → 有限提問 → 優化計劃 → 再執行」寫進每一輪新任務,彌補 Skill 與記憶無法強約束 per-turn 行爲的缺口。若你的 profile 常因插件加載失敗而整體不可用,請先備份再裝,並準備好回滾路徑。
- 目錄頁:https://www.skillhub.cn/plugins/MrXiongBear/dsh-task-intake
- GitHub:https://github.com/MrXiongBear/dsh-task-intake