dsh-fishday:給 Agent 一條自己的時間線

前言

給 DSH 裝一個常駐人格類插件時,常見痛點是:Agent 只在用戶發消息時才「存在」。沒人說話時,它不知道過了多久,也不會主動做什麼。dsh-fishday(小魚的時間與世界)就是來解決這個的——它給 Agent 維護一條獨立於對話的時間線,到點做事、沒人說話會悶、晚上自動收一張「我的一天」。

下面介紹這個插件的定位、安裝方式、配置項和典型用法。插件由 yanyan-shub 維護,分類爲工作流,在 SkillHub 社區目錄(獨立站點,與 DeepSeek / 幻方無官方從屬關係)上的鏈接見文末。

這個插件是什麼

一句話定位:給 DSH Agent 一個屬於自己的時間和世界狀態,讓角色在沒被搭話時也有「活過的時間」。

它維護幾件事:現在幾點、多久沒人說話、悶度、今天做過什麼、今晚是否需要回顧。README 的原文描述是「給 Agent 一條自己的時間線:不是隻有人說話時才存在」,安裝後可以問它今天都做了什麼。

核心能力

README 裏列出了四條能力,按原樣轉述:

1、到點做事。fish_do 記一件「我自己做的事」,例如澆花、翻歌、看窗外、想一個人,時間線會攢起來。
2、時間在流。沒人說話也知道過了多久;超過一定時間會「悶」,提示可以主動開口。
3、晚上回想。過了設定的點,自動收一張「我的一天」,包含早/午/晚三段和今天有多少條消息找它。
4、自動注入。每次模型調用前,把「現在幾點 / 多久沒人說話 / 悶度 / 今天做過什麼 / 今晚回顧」寫進提示詞。

安裝與啓用

官方 README 只給了一種安裝方式:在 DSH 裏執行 plugin_manager install_bundle,指向插件目錄。

# 在 DSH 裏
plugin_manager install_bundle  <這個目錄>

如果你自己維護了一份副本,也可以把它複製到任意本地目錄,再用 plugin_manager 的 install_bundle 指向該目錄。

安裝後會多出 5 個工具,職責如下:

工具 作用
fish_now 看她自己的時間與狀態
fish_do 記一件自己做的事
fish_idle 多久沒人說話、悶不悶、要不要開口
fish_evening 收一張「我的一天」
fish_timeline 看某天做過什麼

配置

插件通過 insert 配置段啓用,配置項來自 README:

- insert:
    - id: dsh-fishday
      name: dsh-fishday
      config:
        eveningHour: 21      # 幾點之後算晚上(該回想今天)
        boredAfterMin: 90    # 安靜多久開始覺得悶
        keepDays: 30         # 保留多少天記錄
        awakeStart: 8        # 幾點算醒着(悶度只在醒着時漲)
        awakeEnd: 23
        # dataDir: 'X:/somewhere/fishday'   # 可選,默認 ~/.dsh/fishday
        # heartbeatFile: 'X:/path/last-heard.json'  # 可選,別的程序寫的"誰找過我"

其中 dataDir 和 heartbeatFile 是註釋裏的可選項,不配置也能運行。

數據存放

默認路徑是 ~/.dsh/fishday/state.json,單文件 JSON,可以備份或手動修改。README 明確寫了代碼裏沒有任何寫死的絕對路徑,全部走配置或用戶目錄。

和心跳配合(可選)

如果你另有程序(比如 QQ bot、網關)在收到消息時寫一個 JSON:

{ "at": 1762000000000, "conv": "魚塘" }

把 heartbeatFile 指向它,fish_now 就會顯示距離上一次有人說話過去了多久,talkedToday 也會累計。不配也能用。

適用場景與注意事項

適合想讓角色或 Agent 有自主時間感、並在一天結束時能回顧當天行爲的開發者。需要留意三點:

1、插件以當前 DSH 進程的權限運行,安裝前應先檢查源碼和許可證(該倉庫爲 MIT License,版本號見 package.json,爲 1.0.0)。
2、它依賴時間線與悶度機制讓 Agent 主動開口,如果你只需要固定任務調度,可能不需要這類插件。
3、社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不要當作官方應用商店。

鏈接

  • 目錄頁:https://www.skillhub.cn/plugins/yanyan-shub/dsh-fishday
  • GitHub:https://github.com/yanyan-shub/dsh-fishday

一句話回顧:dsh-fishday 的價值在於讓 Agent 在沒人說話的時間也能持續存在,並在一天結束時把當天串成一張「我的一天」。如果你要給角色加時間維度,這是個可以上手的小插件。

羽毛球分组比赛记分
小程序二维码

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

小夜