dsh-gap-feed:長思考期間的對話流注入插件

在 DeepSeek Harness (DSH) 環境中,智能體在處理複雜任務時通常需要較長的思考時間。在這段時間裏,對話流往往是靜默的,用戶可能無法感知系統正在工作,也無法獲得實時的背景信息。現有的做法通常是輪詢狀態或手動查詢,交互體驗不夠連貫。dsh-gap-feed 插件旨在解決這個問題,它能在智能體長思考期間,將熱點新聞或自定義提醒卡片直接插入對話流中,保持用戶對當前會話的感知。

這是一個由 faukwaa 維護的聯網工具類插件,遵循 MIT 許可證。它通過在長思考階段觸發消息注入,向對話流中添加卡片內容,且頻率較低,不會打斷正常的交互。

安裝

使用官方命令安裝:

dsh plugin --profile web add dsh-gap-feed

安裝後,重啓 dsh web 或刷新頁面即可生效。

核心功能

  1. 長思考注入
    插件不會在每次思考時都觸發。只有當滿足以下條件時,纔會向對話流注入卡片:

    • enabled 開關爲 true;
    • 智能體持續思考時間超過 minThinkSeconds(默認 20 秒)且未處於空閒狀態;
    • 距離上次注入已超過 cooldownMinutes(默認 15 分鐘);
    • 過去一小時內注入次數未超過 maxPerHour(默認 4 次)。
  2. 多源並行抓取
    支持同時從三個源抓取數據:

    • 今日頭條:使用公開 API,無需登錄;
    • GitHub 趨勢:抓取本週創建且按 Star 數排序的倉庫;
    • Bilibili 熱榜:獲取當前熱門視頻排行。
      多個源並行抓取,任一源失敗都不會影響其他源的正常運行。
  3. 自然語言提醒
    用戶可以在對話中直接使用自然語言設置提醒,插件會解析任務和截止時間並保存。支持的示例包括:

    • “提醒我 18:00 開會”
    • “remind me to have a meeting at 18:00”
    • “半小時後提醒我回郵件”
      解析失敗時返回友好錯誤,不會阻斷對話。
  4. 優先級與去重

    • 優先級:已到期的提醒優先於新聞顯示。
    • 去重:同一內容不會在單次會話中重複注入。
  5. 持久化與配置

    • 內置設置頁面,自動根據配置表單渲染 UI,支持修改限流參數、管理提醒(增刪改查、啓用/完成)。
    • 配置和提醒數據支持持久化存儲,重啓後不丟失。
    • 注入的消息繼承會話中現有消息的 model source,確保會話加載正常。

配置項

配置項 類型 默認值 說明
enabled boolean true 總開關
minThinkSeconds number 20 觸發注入的最長思考時間(秒)
cooldownMinutes number 15 注入間隔的最小時間(分鐘)
maxPerHour number 4 每小時最大注入次數
blacklist string[] [] 標題黑名單關鍵詞,匹配的標題會被過濾

提醒存儲

提醒數據存儲在本地文件中:

$DSH_HOME/profiles/<profile>/data/gap-feed/reminders.json
  • DSH_HOME 默認爲 ~/.dsh;
  • 文件結構爲 JSON 數組,包含 id、text、dueAt、done、enabled、createdAt 字段;
  • 缺失的目錄會自動創建,讀寫失敗或 JSON 損壞時靜默回退到內存狀態。

注意事項

  • Bilibili 限流:Bilibili 源在數據中心 IP 下可能觸發限流(錯誤碼 -352),但插件會靜默降級,不影響其他源。
  • 會話去重:去重邏輯僅針對單次會話生命週期(重啓後重新計算),因此重啓後可能出現重複內容。
  • 運行權限:插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。
羽毛球分组比赛记分
小程序二维码

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

小夜