dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
DSH (DeepSeek Harness) plugin that adds a destructive command guard on top of danger-full-access.
DSH (DeepSeek Harness) 插件:在 danger-full-access 基础上加一层“破坏性命令护栏”。
workspace-write: filesystem / shell still keep Full Access.
比 workspace-write 更开放:文件系统 / shell 仍保持 Full Access。danger-full-access: batch delete, format, disk wipe, forced git operations, mass permission changes are blocked or require approval by default.
比 danger-full-access 更安全:批量删除、格式化、抹盘、强制 Git 操作、批量权限变更等默认拦截或要求批准。⚠️ This is a “guardrail / last reminder”, not an OS-level security boundary. Command-line text matching can be bypassed by variables, encoding, or indirect execution. Use a real sandbox or a dedicated permission account when you need strong isolation. ⚠️ 这是“减震器 / 最后一道提醒”,不是 OS 级安全边界。命令行文本匹配可能被变量、编码、间接执行绕过;真正需要强隔离时请使用系统沙箱或专用权限账号。
tools/pre-execute seam / 通过官方 tools/pre-execute 扩展点在执行前拦截破坏性命令。| Mode / 模式 | Behavior / 行为 |
|---|---|
block |
Reject dangerous commands directly / 命中危险命令直接拒绝 |
ask |
Return “requires user approval” and guide the user to confirm or allowlist (default) / 命中危险命令返回“需要用户批准”,引导用户确认或加入允许列表(默认) |
off |
Disable the guard / 关闭守卫,完全放行 |
D:\AI\Guarded-Full-Access (or your preferred path). / 把本仓库放到 D:\AI\Guarded-Full-Access(或你喜欢的路径)。C:\Users\Administrator\.dsh\profiles\web\package.json dependencies:"dsh-guarded-full-access": "file:D:/AI/Guarded-Full-Access"
C:\Users\Administrator\.dsh\profiles\web\cordis.patch.yml:- insert:
- id: dsh-guarded-full-access
name: dsh-guarded-full-access
config:
mode: ask
You can also install via dshx install if the plugin is published to npm / GitHub. / 也可通过 dshx install 安装(如果插件已发布到 npm / GitHub)。
To make Guarded Full Access appear in the DSH permission-mode selector, add this to cordis.patch.yml:
- id: permission
config:
presets:
guarded-full-access:
sandbox: danger-full-access
approval: never
name: Guarded Full Access
description: Full access with destructive command guard (blocks/asks on rm -rf, format, force git, etc.)
The repo includes agent-presets/guarded-full-access/. Copy it to C:\Users\Administrator\.dsh\.agent-presets\guarded-full-access\ and choose Guarded Full Access in the DSH Agent preset settings.
仓库内已附带 agent-presets/guarded-full-access/,复制到 C:\Users\Administrator\.dsh\.agent-presets\guarded-full-access\ 后,即可在 DSH 设置的 Agent 预设中选择 Guarded Full Access。
# cordis.patch.yml plugin config
mode: ask # block | ask | off
logFile: null # default ~/.dsh/logs/guarded-full-access.log
allowPatterns: [] # user allowlist (regex; matching commands are allowed)
rm -rf, rm -fr, rmdir /s /q, rd /s /q, del /s /q, format, mkfs*, diskpart, clean all, shred, dd if=/dev/zero, truncate -s 0, git reset --hard, git push --force/-f, git branch -D, git clean -fdx, chmod -R 777, chown -RRemove-Item -Recurse -Force, Remove-Item to drive root / environment, Clear-Content, Clear-Item, Format-Volume, Clear-Disk, Initialize-Disk, diskpart, format /q, takeown /F, icacls ... /reset /T| Command / 命令 | Description / 说明 |
|---|---|
/guard-status |
Show current mode, stats, and audit log path / 查看当前模式、统计、审计日志路径 |
/guard-allow <regex> |
Add a regex to the allowlist / 把正则加入允许列表 |
/guard-mode <block\|ask\|off> |
Switch mode at runtime / 运行时切换模式 |
Every block / ask / allow is appended to ~/.dsh/logs/guarded-full-access.log (JSON Lines) for traceability.
所有拦截 / 询问 / 放行都会追加写入 ~/.dsh/logs/guarded-full-access.log(JSON Lines),便于事后追溯。
npm test # run node:test / 运行 node:test
npm run check # node --check syntax / node --check 语法检查
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。