AllDSH
EN

treg

superdesigndev · superdesigndev/treg

凭据注入式代理 + 共享工具注册表:一个 token 调用 3000+ 编目端点,密钥从不交给调用方。

treg 是 superdesigndev 开发的 DSH 插件,凭据注入式代理 + 共享工具注册表:一个 token 调用 3000+ 编目端点,密钥从不交给调用方。收录于集成与连接、工具与能力和技能与智能体。验证等级 L2(结构完整),安全扫描尚未完成,尚未声明具体的兼容版本,条目最后核查于 2026-09-18,采用 NOASSERTION 许可。安装命令:dsh plugin --profile web add github:superdesigndev/treg

本条目由 赤榆 核查,数据更新于 · 引用规则

L2active
treg 验证面板:验证等级 L2(共 5 级)——清单文件有效,关键字段齐全。安全扫描:未验证(未运行扫描)。兼容目标:DeepSeek Harness 未声明。许可:NOASSERTION。GitHub 星标:1,629。条目最后核查 2026-09-18。
treg 的验证面板。该条目处于 5 级验证中的 L2 级:清单文件有效,关键字段齐全。安全扫描:未验证(未运行扫描);兼容目标:DeepSeek Harness 未声明;许可:NOASSERTION;条目最后核查于 2026-09-18。 验证规则说明

安装命令

dsh plugin --profile web add github:superdesigndev/treg

需要先启动 harness:npx @deepseek-ai/dsh web,然后执行上面的命令。第一次用?先看安装教程。

它是什么

treg 用一个 token 提供两样东西:一个在服务端注入 provider 凭据的托管代理,以及一个让团队共享自有 endpoint、厂商 CLI 与 skill 的注册表。仓库自称「agent 工具的 OpenRouter」;托管服务是 treg.to,代码本身也设计成可以自建。

最需要纠正的误读是「注册表」这个名字——那只是较小的一半。真正承重的一半是中转:agent 照常拼一个上游请求,在前面加上 https://treg.to/call/,treg 按 host 解析出对应工具,解密匹配的凭据,然后把字节转发出去。

凭据到底存在哪里

装之前先看这一段。下面的流向来自源码与文档,而不是宣传段落。

  • agent 用的 token 存在你本机。 treg login 把一个身份 token 写入 ~/.treg/config.json,文件权限 0600、所在目录 0700(也可以从 TREG_TOKEN 环境变量读取)。它代表一个 (user, org) 成员身份,不是 provider 密钥。
  • provider 凭据存在服务端。 SECURITY.md:存储的密钥用 Fernet 加密,密钥只存在于服务端环境变量中,且「代理从不把密钥交给调用方」——对 HTTP 工具而言,「注册表在服务端注入凭据并发出上游调用;调用方的 token 只负责授权」。
  • 调用走 treg,不直连 provider。 架构文档明确否定了另一条路:竞争方案的网关「在笔记本上解密密钥」,treg 把这称为「treg 存在的意义就是要避免的情况」。
  • treg 会把自家 header 去掉再转发。 x-treg-token 与 x-treg-org 都在丢弃列表里,所以你的 token 也不会泄漏给 provider。treg run 更进一步:在本机以一个受限的 treg-run 用户身份执行厂商 CLI,并施加出网白名单。

也就是说,默认路径既不把 provider 密钥存在你本机,也不从你本机发出。文档记载的唯一例外是走 OAuth 的 treg run:服务端只把短期叶子 access token 交给本地沙箱,refresh_token 与 client_secret 始终留在服务端。

treg 能看到什么

中转方必然看得见它中转的内容。来源在这一点上异常直白,而且两个方向都值得一读。

  • 成功的调用不留内容。「中继只转发字节,审计行只记录状态码、大小与耗时。」
  • 失败的调用会保留脱敏证据。 CallRecord.error_request / error_response 会留下调用方发出的内容和 provider 回应的「脱敏、截断副本」,脱敏在截断之前执行,管理端视图 14 天后清除。
  • 响应会被归档。 每个答案的每个版本都连同时间戳保留,文档称这是有意为之——「未来的数据产品」。团队可以读回自己那次调用收到的答案。
  • 请求体会被限制。 在非计费路径上,只有声明了 Content-Length 且不超过 64 KiB 的调用方请求体才会被保留;更大或分块的上传只留下 query 参数那一半。

treg 不需要你的请求体也能工作,但它确实能看见,而 provider 的答案会留在注册表上。

