前言¶
在 DeepSeek Harness(dsh)裏做長對話開發時,常見問題是:原始意圖被後續消息沖淡,同一會話裏多條需求纏在一起,半途達成的結論又被後面的改碼悄悄覆蓋。記憶類插件能檢索文本,但通常不維護一份權威的「還有什麼沒做完、下一步是什麼」清單。
dsh-focus-board 由維護者 YYJ-python 發佈,在 DSH 社區目錄中歸類爲「記憶」。它把這份清單落在磁盤上的 JSON 賬本里,通過 focus 工具由智能體寫入,並在輸入框上方以條帶供人閱讀——人機看同一組行記錄。下面按定位、能力、安裝與數據路徑說明用法與注意點。
這是什麼¶
一句話:dsh-focus-board 是面向 DeepSeek Harness 的跨會話任務賬本(Cross-session task ledger)。
- 倉庫:YYJ-python/dsh-focus-board
- 目錄頁:SkillHub 插件頁
- 當前
package.json中版本號爲0.158.0,許可證爲 MIT,要求dsh >= 0.2.0-0。
它不替代通用記憶檢索,而是專門持有「開放項 / 步驟鏈 / 結論 / 授權與調度」的可執行臺賬。
核心功能¶
以下均來自項目 README 與 package.json 描述,按使用鏈路歸納。
每條請求一條焦點項¶
新需求用 focus open,進行中 focus update,收尾時 focus close。項裏可帶步驟鏈(plan)、備註、鏈接、停滯負責人與產物,條帶可展示流程而不只是一句話。
輸入框上方條帶¶
默認摺疊爲標題,一次只展開一項,寬度跟隨輸入區。僅顯示當前會話相關項;插件工作時窗口頂部有簡短提示帶。全局側欄入口名爲 焦點臺 / Focus Board。
每步注入未完成上下文¶
未收尾項會注入到每一步,新開一輪仍能知道什麼還開着。若存在 docs/項目大綱.md 或 AI_GUARD.md,會一併注入,遇到選擇時優先依據大綱而非猜測。
過期複覈(Staleness review)¶
代碼與文檔會變,舊結論可能已失效。每項帶複覈時鐘與產物指紋,面板可顯示如 ⟳ stale Nd、⚠ basis changed、⚠ basis missing,提示需要重查的內容。
可學習的 choice¶
kind: 'choice' 且帶選項時,界面渲染爲可點候選;賬本記住已選項,focus auto 在安全重複場景可自行決定。涉及 push、deploy、delete、tag、spend 等危險動作不會自動代決。
授權臺賬(grant)¶
本地能力問題(能否 push、deploy、寫生產等)由表回答,避免重複發問。每條目四種模式:always / timed / ask / never,可有 scope,並記錄憑證存放位置(不含 secret 值)。被授權阻塞的項在卡片內展示同一套四模式控件;無條目時會先創建,保證面板與賬本一致。
盲操作回填¶
僅人能完成且智能體看不到結果的步驟(控制台開關、撤銷 token 等),項會要求 3–5 點自檢,而不是簡單標記「完成」。
按新回答重新判斷的調度器¶
調度不隨「會話變了」空轉燒 token,而是讀取新的助手回答,用關鍵詞(id、產物文件名、中文 4–6 字短語等,並去掉賬本表尾噪聲)匹配各項,只對回答真正提到的項重新判斷;插件自身發出的提示會被忽略。
大方向、機機車道與主機執行¶
- 大方向:歸檔一行目標並可設日程(每日 / 每週 / 每 N 分鐘);到點向會話發送組合提示(先查文檔與代碼、DSH 記憶、Web,再派計劃)。碰撞時一次只跑一個方向,間隔至少 10 分鐘,按時間排隊。
- 主機側執行:到點由主機通過
sessionController打開會話並提交提示,瀏覽器標籤可不打開;每方向首次獨立會話,之後複用。config中hostExec:false可退回面板執行。 - 機機(
lane:'auto'):大方向派發的工單獨佔標籤,不進你的待辦計數;機器多輪驅動,有輪次與日上限,兩輪無進展可停;不向人要授權,也不把決策交回給人。
經驗、工具與四套自維護賬本¶
關閉項的結論可沉澱爲經驗(經驗頁供機器用);主機按日探測 PATH 維護工具註冊表;每小時(及安裝、重掃機器時)維護工具表、經驗草稿、grant 缺失項、憑據頁變量名(不讀值)。多塊子面板包括:items、machine、directions、lessons、tools、pending ideas、deploy、human-only、Gitee、scheduler、grants、credentials、habits、outline 等。
工具接口¶
| 工具 | 用途 |
|---|---|
focus |
open / update / close / drop / list / review / decide / auto / brief |
grant |
list / check / upsert / remove — 回答「這類動作是否允許」 |
grant 中位置類型示例:env:NAME、file:/path#KEY、conv:SESSION、mem:ID、keychain:NAME;賬本內容會注入到提示中,仍不存儲 secret 值。
安裝與啓用¶
在已安裝 DeepSeek Harness 且使用 Web profile 的前提下,安裝命令以 README 原文爲準:
dsh plugin --profile web add github:YYJ-python/dsh-focus-board
安裝後重啓 dsh web(若僅客戶端變更,刷新頁面即可)。側欄應出現 焦點臺 / Focus Board。
DSH 生態裏擴展以插件形式掛載;社區目錄(如 SkillHub)是獨立站點,與 DeepSeek / 幻方無官方從屬關係,本文不以「官方應用商店」表述。
典型用法¶
- 用戶提出新需求時,讓智能體調用
focus open建項,並在plan裏寫清步驟鏈。 - 實施過程中用
focus update更新備註、鏈接與產物路徑;遇分支用kind: 'choice'或focus decide。 - 需要 push、部署等前,用
grant check/grant upsert固定策略;阻塞項在條帶卡片裏直接改四模式。 - 收尾時
focus close寫結論;若產物可能已變,用focus review觸發或響應過期標記。 - 可選:在
~/.dsh/focus-board/config.json配置owner、arrayRoot、giteeEngine、deployRegistry等,以啓用 Gitee / 部署子面板(未配置時核心賬本、條帶、調度與 grant 仍可用)。
本地數據默認位於 ~/.dsh(或 $DSH_HOME):
~/.dsh/focus-board/board.json # 賬本
~/.dsh/focus-board/grants.json # 授權表
~/.dsh/focus-board/config.json # 可選本地配置
~/.dsh/secrets/focus-board.env # 可選憑據(Git、SSH)— 勿提交版本庫
配置片段示例(與 README 一致,字段須按需填寫真實路徑):
{
"owner": "your name",
"arrayRoot": "/path/to/your/repos",
"giteeEngine": "/path/to/engine",
"python": "python3",
"deployRegistry": "/path/to/projects.yaml"
}
也可用環境變量:DSH_FOCUS_OWNER 等(README 中與 config 等價項並列說明)。
適用場景與注意¶
適合誰: 長期在 dsh web 裏做需求迭代、需要「人機同看一份開放任務表」、且希望未完成項與項目大綱每步進入上下文的開發者與智能體協作者。
注意:
- 插件隨當前
dsh進程權限運行,安裝前宜閱讀 GitHub 源碼 與 MIT 許可證,自行評估 SSH、部署等可選集成帶來的本機訪問範圍。 - 機機車道與主機調度會主動開會話;使用大方向與
hostExec前應理解併發、間隔與輪次上限(README 中 6 輪/項、12 輪/日等)。 - Gitee、deploy 子面板默認關閉,依賴
config.json或環境變量;勿在文檔未說明處臆造配置項。 - 憑據僅記錄位置與變量名,值應放在
~/.dsh/secrets/focus-board.env等本地文件,且不納入版本控制。
結尾¶
dsh-focus-board 把「還有什麼要做」從聊天曆史裏抽成可寫的 JSON 賬本和輸入框上的焦點臺,並用注入、過期複覈、grant 與調度器減少長會話中的意圖漂移。欲查看簡介與安裝入口,可打開 SkillHub 目錄頁;實現細節與完整工具說明見 GitHub 倉庫 README。