前言¶
在 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 目錄的加載邏輯無關。
共享框架裏還固定了一條成本表述口徑:不用天/周/人日,按「本輪能否收口、要幾個切片、每個切片交付什麼、驗收做什麼」說明;只有明確對外報價時才換算成人類工期。這條會隨畫像注入,影響助手在估算與拆任務時的說法。
核心功能¶
面板「用戶畫像」¶
裝好後,左側欄圖標進入 用戶畫像:
- 五種預設身份:產品經理、設計與體驗、開發與技術、業務與創始人、學習者;
- 每條身份一條 0–100 權重滑條,0 表示關閉該身份;
- 權重最高者決定主說話方式,其餘有權的身份各貢獻一行補充;
- 權重分檔:1–39 輕度、40–69 中等、70–100 完整(詳略與強制程度不同);
- 頁面底部 實時顯示真正注入的文本;
- 狀態行說明該小節是否已進入提示組裝(讀取
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 許可證,確認符合你的環境與合規要求。
典型用法¶
- 打開「用戶畫像」,按你的角色拖動各身份權重(例如以「開發與技術」爲主、輔以「產品經理」)。
- 觀察底部預覽:組合後的注入文本應隨滑條即時變化。
- 確認狀態行爲「已進入系統提示」類提示(以界面實際文案爲準)。
- 若需程序化讀寫,可對
/plugin/user-persona/state、/plugin/user-persona/save、/plugin/user-persona/verify按上表調用。
保存權重示例(請求體形狀以 README 爲準):
{
"weights": {
"<預設身份 id>": 70
}
}
各預設的 id 以 GET /plugin/user-persona/state 返回爲準,勿臆造鍵名。
驗證步驟¶
README 給出四條可操作的檢查:
- 面板能打開,滑條可拖動並顯示百分比;
- 底部預覽文本隨滑條變化;
- 狀態行顯示「已進入系統提示」(或等價成功狀態);
- 新開一輪對話,回覆的開頭/結尾結構應體現所選畫像。
第 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 爲準。