哪些免费、哪些需要账号

  • 目录(catalog)是免费那条路。 匿名调用——走已验证的公共路由、不需要 provider 密钥——免费,也不需要 provider 账号。付费目录端点要么用团队预付余额(用 treg 自己的密钥),要么用团队自己存的密钥;调用方自己的密钥永远优先,且这类调用不计费。treg 没有公布价格的端点会被拒绝,而不是免费提供服务。
  • 你自己的工具需要账号和团队:treg secret add、treg add <tool> --base-url、treg upload(扫描 .env 并对照约 80 个已知 provider,同时扫描 skill 目录与已安装的目录 CLI),以及 treg skill install。团队是作用域单位,支持按成员配置工具白名单。自建也受支持并被鼓励:PyPI 基础包只是 CLI,要跑注册表需要 pip install "tools-registry[server]"。

DSH bundle 实际装了什么

package.json 里声明的是 "dsh": { "bundle": { "patch": "./dsh/cordis.patch.yml" } },而那份 patch 只贡献两行:

  • treg-skill —— 始终启用,不需要 token。它挂载 treg-dsh,后者的 dsh/index.js 注册了一个 ctx.skills provider,用于发布打包进来的 dsh/skills/treg/SKILL.md。
  • treg-mcp —— @deepseek-ai/dsh-mcp-client,指向 https://treg.to/mcp/,走 streamable HTTP,Bearer header 从环境变量读取。它默认是关闭的:disabled: !!js (process.env.TREG_TOKEN ?? '') === ''。

