dsh-simulated-life:爲 DeepSeek Harness Agent 提供擬真生活上下文

前言

DeepSeek Harness(DSH)的 Agent 在執行任務時,通常只關注當前的對話上下文。如果 Agent 需要模擬一個擁有長期記憶的角色,或者需要在一個持續演化的世界裏做出決策,現有的上下文機制就顯得不夠用了。

dsh-simulated-life 是一個插件,它爲 DSH Agent 提供“擬真生活上下文”。每輪對話時,它會自動讀取工作區近 24 小時內的“生活事件”並注入到上下文中。同時,它提供 life_react 工具,讓 Agent 能夠把感受、思考與行動回填到自己的生活日誌裏。這使得 Agent 能夠“生活在”一個持續演化的世界中。

核心功能與行爲

  • 自動注入:每輪對話的第一個 step(step === 1)會注入一次事件。如果該輪沒有新事件或無變化,則靜默跳過。
  • 時間窗口:只讀取時間落在 [now − 24h, now + 5min] 內的事件,並按時間升序排列。
  • 智能去重:插件會對事件內容(含反應)計算 SHA-256 指紋。已注入的事件若內容未變化,不會重複注入。去重狀態保存在內存中(LRU,上限 200 個會話)。
  • 零侵入:如果工作區沒有 .life/ 目錄,插件完全靜默,不佔用資源。讀取失敗或 JSON 損壞時,會逐個跳過,不影響其他文件。
  • 世界近況:會讀取日期最新的 world_summary 一併注入。

安裝與啓用

通過官方命令安裝:

dsh plugin --profile web add dsh-simulated-life

安裝後,插件會自動掛載自帶的 cordis.patch.yml 配置文件,無需手動修改配置。只要工作區存在 .life/ 數據,插件就會在每次對話中生效。

配置

在 DSH 的配置中啓用插件並設置窗口時長:

- id: simulated-life
  name: dsh-simulated-life
  config:
    windowHours: 24   # 可選:事件回溯滑動窗口時長(小時,默認 24)
    enabled: true     # 可選:false 時完全停用

數據協議與用法

數據存儲在 .life/<yymmdd>/events.json 文件中。

數據結構

每個日期目錄下有一個 JSON 文件,包含 date、timezone、world_summary 和 events 列表。

{
  "date": "260915",
  "timezone": "Asia/Shanghai",
  "world_summary": "初秋微雨,市中心圖書館舉辦舊書市集,整座城市籠罩在溼漉漉的寧靜中。",
  "events": [
    {
      "id": "evt-260915-001",
      "time": "2026-09-15T08:30:00+08:00",
      "type": "encounter",
      "title": "晨間雨中散步與偶遇",
      "description": "清晨去麪包店買羊角麪包時,在拐角處避雨遇到了老書店老闆陳伯……",
      "actors": ["陳伯"],
      "location": "轉角麪包店外檐下",
      "impact": "獲得了一把格子傘,得知了舊詩集情報",
      "react": {
        "feeling": "感到意外而溫暖",
        "thought": "舊詩集很可能是絕版初版,下午有空去看看",
        "action": "向陳伯道謝並借了傘,決定下午前往集市",
        "updated_at": "2026-09-15T14:20:00+08:00"
      }
    }
  ]
}

工具調用

Agent 可以調用 life_react 工具來記錄對某事件的反應。該工具會將反應寫入對應事件的 react 字段(通過臨時文件 + 原子重命名實現)。

配套工作流與注意事項

  • 世界演化:本插件本身不生成事件數據,而是作爲讀取端。世界演化需要外部 Skill(例如 create-simulated-events)來驅動。該 Skill 會讀取昨日的反應做因果結算,生成今日事件並寫入文件。
  • 權限:插件需要讀寫工作區權限。它只寫入 .life/ 目錄下的文件,不發起任何網絡請求。
  • 依賴版本:插件依賴 @deepseek-ai/cordis 和 dsh-tools。根據 README,其版本號存在衝突(4.0.2 vs 4.0.4,0.1.2-rc.1 vs 0.1.7-rc.2),安裝前需確認環境兼容性。
  • 適用場景:適合需要構建長期角色扮演、模擬數字生命或需要持久化生活日誌的 Agent 應用。

總結

dsh-simulated-life 作爲一個輕量級插件,解決了 Agent 缺乏長期生活背景的問題。它通過文件系統作爲記憶層,實現了事件注入與反應回填的閉環。配合外部 Skill 使用,可以構建出具有持續演化能力的 Agent 世界。

目錄:DeepSeek Harness 插件目錄
倉庫:GitHub

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

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

小夜