ShanWuYinShe/dsh-plugins--packages-sandbox-extra-roots ↗★ 0
@chaoset/sandbox-extra-roots
DSH host plugin: extra writable roots for the workspace-write sandbox (Seatbelt/bwrap/Landlock profiles and the fs fence) 适合需要授予 Agent 额外目录写入权限以存放缓存或产物的任务。
同名パッケージの別リポジトリ
インストール
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ShanWuYinShe/dsh-plugins#fd8e58e4a343b37eb0b706118d6a7015bea718f8&path:packages/sandbox-extra-rootsドキュメント
README 全文を読む ↗配置
生效顺序(后者覆盖前者):
- 插件内置默认(空列表)
- bundle patch 中
cordis.patch.yml的 config - 用户 profile/home 的
cordis.patch.yml覆盖 - DSH 设置页 → 插件配置 → 沙盒额外允许目录(保存到
~/.dsh/plugins/sandbox-extra-roots/config.json,立即热生效)
extraWritableRoots:绝对路径数组(设置页里每行一个,支持 ~ 表示用户主目录)。
相对路径/空值会被拒绝并告警;危险根(/、盘根、主目录本身及其父目录,如
macOS 的 /Users)保存时直接拒绝,系统目录(/etc /usr /bin /sbin 及
macOS 的 /private,仅 POSIX——Windows 暂无对应条目)被过滤,重复行自动去重。
设置页卡片在保存前就地预览这些问题行(危险/无效行会禁用保存按钮;系统目录
行保存成功但不生效)。运行期每次
沙盒判定都会对目录的最新真实指向(跟随符号链接后)重新做危险根复查——目录
被替换成指向 / 等危险根的符号链接时立即剔除,不授予。
安全提示:这些目录可获得「写」权限(读本就不受限),请只保留确需写入的工具 缓存;含明文凭证的目录(如
~/.docker、~/.dotnet、~/.gradle)谨慎列入。