dsh-foxy:在 DSH 裏用一套預設驅動 Foxy 人設會話

前言

在 DeepSeek Harness(DSH)裏做多輪對話時,常見做法是改系統提示詞或切 preset,但角色設定往往還要和 ChatLuna、記憶橋、各平臺子插件各寫一份;工具和 coding-agent 默認人設也容易混進同一套系統提示。若你只想在原生 DSH 會話裏用 Foxy 式人設聊天,並把記憶、平臺能力拆給獨立子插件,dsh-foxy 針對的是這條路徑:它是 agent preset,不是單獨的聊天客戶端。

這是什麼

dsh-foxy(倉庫 Kun-Fox/dsh-foxy)由維護者 Kun-Fox 發佈,當前 package.json 版本爲 0.3.7,許可證 MIT。插件把 Foxy 預設投影成該會話的系統提示詞,記憶、平臺橋接與擴展能力通過註冊表交給可選子插件;對話循環仍由 DSH 原生運行時處理。左側欄 Foxy 面板是配置頁,不是聊天窗口。

架構與依賴

下面介紹插件在生態中的位置。

DSH 會話(選擇 Foxy preset)
        │
   dsh-foxy(host registry + agent preset)
        │
   dsh-foxy-memory(可選,本地記憶 / HTTP provider)
        │
   koishi-plugin-chatluna-foxy-memory(可選,QQ 側與跨平臺記憶中樞)
  • 必需:dsh-foxy 本體。
  • 可選記憶:dsh-foxy-memory;可只用本地 JSONL,或通過 bridgeUrl 連接 koishi-plugin-chatluna-foxy-memory。
  • 平臺子插件:如 dsh-foxy-bili、dsh-foxy-weibo,依賴 dsh-foxy 與可選的 dsh-foxy-memory。
  • 舊方案 koishi-plugin-foxy-memory-bridge 已由 koishi-plugin-chatluna-foxy-memory 的 /foxy-memory/* 兼容層取代,僅保留遷移用。

核心功能

Agent preset 與系統提示詞

新建會話並在預設選擇器裏選 Foxy 後,preset 子插件讀取 YAML 預設並註冊爲 agent 的唯一系統提示詞段(complete: true、interpolate: false):不會被 DSH coding-agent 人設污染,預設中的 {{...}} 也不會被 DSH 模板插值。

默認預設路徑:

%USERPROFILE%\.dsh\foxy\presets\preset.yml

也可用 presetPath 指向任意 Foxy/Character 文件。若文件僅有 Character 的 system: 塊,會按規則投影,保留角色設定相關標題,丟棄好感度、affinity、toolbox 等運行時塊;DSH 與 ChatLuna 可共用同一份 preset.yml。

左側欄設置與 profile 配置

常用項保存在:

%USERPROFILE%\.dsh\foxy\settings.json

面板可改:預設文件、memoryContextEntries、是否允許 DSH 工具(enableTools,默認 false)、是否附加運行時上下文、記憶保存方式(LivingMemory 橋或本地 JSONL)、橋地址與 Token 等。保存後記憶子插件嘗試熱重載;預設相關改動對新會話生效。

preset 子插件字段(節選):

字段 默認 說明
presetId 預設 讀取哪個預設文件
presetPath 空 直接指定路徑,優先於 presetId
enableTools false 是否繼承 DSH 工具
memoryContextEntries 20 注入長期記憶條數

記憶子插件

dsh-foxy-memory 默認將會話寫入:

%USERPROFILE%\.dsh\foxy\memory\entries.jsonl

按 batchSize(默認 8)與 flushIntervalMs(默認 30 秒)調用橋的 /ingest,由模型提煉爲第一人稱長期記憶;下一輪 Foxy 會話注入最近 N 條到 [長期記憶]。跨平臺可安裝 koishi-plugin-chatluna-foxy-memory,在設置頁配置 bridgeUrl、bridgeToken、bridgePresetId;新插件經 /foxy-memory/* 寫入 Character 池,不應直接寫 SQLite。

擴展契約

Host 通過 ctx.foxy 暴露 registerPreset、registerMemoryProvider、registerCapability、registerTransport、status() 等,供記憶、平臺(微博、B 站、QQ 等)、能力(TTS/STT 等)子插件接入;主插件只負責人設與註冊表,不擁有對話循環。

安裝與啓用

資料中的安裝方式是在 DSH profile 裏添加本地包路徑(記憶子插件可選,README 推薦一併安裝):

dsh plugin --profile desktop add "file:D:\path\to\dsh-foxy"
dsh plugin --profile desktop add "file:D:\path\to\dsh-foxy-memory"

安裝後完全重啓 DSH,會話預設選擇器會出現 Foxy。若開發時用複製安裝而非鏈接,改源碼後需重新 dsh plugin add,或將 lib/ 同步到 profile 下的 node_modules\dsh-foxy。

運行環境要求 Node >= 20(見 package.json 的 engines)。

典型用法

  1. 新建 DSH 會話。
  2. 在預設選擇器選擇 Foxy。
  3. 直接對話;上下文、工具、模型由 DSH 原生層處理。
  4. 切回 standard 或其他 preset 即恢復普通 DSH,Foxy 不會常駐。

需要工具時,在左側 Foxy 設置頁打開工具選項並保存,對新會話生效。最穩妥的做法是單獨建 Foxy 會話,而不是在會話中途切換 preset(行爲取決於 DSH 版本)。

適用場景與注意

適合:希望在 DSH 桌面端用統一 Foxy/Character 預設聊天,並可選接本地 JSONL 或 Koishi 記憶橋、平臺子插件的開發者。

注意:

  • 插件在當前 DSH 進程權限下運行,安裝前應閱讀源碼與 MIT 許可證。
  • LivingMemory 橋未安裝或未配置時會退回本地 JSONL。
  • Foxy 默認隱藏繼承工具,屬刻意安全默認值。
  • 側欄是狀態/配置頁,聊天請用 DSH 原生對話界面。

社區目錄頁:skillhub.cn 上的 Kun-Fox/dsh-foxy。該站點爲社區插件索引,與 DeepSeek / 幻方無官方從屬關係;DSH 生態遵循「一切皆插件」的思路,具體以倉庫 README 爲準。

結尾

dsh-foxy 把 Foxy 收斂成一個 DSH agent preset 和擴展宿主:人設一份、會話走原生 DSH、記憶與平臺按需掛子插件。若要查閱配置字段與開發自檢命令,見 GitHub 倉庫 README。

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

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

小夜