DeepSeek Harness Plugin

badai147/dsh-global-rules

Stars ★ 11 Downloads (30d) 831 Category Development & Runtime Added 2026-08-15 npm dsh-global-rules

Edit the global ~/.dsh/AGENTS.md rules from the web settings panel, live on save.

Install

# from npm (prebuilt)

dsh plugin --profile web add dsh-global-rules

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:badai147/dsh-global-rules

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

This plugin publishes its README in Chinese only.

在 DeepSeek Harness Web 的设置面板中编辑用户级全局规则文件 $DSH_HOME/AGENTS.md(默认 ~/.dsh/AGENTS.md)的插件。

Edit your user-global rules file $DSH_HOME/AGENTS.md (default ~/.dsh/AGENTS.md) from the DeepSeek Harness web settings panel.

全局规则设置页

功能 / Features

  • 设置页新增「全局规则」标签:打开即加载全局规则文件的当前内容,并显示它解析到的位置
  • 路径解析与 harness 一致:非空 $DSH_HOME 优先,否则 ~/.dsh(与内置 dsh-agent-instructions 同规则,因此编辑的一定是真正生效的那个文件)
  • 编辑保存,实时生效:新会话立即生效;当前会话在下次文件操作后感知新规则(由 DSH 内置的 dsh-agent-instructions 动态检测机制完成)
  • 文件不存在时保存会自动创建
  • 零构建:Client 端为手写 __ModuleLoader__ bundle,Host 端为纯 Node ESM

安装 / Install

dsh plugin --profile web add dsh-global-rules

从 GitHub 源安装(备选):

dsh plugin --profile web add github:badai147/dsh-global-rules

重启 dsh web,然后打开 设置 → 全局规则。

使用 / Usage

  1. 打开设置 → 全局规则
  2. 编辑规则内容(Markdown 格式,与 AGENTS.md 语法一致)
  3. 点击「保存」

保存后:

  • 新会话:首次步骤直接读取新内容,立即生效
  • 当前会话:下一次文件系统工具调用后,DSH 会检测到文件变化并注入 "Updated instructions from: ~/.dsh/AGENTS.md",模型按新规则执行

工作原理 / How it works

  • Host(lib/index.js):用 ctx.connection.fetch.register 注册精确 Fetch 路由 GET/POST /api/global-rules(读文件 / 写文件,256 KiB 上限)。它挂在 Connection 的 /api 通道上,因此自动落在 Host/Origin 栅栏与浏览器鉴权之内,无需自建同源校验
  • Client(lib/client.js):手写 window.__ModuleLoader__.load bundle,注册 settings.section 的「全局规则」页面
  • 生效机制:DSH 内置 dsh-agent-instructions 插件覆盖 user-global scope 的动态检测——无需插件做任何热重载

目录结构 / Structure

dsh-global-rules/
├── cordis.patch.yml   # bundle patch:插入 global-rules 层
├── lib/
│   ├── index.js       # Host:/api 精确 Fetch 路由(Node ESM)
│   └── client.js      # Client:设置页 UI(__ModuleLoader__ bundle)
└── package.json

License

MIT

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.