EPCN-fla/dsh-custom-headers ↗★ 0

dsh-custom-headers

Per-model custom request headers for DeepSeek Harness: define named header profiles in Settings → Plugins → Plugin configuration, pick one per model in the provider's model catalog, and every call to that model carries those headers. 适合需要针对特定模型配置网关、鉴权或自定义路由请求头的用户。

Package
dsh-custom-headers
Compatibility
Unverified
Harness peer range
>=0.1.5-rc.2
Version
0.1.0
License
MIT
Last updated
Sep 15, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:EPCN-fla/dsh-custom-headers

使用

1. 创建请求头配置

打开 设置 → 插件 → 插件配置,在「网页搜索」下方找到 自定义请求头 卡片,点击展开:

  1. 点击 添加配置;每个配置在卡片内独立成段,默认收起、只显示 ID,点击 ID 行展开后可编辑。
  2. 展开后填写 ID(如 gateway),点击 + 添加请求头 填写 请求头名称 与 值;点击行尾 − 删除一行,点击 删除配置 删除整个配置。
  3. 点击 保存。校验不通过时(ID 为空、ID 重复、请求头名称/值不合法),保存按钮不可用并显示对应错误。

2. 为模型选择配置

打开 设置 → 模型,展开某个提供方卡片,在 模型目录 中展开某个模型的 容量(Capacities)折叠区——「请求头」下拉框与容量配置一起折叠,展开后显示在「上下文窗口」和「最大输出」的下方一行:

  • 默认:不附加自定义请求头(初始状态)。
  • 选择某个配置 ID:之后调用该模型时自动附加该配置的请求头。

尚未保存的提供方/模型行(新建卡片)上的下拉框处于禁用状态;请先保存提供方。

3. 生效时机与优先级

  • 请求头在每次调用时从当前设置解析,修改配置或更换选择后,下一次请求即生效,无需重启。
  • 名称冲突时(大小写不敏感):提供方资料(provider profile)自带的 headers 优先于本插件的模型级请求头;DSH 的归属标识头(User-Agent)始终由 Harness 决定,本插件会过滤同名自定义项。
  • 凭据认证头(如 Authorization、x-api-key)由 SDK 按提供方凭据设置;如需自定义认证方式,请在配置中使用自定义名称的头(例如 X-Api-Key 的网关拼写),并知晓与凭据头同名时可能被 SDK 覆盖。

1. 创建请求头配置

打开 设置 → 插件 → 插件配置,在「网页搜索」下方找到 自定义请求头 卡片,点击展开:

  1. 点击 添加配置;每个配置在卡片内独立成段,默认收起、只显示 ID,点击 ID 行展开后可编辑。
  2. 展开后填写 ID(如 gateway),点击 + 添加请求头 填写 请求头名称 与 值;点击行尾 − 删除一行,点击 删除配置 删除整个配置。
  3. 点击 保存。校验不通过时(ID 为空、ID 重复、请求头名称/值不合法),保存按钮不可用并显示对应错误。

2. 为模型选择配置

打开 设置 → 模型,展开某个提供方卡片,在 模型目录 中展开某个模型的 容量(Capacities)折叠区——「请求头」下拉框与容量配置一起折叠,展开后显示在「上下文窗口」和「最大输出」的下方一行:

  • 默认:不附加自定义请求头(初始状态)。
  • 选择某个配置 ID:之后调用该模型时自动附加该配置的请求头。

尚未保存的提供方/模型行(新建卡片)上的下拉框处于禁用状态;请先保存提供方。

配置存储格式

custom-headers 命名空间的用户层文档:

custom-headers:
  profiles:
    - id: gateway
      headers:
        - name: X-Tenant
          value: acme
        - name: X-Trace-Id
          value: "1"

模型行上的选择(llm-pi-ai 命名空间,由下拉框写入,无需手工维护):

llm-pi-ai:
  providers:
    acme:
      models:
        - id: my-model
          headersProfile: gateway

部署方也可以通过插件的 cordis 行 config: 预置组合层配置(作为用户层的 base):

- id: dsh-custom-headers
  name: dsh-custom-headers
  config:
    profiles:
      - id: gateway
        headers:
          - name: X-Tenant
            value: acme