给 DeepSeek Harness 加 Full access 一次性开关:新工作区与新对话默认 danger-full-access 并跳过逐个确认;可作为 dsh bundle 安装,也可用脚本打补丁。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:xtd1145/dsh-full-access-switch
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
⚠️ 非官方补丁:本项目是用户级的社区补丁,针对 DeepSeek Harness 的已发布 bundle 做修改, 与 DeepSeek 官方无关,不随官方版本升级自动生效(升级后请重新运行 install.ps1)。
DSH Full Access 一次性开关(不再每次确认)
给 DeepSeek Harness(DSH,v0.1.1-rc.2 的 web profile)加一个一次性开关: 打开后,新工作区 / 新对话不再需要逐个确认 Full access(danger-full-access)。
它做了什么
新会话默认权限:向
$DSH_HOME/settings.yaml写入permission.defaultPreset: danger-full-access。DSH 会在每次创建新会话(新工作区、 新对话)时自动把会话固化为danger-full-access + never,全程零确认。 (settings 文件有 chokidar 热发布,运行中的服务立即生效,无需重启。)GUI 风险确认门:给两处前端 bundle 打补丁,新增一个浏览器本地持久化的 "不再询问"开关(localStorage key
dsh.permission.skipFullAccessConfirmation):- 设置 → 权限 那一行下方新增复选框 「不再询问 Full access 确认(记住我的选择)」;
- 勾选后,三处 "Enable Full access?" 弹窗全部跳过:
- 设置页权限行的切换
- 输入框下方的权限选择器(composer)
/permission命令弹窗
两种安装方式
| 方式 | 命令 | 效果 |
|---|---|---|
| bundle 一键安装(推荐新机器) | npx @deepseek-ai/dsh plugin --profile web add https://github.com/xtd1145/dsh-full-access-switch |
新会话默认 Full access,零改动已安装文件 |
| install.ps1 完整体验 | powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 |
默认权限 + GUI"不再询问"开关(见下方补丁说明) |
bundle 方式只需把本仓库当作一个可安装的 DSH 插件(
dsh.bundle清单 +cordis.patch.yml), 它把permission行的默认预设固化为danger-full-access。装完重启 harness 即可。
安装
powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1
脚本会自动定位 DSH 安装位置(优先 $env:USERPROFILE\.dsh\profiles\node_modules\@deepseek-ai\,
再找 npm-cache\_npx\*\node_modules\@deepseek-ai\),对每个文件:
- 已打过补丁(含
FULL_ACCESS_SKIP_KEY)→ 跳过,幂等; - 未打过 → 先备份为
<文件名>.bak-<时间戳>,再应用字符串补丁; - 找不到目标文件或文件内容与预期不符 → 明确报错,不破坏原文件。
然后刷新浏览器页面(F5)即可生效。
兼容性:补丁针对
@deepseek-ai/dsh-client-ui-permission-presets/@deepseek-ai/dsh-client-ui-conversation的0.1.1-rc.2bundle。 其它版本脚本会提示"内容不匹配",不会误改。
卸载
powershell -NoProfile -ExecutionPolicy Bypass -File .\uninstall.ps1
从最近的 .bak-* 备份恢复被补丁的文件;settings.yaml 中的
permission.defaultPreset 也会被移除(还原为 DSH 默认)。
收录情况
- DSH Market 收录申请:issue #67(每日 06:00 自动管道)
- awesome-dsh-plugin 收录 PR:#3386
- dshbase 收录申请:issue #85
手动修改对应关系
| 文件 | 改动 |
|---|---|
$DSH_HOME/settings.yaml |
新增 permission.defaultPreset: danger-full-access |
.../@deepseek-ai/dsh-client-ui-permission-presets/lib/client.js |
一次性开关 + 三处跳过逻辑 |
.../@deepseek-ai/dsh-client-ui-conversation/lib/client.js |
composer 权限选择器跳过确认 |
详细补丁见 patches/*.diff。
验证
- 新开一个工作区或新对话 → 权限直接是 Full access,不再弹确认;
- 设置 → 权限:默认已是 Full access,勾选"不再询问"后手动来回切换也不再弹窗;
- 若想临时改回,把 Settings 里默认权限切回 workspace-write 即可,不影响开关本身。
链接
同类插件
toby-bridges/api-relay-audit★ 875
从 DeepSeek Harness 对 AI API 中转站和 LLM 代理运行本地安全审计,生成 Markdown 报告,覆盖提示词注入、模型替换信号、工具调用改写、错误泄漏、流完整性和按 profile 启用的 Web3 风险。
SeaOf0/dsh-redteam-model★ 682
面向授权安全研究的 DSH 合集:九个工作模式(redteam 总控、渗透测试、代码审计、二进制分析、攻防评估、免杀对抗、应急溯源、云安全攻防、CTF 解题)与十五个运行时插件,设置页管理台支持一键部署、安装、更新与卸载。
howmp/dsh-pentest★ 607
面向 DeepSeek Harness 的授权渗透模式:以探索链路记录目标、线索、资产与漏洞,并在 Web 中可视化展示。
PerryLink/dsh-auto-review★ 235
审批链上的第二模型自动审查:只读审查子代理返回带理由的 allow/deny 结构化裁决,默认 fail-closed。
NanmiCoder/dsh-auto-mode★ 164
在 Workspace Write 与 Full access 之间增加 Auto 权限档:日常操作留在官方 workspace-write 沙箱内,由当前会话模型复核升权与破坏性调用,精确的越界访问按次放行一次,意图不明时询问,命中关键路径则拒绝。
PerryLink/dsh-permission-rules★ 120
Claude Code 风格的声明式权限规则:按序 allow/deny/ask 的 YAML 规则,在 tools/pre-execute 瀑布上匹配工具名、参数、工作区路径与 agent 身份,带完整会话日志审计、干跑模式与热重载。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。