工具结果敏感信息自动脱敏:模型看到前掩码 API key / token / JWT / 私钥与配置密钥。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:DamonKoy/dsh-plugins#path:/packages/dsh-secret-redactor
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本。请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DeepSeek Harness 敏感信息脱敏插件。对标 Codex 0.147 的「命令展示与会话回放中的 secrets 脱敏」。
English | 中文
功能
- 工具输出自动脱敏:挂钩
tools/post-execute流水线,模型看到的每个文本块中的 API key、Bearer token、JWT、PEM 私钥、通用高熵 token 自动掩码——已在真实会话中 验证(sk-abc123...变为sk-***)。 - 环境变量密钥收集:变量名匹配
TOKEN / KEY / SECRET / PASSWORD / PASSWD / CREDENTIAL / AUTH / SIGNING(值长度 >= 8)的值会被收集并在输出中出现时掩码。 - SSH 密码收集:
~/.dsh/dsh-ssh.json中的密码自动掩码(可配置关闭)。 redact_text模型工具:在记录、持久化或回显之前,对任意文本/JSON 脱敏。redact_secret_status模型工具:报告规则数与已收集密钥数(只报数量,不报值), 用于确认脱敏器已生效。- 包私有 RPC(
harness.handle,仅沙箱 realm;CLI 静态加载下跳过):secret-redactor/redact与secret-redactor/status,供 client 半区与其他插件调用。
安装
dsh plugin --profile web add github:DamonKoy/dsh-plugins#path:/packages/dsh-secret-redactor
重启 dsh web。脱敏默认开启。
配置
可选文件 ~/.dsh/dsh-secret-redactor.json:
{
"enabled": true,
"mask": "***",
"disablePatterns": ["generic-mixed"],
"patterns": ["CUSTOM-\\d{8}"],
"extraSecrets": ["literal-secret-1"],
"collectEnv": true,
"collectSshPasswords": true
}
| 字段 | 默认 | 含义 |
|---|---|---|
enabled |
true |
总开关 |
mask |
"***" |
用户提供密钥/规则的替换文本 |
disablePatterns |
[] |
按名称禁用内置规则(见规则目录) |
patterns |
[] |
附加正则(带 g 标志) |
extraSecrets |
[] |
需掩码的字面字符串(长度 >= 4) |
collectEnv |
true |
收集匹配的环境变量值 |
collectSshPasswords |
true |
收集 ~/.dsh/dsh-ssh.json 密码 |
配置在每次挂钩时重新读取,修改即时生效,无需重启。
规则目录(25 条内置)
覆盖:sk- 系(OpenAI/DeepSeek)、GitHub(ghp_ 等)、AWS AKIA、Slack xox、
Google AIza、HuggingFace hf_、GitLab glpat-、Bitbucket ATBB、阿里云 LTAI、
腾讯云 AKID、Stripe sk_live_/sk_test_、npm、Telegram 机器人、SendGrid SG.、
DigitalOcean dop_v1_、Shopify shpat_、PEM 私钥块(RSA/EC/OpenSSH/PGP/加密)、
Bearer 头、JWT、data:…;base64,… URI 载荷、scheme://user:password@ 连接串凭据、
apiKey/password/secret/token 键值对(含 JSON 引号形式)、32+ 混合大小写 hex、
64+ base64 形状、40+ 混合大小写标识符形状。
防误伤内建:普通工具名(如 hindsight_search_knowledge_pages)、纯小写长单词
(即使 45 字符)、git commit 哈希、UUID、无凭据的 https://user@host、git@…
SSH URL 均不掩码。node --test test/ 运行 13 例双向测试(正例+反例)。
安全说明
- 脱敏作用于模型可见的工具结果内容(主要泄露面)。持久化日志仍存原始规范化结果值; 日志级脱敏在路线图上。
- 收集的密钥仅驻留内存,不落盘、不上传。
redact_secret_status只报数量与规则名,绝不包含值。
License
MIT
链接
同类插件
superdesigndev/treg★ 428
给 Agent 的工具目录:按「要做的事」检索约 2,600 个外部接口(SEO 与 SERP、外链、社交、人物与公司信息补全、广告库、抓取),查看参数与单次调用价格后直接调用,凭据由服务端注入。附带技能,MCP 行在未设置 TREG_TOKEN 前保持禁用。
Lum1104/dsh-browser★ 216
Chrome 侧边栏扩展,让 DSH 直接操控你的浏览器,无需视觉能力。
zhaoolee/notes★ 142
将 DSH 对话导出为锤子便签风格 PNG,或在配置的账号工作区中新建和更新 Markdown 便签。
liustack/modsearch★ 115
纯文本 agent 的联网搜索桥:搜索网页与 X,返回结构化 JSON 证据(search/fetch/引用)。
taxueseek/argo★ 94
专为 agent 打造的搜索工具:多语言,覆盖中文/英文/学术/代码/购物/金融/新闻/百科。
Vladimir-Human/ru-marketplace-mcp#dsh★ 64
面向俄罗斯十家电商平台的技能与可选 MCP 行:跨 Wildberries、Detsky Mir、Yandex Market 比价,以及各平台的搜索、商品卡与评论。安装后 13 个技能立即可用;两行 MCP 默认关闭,需将 RU_MARKETPLACE_MCP_DIR 指向本地克隆,该克隆需要 Python 3.12+ 与 uv。