所以准确的说法是:装完之后,dsh 不会注册任何联网的 treg 工具——你只得到一个 skill。把 TREG_TOKEN 导出到环境里并重启 dsh,MCP 那一行才会启用,之后才会出现 mcp__treg__catalog_search、catalog_get、call、balance 与 my_tools。这个表达式是在启动时求值的,所以对已经跑起来的 harness 再导出 token 不会有任何变化;打包的 skill 也明确写了这一点。docs/DSH-PLUGIN.md 还解释了为什么这个 bundle 是纯 JavaScript、没有构建步骤、也不依赖 @deepseek-ai/*:dsh plugin add github:... 拉取的是源码而不是构建产物,而一个 prepare 脚本会让文档里的安装命令在 pnpm ≥10 下直接失败。

运行要求

  • 安装写法:文档中的命令是 dsh plugin --profile <name> add github:superdesigndev/treg,profile 名字在那份文件里是占位符。这个 bundle 没有发布到 npm——package.json 里的名字是 treg-dsh,而这个名字在 npm 上不存在。
  • 没有安装期脚本。 package.json 没有 scripts 字段——没有 preinstall / install / postinstall / prepare——也没有声明任何 dependencies 或 peer dependencies。
  • CLI:Python >=3.12,<3.14,来自 PyPI 发行包 tools-registry(0.19.1);server extra 会额外装上 FastAPI、数据库驱动与 cryptography。bundle 清单里没有 engines 字段。另有一个独立的 npm 启动器 @superdesign/treg(与本 bundle 无关)声明 node >=18。
  • harness 版本:没有声明。 package.json、README、docs/DSH-PLUGIN.md 与打包的 SKILL.md 都没有写出受支持或已测试的 DSH 版本,因此本条目不写 dshTarget,verification 为 L2 而不是 L3。
  • 遥测有文档,而且能关。 指向 treg.to 时,CLI 会向 PostHog 发送匿名命令用量——命令名、退出码、耗时、CLI 版本、操作系统,以及一个随机本地安装 ID——不含参数、凭据、内容与身份标识。可以用 TREG_TELEMETRY=0 或 DO_NOT_TRACK=1 关闭;自建注册表默认不开分析。
  • 网络行为随功能而定:CLI 通过 HTTPS 访问你的注册表;local-proxy 模式会设置 HTTPS_PROXY,并用生成的 CA 签发叶子证书。

已知限制

  • 它和「自带密钥」型工具正好相反。 如果你的要求是任何第三方都不得持有 provider 凭据、也不得看到请求体,那 treg 在架构上就不合格——这不是一个开关能解决的问题。
  • treg.to 一旦故障,调用就中断——文档没有给出 agent 绕过它直连 provider 的路径。
  • 各来源给出的目录数字并不一致:README 写「3,000+ catalogued endpoints across 60+ providers」,打包的 SKILL.md 写「3,300+ endpoints across 74 providers」,而 package.json 写「2,896 agent-friendly tools」。
  • 许可证不是标准 SPDX 许可证。 GitHub API 报 NOASSERTION,而 package.json 写的是 Apache-2.0。LICENSE 原文是 Apache-2.0 外加附加条款,禁止未经书面授权把本软件用于「向第三方提供托管、代管或嵌入式服务」。团队内部(含商业用途)自建是允许的,从自己的产品里调用托管的 treg.to API 也写明无需授权。若你打算转售,请读文件本身,而不是那个字段。
  • 本条目的条目没有做过沙箱验证——security: unverified 就是这个意思。仓库当前有 57 个 open issue,项目约两个月大且处于 pre-1.0,SECURITY.md 说明修复只落在 main。

什么时候用它、什么时候不要用

当工作需要一个你团队并没有采购的商业数据源——SERP 与反链数据、信息补全、广告素材库——而你宁愿按次付费,也不愿再多一份订阅、再多一把密钥散落在每台开发机上时,用它。共享注册表那一半是更耐久的功能:一个同事注册好 endpoint 或厂商 CLI,所有人的 agent 就能用一个 token 调用,而这个 token 本身从不包含凭据。

如果密钥本身就是重点,就不要用它。一个认为凭据必须留在笔记本上、或认为任何中间方都不得记录请求的团队,不该装它——中继就是这个产品。免费层也要留神:匿名调用之所以免费,恰恰因为它不带 provider 凭据。如果你是在评估 DSH bundle,也请注意它真实的暴露面——在你提供 token 之前,只有一个 skill。

FAQ

treg 会把我的 API 密钥存在本机吗?

不会。treg login 只在 ~/.treg/config.json(0600)里存一个身份 token;provider 凭据在注册表数据库里以 Fernet 加密保存。例外是走 OAuth 的 treg run:服务端只把短期叶子 access token 交给本地沙箱进程。

agent 调用工具时,凭据是直达 provider 的吗?

不是。你的机器把请求发到 https://treg.to/call/<upstream-url>,带上 X-Treg-Token;服务端解密匹配的凭据、注入后转发给 provider——转发前会先剥掉自家的 x-treg-token / x-treg-org,所以你的 token 同样不会到达 provider。

treg 能读到我的请求和响应内容吗?

它做中转,所以能——文档也直接承认,而不是否认。成功调用除状态码、大小、耗时外不留内容;失败调用会保留脱敏、截断的副本,管理端 14 天后清除。provider 的响应还会作为版本化历史被归档。

装完 dsh 后 treg 工具立刻可用吗?

不是。bundle 里有一行始终启用的 skill,以及一行带 disabled: !!js (process.env.TREG_TOKEN ?? '') === '' 的 MCP。dsh 启动时环境里没有 TREG_TOKEN,就不会注册任何 mcp__treg__* 工具;有 token 则会出现五个。由于表达式在启动时求值,之后再导出 token 需要重启 dsh。

treg 用的是什么许可证,NOASSERTION 是什么意思?

LICENSE 原文是 Apache-2.0 附加条款,因此 GitHub API 无法匹配到标准 SPDX 标识,只能报 NOASSERTION,而 package.json 写的是 Apache-2.0。附加条款禁止未经书面授权把本软件作为托管或嵌入式服务提供给第三方;自建给自家团队用是允许的。

CLI 会回传数据吗?

指向 treg.to 时会——向 PostHog 发送匿名命令用量:命令名、退出码、耗时、CLI 版本、操作系统和一个随机本地安装 ID,不含参数、凭据与内容。可用 TREG_TELEMETRY=0 或 DO_NOT_TRACK=1 关闭;自建注册表除非你自己配置 PostHog key,否则不发送任何东西。

来源与参考

本页的技术判断建立在以下第一手资料之上,链接可直接追溯核对。

  1. [1]superdesigndev/treg — GitHub插件自身的仓库与 README——本条目的每一项论断都以这份第一手文档逐条核对。
  2. [2]deepseek-ai/deepseek-harness — GitHubDeepSeek Harness、Cordis 运行时与插件加载模型的上游仓库。
  3. [3]@deepseek-ai/dsh on npm — npm已发布的 harness 包,也是本站 dshTarget 字段跟踪的版本来源。
  4. [4]dsh-plugin GitHub topic — GitHub本站用于发现收录插件的检索入口。

全部链接最后核验于 2026-09-11

关于本条目的问题

treg 安全吗?可以安装吗?
treg 当前的验证等级是 5 级中的 L2 级(清单文件有效,关键字段齐全),安全状态为「未验证(未运行扫描)」。验证等级记录的是安装路径被核查到什么程度,它本身不是安全保证:是否安全取决于插件实际能碰到什么。安装前请阅读源码与安装脚本,确认它对文件、shell、网络和凭证的访问范围。
treg 兼容哪个 DeepSeek Harness 版本?
treg 没有声明 dshTarget,因此作者没有承诺任何具体的 DeepSeek Harness 版本。这个字段是可选的,缺失意味着本条目不保证在特定版本上可用;安装前请先在隔离的 profile 中试装。
treg 怎么安装?
先用 npx @deepseek-ai/dsh web 启动 harness,然后复制页面顶部的安装命令。该命令由仓库发布的包名(或条目声明的安装 spec)生成,因此不会与仓库实际发布的内容脱节。本条目最后核查于 2026-09-18。
treg 会把我的 API 密钥存在本机吗?
不会。treg login 只在 ~/.treg/config.json(0600)里存一个身份 token;provider 凭据在注册表数据库里以 Fernet 加密保存。例外是走 OAuth 的 treg run:服务端只把短期叶子 access token 交给本地沙箱进程。
agent 调用工具时,凭据是直达 provider 的吗?
不是。你的机器把请求发到 https://treg.to/call/<upstream-url>,带上 X-Treg-Token;服务端解密匹配的凭据、注入后转发给 provider——转发前会先剥掉自家的 x-treg-token / x-treg-org,所以你的 token 同样不会到达 provider。
treg 能读到我的请求和响应内容吗?
它做中转,所以能——文档也直接承认,而不是否认。成功调用除状态码、大小、耗时外不留内容;失败调用会保留脱敏、截断的副本,管理端 14 天后清除。provider 的响应还会作为版本化历史被归档。
装完 dsh 后 treg 工具立刻可用吗?
不是。bundle 里有一行始终启用的 skill,以及一行带 disabled: !!js (process.env.TREG_TOKEN ?? '') === '' 的 MCP。dsh 启动时环境里没有 TREG_TOKEN,就不会注册任何 mcp__treg__* 工具;有 token 则会出现五个。由于表达式在启动时求值,之后再导出 token 需要重启 dsh。
treg 用的是什么许可证,NOASSERTION 是什么意思?
LICENSE 原文是 Apache-2.0 附加条款,因此 GitHub API 无法匹配到标准 SPDX 标识,只能报 NOASSERTION,而 package.json 写的是 Apache-2.0。附加条款禁止未经书面授权把本软件作为托管或嵌入式服务提供给第三方;自建给自家团队用是允许的。
CLI 会回传数据吗?
指向 treg.to 时会——向 PostHog 发送匿名命令用量:命令名、退出码、耗时、CLI 版本、操作系统和一个随机本地安装 ID,不含参数、凭据与内容。可用 TREG_TELEMETRY=0 或 DO_NOT_TRACK=1 关闭;自建注册表除非你自己配置 PostHog key,否则不发送任何东西。

相似的 DSH 插件

查看全部

DSH Context

bowenliang123

编辑推荐

上下文仪表盘、浏览器与命令,展示上下文窗口由什么构成以及如何变化。

L3
1.4k TypeScript

DSH-IM

xmanrui

用出站长连接把十个 IM 平台接入 DSH 会话,并按渠道分别配置访问策略。

L3
1.4k JavaScript

EasyEDA Agent

zhoushoujianwork

给 AI harness 装上嘉立创EDA专业版的「手」—— typed 原理图/PCB 动作,CLI / Agent Skill / stdio MCP 三形态,附电路模块库。

L2
465 Go

API Relay Audit

toby-bridges

一个 DSH 插件,复用当前 provider 的接入点与凭据,对 AI API 中转站做本地 14 步审计。

L3
838 Python

OpenWrite

LiPu-jpg

dsh 的小说创作套件——独立创作 Agent 预设、90 个 novel_* 工具、三个原生工作台与一张 47 节点审稿 DAG。

L3
743 TypeScript

一个 Chrome/Firefox 侧边栏扩展,为 DSH 打通通往你自己浏览器标签页的纯文本通道——不需要视觉模型。

L3
684 TypeScript
ESC

输入关键词搜索索引,索引由 Pagefind 在部署时生成。