dsh-profile-settings
在终端中运行以下命令:
dsh plugin install XMoon/dsh-profile-settings
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在终端中执行 dsh plugin install XMoon/dsh-profile-settings 即可安装,插件源码位于 https://github.com/XMoon/dsh-profile-settings
插件介绍
传统 DSH 只有一份全局 settings.yaml 作为唯一配置源,当同一套 Harness 里跑多条不同的 Agent 工作流时,温度、工具集、系统提示词等参数很难按 Profile 隔离。dsh-profile-settings 在官方 settings 接缝之上引入一层每 Profile 独立的覆盖文件 profiles/<name>/settings.patch.yml:对象段递归合并,数组与标量整体替换,!unset 指令可显式删除继承值。每个 Profile 只需声明自己关心的差异字段,其余自动回落到全局基线,互不干扰。
对已有插件完全透明——ctx.settings 的读写、schema 校验、expectedRevision 冲突检测、watcher 事件均保持不变。进程内写入只落在 Profile 覆盖层,replace({}) 重新继承全局层而非 composition 默认值。Web 端新增 Profile Settings 面板,每个字段附带来源徽章(Default / Composition / Global / Profile / Masked),并支持 set、unset、mask、unmask、promote、reset 等操作,全部经由 loopback RPC 通道完成,无需额外会话上下文。热重载时若 YAML 暂时非法则保留上一次有效值并告警,启动阶段若检测到 Profile 不可解析、!unset 出现在数组中、全局与覆盖指向同一文件、或重复的 ctx.settings owner 则直接 fail-loud。
适合在同一个 DSH Harness 中维护多条 Agent 工作流的团队或个人,例如同时运行高温度创意写作与低温度 SQL 生成的两条 Profile。各 Profile 共享一份全局基线,仅覆盖差异项,编辑后即时热生效,跨进程写入由文件锁与原子改名保证完整性。
使用场景
- 同一 Harness 内运行多条 Agent 工作流,各自需要不同的温度、工具集和系统提示词
- 团队共享一份全局基线配置,各 Profile 仅覆盖差异字段,互不干扰
- 开发调试时通过 Web 面板快速切换配置、追踪来源徽章、一键重置或提升
适合人员
- 需要多 Profile 配置隔离的 DSH 工作流开发者
- 管理共享 Harness 的 AI 平台工程团队
- 希望在不改动现有插件的前提下细化运行配置的工程师