dsh-plugin-antigravity-rules:在 DSH 中原生加载 Google Antigravity 规则

前言

在 DeepSeek Harness(DSH)里跑智能体时,工程规范往往散落在 Markdown 规则文件里。若换一套运行环境就要转换目录、复制规则或改 frontmatter,规范与编辑器侧的配置很容易分叉。Google Antigravity 生态习惯把规则放在工作区 .agents/rules/ 与用户目录 ~/.agents/rules/。下面介绍社区插件 dsh-plugin-antigravity-rules,它在不改动既有 Antigravity 安装的前提下,把这些规则接进 DSH 的加载与执行链路。

这是什么

dsh-plugin-antigravity-rules 是面向 DeepSeek Harness 的插件,由维护者 Domush(作者 Phillip Webber)发布,在 SkillHub 目录 中归类为「工作流」。插件定位为 Google Antigravity 工程规则的加载器与运行时执行引擎:直接读写你已有的规则目录,不转换、不修改、不复制 .agents/rules/*.md 正文;启用与开关偏好写在辅助文件 .agents/rules/settings.json 中,规则 Markdown 保持只读,可与 Antigravity 环境互通。源码与文档见 GitHub 仓库,npm 包当前版本为 1.0.4,许可证为 MIT。

与 Antigravity 的兼容方式

插件声明与现有 Antigravity 安装 100% 兼容,要点如下。

  1. 目录不变:工作区使用 .agents/rules/,用户级使用 ~/.agents/rules/,无需为 DSH 单独维护另一套规则树。
  2. 零磁盘改写:除 settings.json 中的开关状态外,不改动各 *.md 规则文件。
  3. 原生 frontmatter:解析 Antigravity 常用 YAML 字段:name、trigger、description、globs、priority。

核心功能

以下能力均来自插件 README,按触发与使用方式分述。

Always-On 规则(trigger: always_on)

通用工程不变量(例如 coding-standards.md)会在每一轮对话中自动注入智能体 system prompt,减少架构漂移,无需人工逐文件检查是否已加载。

领域规则目录(trigger: model_decision)

领域标准(如 ui-standards.md、assets-standards.md、testing-standards.md)的名称、描述与路径会进入 system prompt 中的目录,智能体可持续感知当前项目有哪些领域规范可选。

按 Glob 与领域模式自动激活

插件监听文件触及操作(read、write、edit)。当被触及路径匹配某条规则的 globs,或匹配内置领域模式(README 举例:Assets/UI/** 对应 ui-standards),相关规则会在本会话剩余时间内动态激活。

antigravity_rule 工具

智能体与用户可通过专用工具列出、读取或切换规则,例如:

antigravity_rule(action: "list")
antigravity_rule(name: "ui-standards")
antigravity_rule(action: "toggle", name: "tactics-standards", enabled: false)

Web 设置页

在 DSH 设置的 Rules 页签中可查看 Invariant 与 Domain 规则状态、按名称/路径/描述搜索,并通过开关启停规则(带乐观 UI 更新)。

热重载

监听规则文件 mtime,磁盘上编辑规则后内存中的规则集立即刷新。

安装与启用

DSH 采用「一切皆插件」的扩展方式;社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系。安装可按 UI、CLI 或 Profile 三种方式任选其一。

在 Web UI 中安装

  1. 打开 DeepSeek Harness Web UI,进入 Settings → Plugins。
  2. 点击 Add Plugin。
  3. 填入插件包名:
dsh-plugin-antigravity-rules
  1. 点击 Install,插件从 NPM 拉取并立即生效。

通过 CLI 安装

在终端执行官方文档给出的命令:

dsh plugin install dsh-plugin-antigravity-rules

写入 Profile 的 package.json

将插件列入依赖与 bundle(版本约束以 README 为例):

{
  "dependencies": {
    "dsh-plugin-antigravity-rules": "^1.0.0"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "dsh-plugin-antigravity-rules"
      ]
    }
  }
}

配置

在 Profile 的 cordis.patch.yml 中可插入插件实例,例如:

- insert:
    - id: antigravity-rules
      name: 'dsh-plugin-antigravity-rules'
      config:
        enabled: true
        rulesDir: '.agents/rules'
        includeAlwaysOnInSystemPrompt: true
        includeCatalogInSystemPrompt: true
        autoActivateOnGlobMatch: true

各配置项含义如下(默认值以 README 表格为准)。

配置项 类型 默认 说明
enabled boolean true 总开关
rulesDir string .agents/rules 工作区内规则目录相对路径
includeAlwaysOnInSystemPrompt boolean true 是否将 always-on 规则注入 system prompt
includeCatalogInSystemPrompt boolean true 是否将领域规则目录注入 system prompt
autoActivateOnGlobMatch boolean true 触及匹配文件时是否自动激活规则

典型用法梳理

若你已在 Antigravity 或兼容工具链中维护 .agents/rules/:

  1. 按上文方式安装并启用插件,确认 rulesDir 与实际目录一致。
  2. 为不变量规则设置 trigger: always_on,为可选领域规则设置 trigger: model_decision,并在 frontmatter 中写好 globs 与 description。
  3. 在 DSH 中编辑会命中 globs 的文件,观察对应领域规则是否在本会话内被激活;或在对话中调用 antigravity_rule(action: "list") 核对加载结果。
  4. 需要临时关闭某条规则时,使用 antigravity_rule(action: "toggle", ...) 或在 Web Rules 页签中切换开关;偏好会写入 settings.json,不改动规则 Markdown 本身。

适用场景与注意

适合谁:已在使用 Google Antigravity 规则布局的团队或个人;希望在 DSH 中保持同一套 .agents/rules/*.md,并需要 always-on 注入、领域目录、按文件激活与可视化管理的场景。

权限与安全:插件在 DSH 进程权限下运行,可读取工作区与用户 ~/.agents/rules/、写入 settings.json,并参与 system prompt 与工具注册。安装前建议阅读 仓库源码 与 MIT 许可证,确认符合你的安全与合规要求。

事实范围:本文仅依据公开 README 与 package.json 撰写,不引用未在资料中出现的案例、用户反馈或性能数据。

结尾

dsh-plugin-antigravity-rules 把 Antigravity 规则目录原样接到 DSH:不复制规则正文,用 settings.json 管开关,用 frontmatter 驱动 always-on、目录与 glob 激活,并提供 antigravity_rule 工具与 Web Rules 页。若要浏览插件条目或跟进 issue,可访问 SkillHub 目录页 与 GitHub:Domush/dsh-plugin-antigravity-rules。

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

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

Xiaoye