dsh-coyote

DSH PLUGIN浏览器与联网

仓库 THEWOLFWALKER/dsh-coyote · npm dsh-coyote

浏览器与联网 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

DSH plugin 控制 DG-LAB Coyote 电刺激设备,提供八个安全受限的工具与网页控制面板,支持波形播放与自动刺激。

一句话选型结论

按资料字段整理

dsh-coyote 是浏览器与联网类的 DSH 可安装插件,验证等级 L5 · 运行验证通过,安全审查为低风险,列出 5 项功能,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类浏览器与联网 收录类型可安装插件 验证等级L5 · 运行验证通过 安全审查低风险
验证等级 L5 L5 · 运行验证通过
GitHub 星标 1 复刻 0 · 未关闭 issue 2
最近更新 2026-08-16 创建于 2026-08-15
README 12.1 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add dsh-coyote@0.2.0
  1. 1
    确认版本与运行环境

    兼容的 DSH 版本为 0.2.0-rc.2 等 12 个;版本不匹配时安装会报错。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本0.2.0-rc.2 等 12 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名dsh-coyote可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-coyote:DeepSeek Harness 的 DG-LAB Coyote 电刺激控制插件

  • 安全边界控制
  • 八个模型工具
  • 网页控制面板
  • 波形播放与导入
  • 自动刺激映射

适用场景

联网搜索

上游标签

dsh-plugin

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度稳定按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
  • L4.4_RESOLVED_ARTIFACT 安装版本已解析 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L5:安装和运行都在沙盒里跑通过,装完能直接用的概率高。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。
  • 标注了兼容的 DSH 版本(0.2.0-rc.2 等 12 个),按版本装不容易报错。
  • 列出了 5 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在浏览器与联网场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-coyote当前 L5 · 运行验证通过 低风险 1 0.2.0-rc.2 等 12 个 有
dsh-our-free-model L3 · 安装规范通过 低风险 8,796 未标注 有
dsh-web L3 · 安装规范通过 低风险 8,549 未标注 无
BrowserSkill L4 · 沙盒安装通过 低风险 8,456 未标注 有
dsh-pocket L5 · 运行验证通过 低风险 1,656 0.2.0-rc.2 等 12 个 有
Browser4 L4 · 沙盒安装通过 中风险 1,152 未标注 有

仓库档案

浏览器与联网
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方THEWOLFWALKER仓库 dsh-coyote · 默认分支 main
分类浏览器与联网search
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言TypeScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue1 / 0 / 2收录时的数值,非实时
创建 / 更新2026-08-15 · 2026-08-16最后推送 2026-08-16
本站收录2026-08-27首次进入本站目录的时间

README 全文

12.1 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-coyote

English · 简体中文

Agent- and GUI-controlled DG-LAB Coyote e-stim plugin for DeepSeek Harness (DSH).

One safety envelope serves two faces with equal bounds: eight model-facing coyote_* tools and a DSH-aligned browser panel. Neither can bypass soft limits, the asymmetric increase rate limiter, session cooldown, playback caps, or the disconnect fail-safe. Since v0.2 an opt-in auto-stim layer can also map agent events (tool calls, errors, turn ends…) to bounded pulses — see Auto-stim.

> Adults only. This plugin controls a real e-stim power box. Read Safety before use.

Control panel — the DSH-aligned web GUI (⚡ Coyote button in the DSH sidebar footer):

How it works

DSH agent ──coyote_* tools──┐
├─▶ CoyoteRuntime (safety envelope) ─▶ V3 socket server ─▶ DG-LAB App (QR) ─▶ Coyote device
DSH web GUI ──/gui bridge───┘         soft limits · rate limit · cooldown · hard caps · fail-safe
agent events ──auto-stim (opt-in)──┘  armed gate · cooldown · maxIntensity cap · baseline restore

The plugin is the WebSocket server side of the official DG-LAB V3 socket protocol: pairing mints a QR the official App scans; from then on the plugin is the control terminal and the App relays commands to the device.

Quick start

dsh plugin --profile web add dsh-coyote

The plugin's bundle patch inserts its row automatically — zero config needed, the defaults below apply. To tune, target the inserted row in your profile overlay:

