前言¶
在 DSH 的插件/预设生态中,coding 模式需要稳定的命令执行环境。已核实资料给出的官方路径里,minimal 预设使用持久 bash;dsh-coding-preset 针对 Windows,将 shell 换成持久 PowerShell 7(pwsh),并保留官方 minimal 的 coding 会话边界:只暴露 pwsh 与 str_replace_editor。
需要说明:资料标记该包为 DEPRECATED,并指出 DSH 官方 minimal 模式现在默认提供同类功能。下面按已核实事实介绍其定位、能力、安装方式和限制。
这是什么¶
Saikel-Orado-Liu/dsh-coding-preset 是一个 Windows 适配的 DSH coding-mode agent preset。它的目标是让 DSH web profile 在 Windows 上使用持久 pwsh 会话,而不是官方 minimal 预设中的持久 bash。
已核实资料中的关键边界:
- 保留官方 minimal persona:
You are a helpful software engineer assistant. - coding 模式会话只暴露两个工具:
pwsh和str_replace_editor - 持久 shell 基于
node-pty/ConPTY - 许可证为
MIT - README 标记为
DEPRECATED,建议使用 DSH 官方 minimal 模式
核心能力¶
持久 pwsh¶
在 danger-full-access 下,它提供 persistent PTY 执行。同一会话中的变量、函数、别名和当前目录在调用之间保留。
在 read-only 和 workspace-write 下,执行走一次性 pwsh -Command 路径,状态不保留。
沙箱提权¶
受限命令被拒绝时,可以携带 sandbox_permissions 和 justification 发起单次审批,经过 ctx.approval 处理。拒绝或缺少 justification 时按失败关闭处理。
该提权只作用于单次调用,不改变会话模式。
模式切换¶
有效 sandbox mode 发生变化时,它会关闭 persistent terminals,并在下一次调用时按新模式重建 shell。
安装与国际化¶
安装到 DSH web profile 时,postinstall 会部署 preset 文件与内部包;也支持手动部署。资料说明包含英文和简体中文 locale 支持。
安装与启用¶
前置¶
本机需要有 PowerShell 7(pwsh),不是 Windows PowerShell 5.1(powershell.exe)。
安装到 web profile¶
先安装到 web profile:
npx @deepseek-ai/dsh plugin --profile web add @gamegeek-saikel/dsh-coding-agent-preset
再启动 DSH:
npx @deepseek-ai/dsh web
如果 DSH CLI 已全局安装,也可以改用 dsh:
dsh plugin --profile web add @gamegeek-saikel/dsh-coding-agent-preset
dsh web
注意:已核实资料中的 package.json name 是 @gamegeek-saikel/dsh-coding-preset,与上面安装命令中的 @gamegeek-saikel/dsh-coding-agent-preset 不一致。本文按资料给出的安装命令记录;实际安装前应确认 npm 上可安装的包名。
手动部署¶
如果不用 npm 包安装,可以手动部署:
1、把 agent.cordis.yml 和 preset.yml 复制到:
~/.dsh/.agent-presets/coding/
2、运行 install.ps1,把两个内部包复制到:
~/.dsh/profiles/node_modules
以及 harness 的 node_modules。
典型用法¶
持久性检查¶
在 danger-full-access 会话中,可以这样检查持久性:
1、运行:
Write-Output "hello"
2、再运行一条读取上一命令所设变量的命令。
如果第二条命令能读到第一条命令留下的状态,说明持久 shell 生效。
受限模式¶
在 read-only 或 workspace-write 会话中,命令按一次性 pwsh -Command 执行。不要期待变量、函数、别名或当前目录跨命令保留。
单次提权¶
如果受限命令因文件访问被拒绝,输出中会提示可重试一次并携带 sandbox_permissions。重试时使用 justification 说明原因;获批后仅当前调用生效,会话模式不变。
适用场景与注意¶
适合:
- 在 Windows 上使用 DSH coding 模式,并希望命令执行落在持久
pwsh的开发者 - 希望 coding 会话只暴露
pwsh和str_replace_editor的使用者 - 需要在
danger-full-access与受限模式之间保持明确行为边界的使用者
注意:
- 该包被标记为
DEPRECATED。如果 DSH 官方 minimal 模式已可用,优先使用官方 minimal 模式。 - 它要求
pwsh,不要求也不兼容 Windows PowerShell 5.1 的powershell.exe。 - 插件/预设会随当前 DSH 进程运行。安装前应检查源码、依赖、命令包装、PTY 后端子进程行为和沙箱逻辑,并确认许可证
MIT符合使用要求。 - DSH 的社区目录是独立站点,不等同于 DeepSeek 或幻方的官方应用商店;不要把该 preset 理解为官方应用商店中的默认组件。
结尾¶
dsh-coding-preset 的价值在于把 DSH coding 模式的 Windows 路径聚焦到持久 pwsh 和两个固定工具上。由于资料标明它已弃用,当前更稳妥的做法是先确认 DSH 官方 minimal 模式是否已覆盖需求;若仍要安装该 preset,应按本文步骤检查 pwsh、安装命令、包名和源码。
GitHub:https://github.com/Saikel-Orado-Liu/dsh-coding-preset
目录页:本文资料未提供固定 URL,可在 DSH 社区目录中按 dsh-coding-preset 查找。