All plugins

DSH / BUNDLE / CLIENT-UI

dsh-dialog-fence

v0.12.4ILoveHAKU / dsh-dialog-fence8e49bbdb1f

InstallableBundlesUI & client pluginsCommunity · Topic auto-analysisWeb UI

Overview

dsh-dialog-fence

对话围栏:给 DSH / DSH Desktop 的每一次对话设定行为边界——通用规则 + 按对话追加的专属规则,存在一个位置可自定义的 JSON 文件里,按固定顺序注入运行时上下文,不破坏前缀缓存。 / Per-conversation behavioral rule fence for DSH / DSH Desktop, kept in one JSON file and injected into the runtime context without breaking the prompt cache.

README / EN

Package documentation

Registry summary

对话围栏:给 DSH / DSH Desktop 的每一次对话设定行为边界——通用规则 + 按对话追加的专属规则,存在一个位置可自定义的 JSON 文件里,按固定顺序注入运行时上下文,不破坏前缀缓存。 / Per-conversation behavioral rule fence for DSH / DSH Desktop, kept in one JSON file and injected into the runtime context without breaking the prompt cache.

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

- **宿主半边改动必须重启 DSH**,`dsh-hmr` 不重载本插件(已实测)。 - 面板与三处配置入口需要 Web 形态;CLI / TUI / headless 只有 `/fence` 命令。 - 规则是「软约束」:它进入模型可见上下文并对模型产生强引导,但**不是强制拦截**。要硬拦截工具调用,请用 `PreToolUse` 钩子(本机已有 `harness/fence/guard.mjs` 做这类事)。 - 与 `workbuddy` / `opencode-go` 等未声明 `systemPromptUpdate` 的路由完全兼容——正因为本插件**从不改系统提示词**。 - 总开关控制的是「是否注入」,不等于卸载插件;要彻底停用请在插件页该包详情页里关掉开关或直接卸载。 - 本地路径安装是**复制**进 generation 快照,改源码后必须重装(见「安装」一节的警告)。 - 「打开文件夹」用系统文件管理器(Windows 上是 `explorer /select,`),只在有图形界面的形态下有意义;`DIALOG_FENCE_NO_OPEN=1` 可关掉(测试用)。0.8.0 起**每次点击都会在按钮下方给出结果**(已打开 / 未打开 + 原因 / 上一次启动失败的原因),不再「点了看不出有没有生效」。 - Windows 上 `explorer.exe /select,…` 的退出码**恒为 1**,不可用作成功判据;判定只能靠「窗口是否真的出现」。因此本插件对「已打开」的陈述是「已发出打开请求」而非「已确认窗口可见」。 - 改位置时**不会覆盖已存在的目标文件**:若目标已存在,直接切换过去(以目标内容为准)。