前言¶
在 DSH 裏和 Agent 聊久了,對話裏會堆很多「說過但沒落地」的句子:用戶說「這個先放着,回頭再說」,助手問「要不要我繼續把剩下的改完?」卻沒人接話。它們通常不會變成工具調用、待辦或日程,只是從上下文裏滑過去。任務類插件管的是「已經結構化」的事;這類語義承諾若只靠人記或靠模型上下文,跨會話後很容易丟。
下面介紹社區插件 dsh-intent-debt-radar(維護者 nonefora11,GitHub:nonefora11/dsh-intent-debt-radar)。它在 DSH 分類裏常被標爲「記憶」相關能力:把推遲、未答問題、懸而未決的決定、助手口頭承諾等記成一份可排序、跨會話的「意圖債務」賬本,而不是改寫原話。
這是什麼¶
插件全稱 意圖債務雷達 · Intent Debt Radar。README 的定位是:追蹤對話裏悄悄被放棄的承諾——deferrals、unanswered questions、shelved decisions、agent commitments——並以帶優先級的賬本形式保留。
抽取默認走正則與結構信號,不依賴模型即可運行;卡片上引用的是原句,便於覈對與反駁。數據落在本地單個文件,插件只訂閱會話事件,不寫會話日誌、不替你做待辦系統。
追蹤的四類「債務」¶
| 類型 | 含義 | 示例 |
|---|---|---|
defer |
明確擱置 | 「這個先放着,回頭再說」 |
loop |
問了沒人答 | 助手提問,用戶接着聊別的 |
decision |
決定未做 | 「先不定,再看看」 |
agent-promise |
助手說了要做卻沒做 | 承諾「下一步補上測試」,當輪無工具調用 |
評分與優先級¶
債務用公式打分(README 原文):
score = base + 3·min(hits, 4) + min(ageDays, 14) + (有提醒 ? 3 : 0) − (被推遲 ? 6 : 0)
base:助手承諾 7、推後 6、未答 5、未決 4。hits 爲同一事項重複出現次數;ageDays 封頂 14 天。檔位:P0 ≥ 12、P1 ≥ 6,其餘 P2。
界面與日常操作¶
安裝並加入 profile bundle 後,側邊欄會出現「意圖債務」入口,並顯示未結數量角標。
賬本頁支持未結 / 已結清篩選。每張卡可:結清、重開、推遲一天、設提醒時間、轉成待辦(內容複製到剪貼板);「跳到對話」或點擊引文可回到當初那句話所在的會話。
啓動摘要:每次打開 DSH 時展示最重幾筆,一次性,可關閉;同一進程內不會反覆彈出。
桌面提醒:到點用瀏覽器 Notification,無原生 shell 依賴。
intent_debt 工具供 Agent 讀取賬本:list、stats、close、snooze、remind、convert,以及 mode(不切面板也能切換識別方式)。
兩種識別模式¶
默認 rules:純正則 + 結構信號,零模型調用、可離線。
可選 api:規則先跑,僅對拿不準的子句再問模型;複用當前會話的模型路由,不需要額外 API key。採用閘門、按 turn 批量、上下文裁剪、調用與 token 日限額等策略;超限額靜默退回 rules。面板上會顯示當日用量,例如「今日 2/60 次 · 1874 token · 緩存 3 · 跳過 9」。
rules 模式下內容不離開本機;api 模式下外發的僅爲規則不確定的子句及前後各約 60 字上下文。
安裝與啓用¶
在 DSH profile 目錄執行(README 給出的三種方式之一):
cd ~/.dsh/profiles/desktop
# 方式一:從 release 附件裝
npm install https://github.com/nonefora11/dsh-intent-debt-radar/releases/download/v0.2.4/dsh-intent-debt-radar-0.2.4.tgz
# 方式二:指向 GitHub 倉庫(需本機可 git clone)
npm install github:nonefora11/dsh-intent-debt-radar
# 方式三:npm 包名(發佈後)
npm install dsh-intent-debt-radar
將該包寫入該 profile 的 package.json 中 dsh.profile.bundles,例如:
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"…",
"dsh-intent-debt-radar"
]
}
}
重啓 DSH 後,側邊欄全局面板會出現「意圖債務」。若環境已配置 DSH 插件市場,也可從市場安裝(README 說明)。
當前 package 版本 0.2.4;Release 附件約 16 個文件、約 60 KB,不含安裝腳本。
配置(可選)¶
在 profile 的 cordis.patch.yml 裏爲本插件條目追加字段,例如:
- id: intent-debt-radar
name: dsh-intent-debt-radar
config:
enabled: true
minConfidence: 0.5
trackAssistantPromises: true
maxCardsPerSession: 80
retentionDays: 120
retentionSweep: true
startupPopupGapHours: 0
api 模式相關示例:
- id: intent-debt-radar
name: dsh-intent-debt-radar
config:
mode: api
maxClausesPerCall: 6
maxCallsPerHour: 6
maxCallsPerDay: 60
maxTokensPerDay: 40000
llmProvider: ''
llmModel: ''
留空的 llmProvider / llmModel 表示複用會話路由。
數據存儲¶
賬本文件:$DSH_HOME/intent-debt-radar/ledger.json(未設置 DSH_HOME 時爲 ~/.dsh/…)。寫入採用臨時文件再 rename;卡片 id 由債務身份哈希生成,同一句再次出現會累加 hits。文件損壞時保留爲 ledger.json.corrupt-<時間戳>,不靜默覆蓋。
兼容性與環境¶
- DSH:
>=0.2.0-rc.2 <0.3.0 - Node:
>=22 - 客戶端:Web
- 許可證:MIT
- 可選 peer:
@deepseek-ai/dsh-llm(僅api模式;rules不需要)
README 記載在本機 DSH 0.2.1-rc.5、Node v24.16.0、Windows 上做過界面走查;自動化測試 107 項,CI 在 Node 22/24 × Ubuntu/Windows 上運行。其他 DSH 版本未在文檔中聲明已驗證。
適用場景與注意¶
適合:長對話、多會話協作開發或運維討論中,需要把「口頭推遲」和「助手未兌現承諾」從聊天裏抽出來、按優先級跟進,而不是依賴人腦或單次上下文窗口。
安裝前建議自行查看倉庫源碼與 MIT 許可證。插件以當前 DSH 進程權限運行,只讀 session/event 並維護上述 ledger 文件;它不替代你的任務系統,「轉待辦」只是複製到剪貼板。
排查加載或命中問題時,README 建議帶上 DSH 版本、mode 配置,以及面板頂部「已觀察 N 條消息 · 抓到 M 次跡象」一行。
結尾¶
dsh-intent-debt-radar 把對話裏未兌現的語義承諾當成會「生息」的債務來記賬:本地規則默認可離線,需要時可開漏斗式 api 補漏;側邊欄、啓動摘要與 Agent 工具共用同一份賬本。
- 社區目錄頁:https://www.skillhub.cn/plugins/nonefora11/dsh-intent-debt-radar
- 源碼與文檔:https://github.com/nonefora11/dsh-intent-debt-radar
DeepSeek Harness 生態強調「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。