dsh-plugin-user-persona:在 system prompt 中每輪注入用戶畫像

前言

在 DSH 裏,若把「用戶是誰、希望助手怎麼說話」寫成 skill,通常要由 agent 自己判斷這一輪是否加載。上下文一長,這類風格約束往往被跳過,規範寫了,多數輪次卻不生效。

dsh-plugin-user-persona 走另一條路:向 system-prompt 註冊名爲 user-persona 的小節,text 爲函數,每次提示組裝時重新求值,不依賴 skill 是否被選中。下面介紹它做什麼、怎麼裝、怎麼用,以及驗證時能指望什麼。

這是什麼

dsh-plugin-user-persona 由維護者 tf961656585 發佈,在社區目錄中歸類爲 趣味換裝。一句話定位:爲 DSH 提供預設身份與 0–100 權重,把組合後的畫像文本注入系統提示,且每一輪對話都會帶上。

插件版本在 package.json 中爲 0.2.0,協議爲 MIT。

爲什麼用 system-prompt 而不是 skill

README 歸納了設計動機:

  • 每輪都在,不需要觸發條件;
  • 調整權重後下一輪即生效,不必重啓插件;
  • 與 skill 目錄的加載邏輯無關。

共享框架裏還固定了一條成本表述口徑:不用天/周/人日,按「本輪能否收口、要幾個切片、每個切片交付什麼、驗收做什麼」說明;只有明確對外報價時才換算成人類工期。這條會隨畫像注入,影響助手在估算與拆任務時的說法。

核心功能

面板「用戶畫像」

裝好後,左側欄圖標進入 用戶畫像:

  1. 五種預設身份:產品經理、設計與體驗、開發與技術、業務與創始人、學習者;
  2. 每條身份一條 0–100 權重滑條,0 表示關閉該身份;
  3. 權重最高者決定主說話方式,其餘有權的身份各貢獻一行補充;
  4. 權重分檔:1–39 輕度、40–69 中等、70–100 完整(詳略與強制程度不同);
  5. 頁面底部 實時顯示真正注入的文本;
  6. 狀態行說明該小節是否已進入提示組裝(讀取 systemPrompt.assemble() 的實際結果,而非插件自我聲明)。

HTTP 接口

方法 路徑 用途
GET /plugin/user-persona/state 預設、權重、當前注入文本
POST /plugin/user-persona/save 保存 { weights: { id: 0-100 } }
GET /plugin/user-persona/verify 檢查該小節是否真的進入提示組裝

狀態持久化

權重與相關狀態寫在:

$DSH_PROFILE_DIR/user-persona.json

無 profile 時依次退回 $DSH_HOME,再退回 ~/.dsh。

安裝與啓用

在 DSH 的插件安裝界面填寫下列之一,裝完後 重啓 DSH,左側欄應出現「用戶畫像」。

github:tf961656585/dsh-plugin-user-persona

也可填寫該倉庫在本機的 絕對路徑(與填 GitHub 座標二選一,以你本機部署方式爲準)。

插件在 當前 DSH 進程權限 下運行。安裝前請自行查看倉庫源碼與 MIT 許可證,確認符合你的環境與合規要求。

典型用法

  1. 打開「用戶畫像」,按你的角色拖動各身份權重(例如以「開發與技術」爲主、輔以「產品經理」)。
  2. 觀察底部預覽:組合後的注入文本應隨滑條即時變化。
  3. 確認狀態行爲「已進入系統提示」類提示(以界面實際文案爲準)。
  4. 若需程序化讀寫,可對 /plugin/user-persona/state、/plugin/user-persona/save、/plugin/user-persona/verify 按上表調用。

保存權重示例(請求體形狀以 README 爲準):

{
  "weights": {
    "<預設身份 id>": 70
  }
}

各預設的 id 以 GET /plugin/user-persona/state 返回爲準,勿臆造鍵名。

驗證步驟

README 給出四條可操作的檢查:

  1. 面板能打開,滑條可拖動並顯示百分比;
  2. 底部預覽文本隨滑條變化;
  3. 狀態行顯示「已進入系統提示」(或等價成功狀態);
  4. 新開一輪對話,回覆的開頭/結尾結構應體現所選畫像。

第 4 條 只能由人主觀判斷。插件能證明文本進了系統提示,不能保證模型一定按畫像口吻執行;排查問題時可用 GET /plugin/user-persona/verify 對照組裝結果。

適用場景與注意

適合:希望助手長期以固定角色畫像回答(產品、設計、業務、學習等混合權重),又不想把規範押在 skill 觸發上;需要在 UI 裏直觀看「最終進了 prompt 的字符串」的 DSH 用戶。

注意:

  • 依賴 DSH 的 system-prompt 與 Web 側欄注入(package.json 中 dsh.client 爲 platform: web,並注入佈局與側欄模塊);
  • 社區目錄 skillhub.cn 爲獨立生態站點,與 DeepSeek / 幻方無官方從屬關係;DSH 理念是「一切皆插件」,本插件是其中一枚可選組件。

同系列插件(README 所列):產品經理看板、本機進程、技能管理、同步委派。

結尾

dsh-plugin-user-persona 把「用戶是誰」從可跳過的 skill 約束,改成每輪必算的 user-persona 系統小節,並用滑條權重與底部預覽把不透明 prompt 攤開。需要安裝座標、接口與驗證清單時,以倉庫 README 爲準。

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

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

小夜