- id: coyote
config:
port: 9999          # WebSocket port; the phone must reach this machine
softLimitA: 60      # agent-side caps, 0..200 — tune to the user's comfort
softLimitB: 60
  1. The DSH web GUI shows a ⚡ Coyote button in the sidebar footer — it opens the control panel.
  2. Tap 开始配对 (pair); a QR appears.
  3. Scan it with the official DG-LAB App on a phone on the same network (or set publicWsUrl behind a wss:// reverse proxy).
  4. The panel and the agent can now both drive the device — always within the same limits.

The eight tools

Tool What it does
coyote_status Full snapshot: link state, QR, device strengths, effective caps, cooldown, and (when enabled) the auto-stim block. Read-only.
coyote_pair Start pairing; returns QR payload + renderable QR image.
coyote_disconnect End the session: stop everything, break the App relation, arm the cooldown.
coyote_set_strength Set A/B/both in the raw 0..200 domain. Absolute value or relative delta. Reports clamping.
coyote_play_wave Play by preset name, declarative spec, or raw hex entries; once/loop, intensity scale, B-mirror.
coyote_stop_wave Stop waveform playback, keep strength levels.
coyote_panic_stop Emergency: clear both waveform queues, zero both strengths. Idempotent, always safe.
coyote_waveforms List the library; import Game-Hub .pulses JSON or bare hex lists.

Tool descriptions teach the safety model, so the model behaves well without reading source.

Safety model

Every bound — enforced in CoyoteRuntime before anything is sent:

Mechanism Default Effect
Soft limits softLimitA/B 100 Agent-side cap per channel, 0..200.
Device hard limits App-side Effective cap = min(soft, device); re-read on every report, so lowering the limit on the phone wins immediately.
Asymmetric rate limit 40/s, burst 40 Strength increases draw from a refilling token bucket; decreases always pass instantly.
Session cooldown sessionCooldownSec 3 s (adjustable, 0 disables) A fresh pairing must wait after the previous session ended. Prevents rapid re-pair abuse.
Session hard cap maxSessionSec 3600 s (0 disables) One bound session auto-ends (stop + zero).
Playback cap maxPlaySec 600 s Every playback self-terminates; the device queue is cleared at the cap.
Disconnect fail-safe always on App socket loss stops playback, clears queues, resets state.

The GUI panel goes through the identical runtime — the browser cannot bypass the agent's bounds, and vice versa.

Waveforms

  • 12 built-in presets (呼吸 Breathing, 心跳 Heartbeat, 惩罚 Punish, …) with suggested starting intensities, synthesized deterministically from declarative specs (frequency sweep 10..1000 ms, intensity sweep 0..100, curves linear|sine|pulse|random, optional on/off duty cycle).
  • Community import: paste Game-Hub .pulses JSON ([{name, pulseData:[hex…]}]) or bare hex lists; validated, persisted under waveformDir, reloaded on start. Re-importing a name replaces it.

Auto-stim

Opt-in event-driven stimulation (v0.2): the plugin listens to the DSH session event firehose plus the agent/error / agent/status runtime events, reduces them to a closed vocabulary of eleven domain events, and fires a bounded pulse for each rule you enable. Off by default — nothing listens and no section appears until autoStim.enabled: true.

Every pulse is an absolute transient: channel strength is boosted to min(rule.intensity, maxIntensity) (the runtime still clamps to soft/device limits and the rate limiter), the waveform plays once, then the pre-pulse strength is restored. Works from a freshly paired device at strength 0.

Gate chain — a pulse fires only if every gate passes, and gated events are dropped and counted, never queued:

Gate Effect
rule enabled Events without an enabled rule do nothing.
armed The GUI 布防/解除 switch; disarmed drops every event silently.
not busy One pulse at a time, restore included.
cooldown Default 5 s minimum between auto triggers.
App bound No device connected → skipped, counted.
maxIntensity Independent cap (default 30) on top of every rule.

Default rule table (all intensities ≤ the default maxIntensity 30):

Event Fires when Default
turn_start A new agent turn begins tap @12, 2 s, on
assistant_start First streamed chunk of a turn tap @15, 2 s, on
stream_tick Every tickIntervalSec (5 s) of streaming tremor @15, 2 s, off
tool_call The model invokes a tool tap @20, 2 s, on
tool_error A tool call fails punish @25, 6 s, on
agent_error Turn fails (deduped per turn across both event sources) punish @30, 8 s, on
turn_end_completed Turn completes heartbeat @20, 4 s, on
turn_end_aborted Turn aborted / interrupted / blocked calm @12, 3 s, off
turn_end_max_tokens Turn hit the token ceiling saw @20, 3 s, off
todo_clear Todo list becomes all-completed (fires once per list) heartbeat @18, 4 s, on
agent_idle Agent running→idle edge calm @12, 4 s, off
- id: coyote
config:
autoStim:
enabled: true          # opt-in master switch
maxIntensity: 30       # cap over every rule, 1..200
cooldownSec: 5         # min seconds between auto triggers
tickIntervalSec: 5     # stream_tick cadence
restoreBaseline: true  # restore pre-pulse strength after each pulse
events:
tool_error: { intensity: 25, durationSec: 6, waveform: punish, channel: A }
agent_error: { enabled: false }   # any field overrides, the rest inherit

Unknown event names fail loudly at startup with the valid list. Waveform names resolve case-insensitively: built-in id first, then imported waveform names (a typo fails soft per pulse and is logged — it cannot crash the host). The GUI panel gains an 自动电击 section with live armed state, fire/skip counters, and the 布防/解除 button; coyote_status carries the same block for the model. Teardown disarms, cuts an in-flight pulse short, and restores the baseline immediately.

Configuration

All fields optional; defaults shown.

Key Default Notes
host 0.0.0.0 Bind address. 0.0.0.0 lets LAN phones reach the QR URL.
port 9999 WebSocket port. 0 = OS-assigned.
publicWsUrl — QR base override for wss:// reverse proxies.
waveformDir coyote-waveforms Where community imports persist.
softLimitA / softLimitB 100 Per-channel agent-side caps, 0..200.
sessionCooldownSec 3 Cooldown before re-pairing; 0 disables.
maxSessionSec 3600 Hard cap per bound session; 0 disables.
maxPlaySec 600 Hard cap per playback.
defaultPlaySec 30 Duration when a tool call omits one.
increaseRatePerSec 40 Sustained increase speed (units/s).
increaseBurst 40 Immediate increase budget (units).
autoStim enabled: false The whole Auto-stim block: enabled, maxIntensity (30), cooldownSec (5), tickIntervalSec (5), restoreBaseline (true), and per-events rule overrides.

Architecture

src/
protocol/   pure V3 codec: frames, wave entries, QR payload
waveform/   composer (spec→windows), library (12 presets), importer, scheduler
transport/  WebSocket server + control-terminal role (bind, heartbeat, fail-safe)
runtime/    the safety envelope everything routes through
auto-stim/  rules (vocabulary+defaults+normalize), mapper (host→domain events), engine (gates+pulse), attach (cordis listeners)
gui/        /gui bridge: JSON ops ↔ runtime, broadcasts status
tools/      the 8 coyote_* tool definitions
client/index.js   browser panel (no build step, loader-injected React, DSH CSS variables)
tests/            148 tests: unit + protocol-level MockApp + offline client harness

Design rules: pure protocol functions, one safety choke point, thin honest tools, no over-design. Evidence for every protocol decision is the official DG-LAB-OPENSOURCE socket/V3 documentation.

Development

pnpm install
pnpm test         # 148 tests
pnpm typecheck
pnpm build        # lib/ (tsdown)

Note: pnpm build prints one tsdown↔rolldown upstream validation warning (Invalid input options … "define"); it is cosmetic, the artifacts are correct.

Safety

This plugin drives a real e-stim device on a human body. Follow the DG-LAB safety guidance that ships with your device. In short:

  • Start from single-digit strength; increase gradually; agree on limits and a stop signal with the user before starting.
  • Keep the App-side hard limit as the final guard — the runtime honors it dynamically.
  • Chest, neck, and head are unsafe electrode placements; stop immediately at any discomfort or unexpected behavior (coyote_panic_stop never makes things worse).
  • Use only with informed adult consent.

License

MIT · third-party notices in NOTICE.md

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-coyote 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add dsh-coyote@0.2.0` 即可。对应的 npm 包名是 `dsh-coyote`。

dsh-coyote 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-coyote 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-coyote 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-coyote 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2。版本较多,只列出前 8 个。

dsh-coyote 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-coyote 有哪些功能?

安全边界控制、八个模型工具、网页控制面板、波形播放与导入、自动刺激映射。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

浏览器与联网
按星标排序,可作替代方案

dsh-our-free-model

dsh-our-free-model

在 DeepSeek Harness 中装上这个 DSH plugin,无需登录、注册或填 API Key,即可直接调用 DeepSeek

L3 · 安装规范通过 8,796 星

dsh-web

dsh-web

侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。

L3 · 安装规范通过 8,549 星

BrowserSkill

BrowserSkill

BrowserSkill 的 DeepSeek Harness 浏览器自动化桥接插件,通过原生浏览器工具控制可见的 Chrome 和 Edg

L4 · 沙盒安装通过 8,456 星

dsh-pocket

dsh-pocket

DSH Pocket 让 DeepSeek Harness 装进口袋:电脑跑 dsh web,手机扫码即实时同步访问(局域网+公网),人在外

L5 · 运行验证通过 1,656 星

Browser4

Browser4

L4 · 沙盒安装通过 1,152 星

agentrq

agentrq

L4 · 沙盒安装通过 1,140 星

THEWOLFWALKER 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。