DSH Plugins Marketplace

DSH Plugins

Plugins

/

Security & Audit

/

DSH-GPW2

D

DSH-GPW2

Manifest valid

A global permission watchdog: a hard budget on auto-approved permission requests. At most 10 per rolling 60 seconds, at least 3 seconds apart; anything past either limit is deferred to the human answe

UI (client)hasBundlePatch

DSH-GPW2 — Global Permission Watchdog (standalone)

A DSH plugin that answers permission requests with a hard global budget, so a long unattended run cannot silently grant everything.

LimitDefaultMeaning
maxPerWindow10auto-approvals allowed per rolling window
windowMs60000the window, in ms
minGapMs3000minimum gap between two auto-approvals

Past either limit it returns next() — "no opinion" — so the request falls through to the human prompt and waits there. It never refuses, and it never changes what is being asked. It only decides who answers and how fast.

Install

dsh plugin --profile <name> add @twinsearth/dsh-gpw2

It mounts itself from its own bundle patch. Settings go on the row it created, matched by id (do not add an insert: for an id that already exists — that appends a second row and the client stops opening):

- id: dsh-gpw2
  config:
    maxPerWindow: 5
    windowMs: 60000
    minGapMs: 5000

Remove the row to disable it entirely.

Why a budget rather than a rule

Every auto-approval is a permission decision made without a human reading it. A watchdog with no ceiling is a plugin that grants everything and is indistinguishable from one that is working correctly.

So it logs two counters. Without the second line, "mounted and working" and "mounted and doing nothing" are the same picture:

dsh-gpw2: active -- at most 10 auto-approvals per 60 s, at least 3000 ms apart, process-wide
dsh-gpw2: N auto-approved, M deferred to the human (limit 10/60s, gap 3000ms, ...)

Requirement

Needs the approval service, which DSH's own base bundle provides (@deepseek-ai/dsh-base mounts @deepseek-ai/dsh-user-approval as id approval).

It also needs the approval/request waterfall. If either is absent the plugin stays pending (waiting for service: …) rather than mounting and silently doing nothing.

Screenshot (Alt+Q)

This package also ships a browser half (lib/client.js, declared as dsh.client). Press Alt+Q while the DSH window has focus, pick a screen or window in the platform picker, then drag a rectangle: the selection is copied to the clipboard as PNG. Enter copies the current rectangle, Esc cancels.

The three limits, stated up front

LimitWhyWhat it means for you
The shortcut is page-level, not system-wideA web shell cannot register an OS-level hotkeyAlt+Q works when DSH is focused; it does nothing in other apps
A source picker appears every timegetDisplayMedia has no API to preselect a display, by designYou choose screen/window each press; there is no "capture silently" mode
The clipboard needs a secure contextnavigator.clipboard.write requires https or localhostOn plain http over the LAN the selection is downloaded as a PNG instead, and the toast says so

There is no state stored, no upload and no relay call: the frame is drawn into a canvas in the page, the selected pixels are cropped locally, and the only output is the clipboard (or a local download fallback).

Why it lives in this package

The operator asked for one package rather than two. The two halves share nothing at runtime -- the watchdog answers approval/request on the server, this half declares inject = [] and never touches an approval -- so a screenshot failure cannot disable the watchdog.

Versions

Latest versionPublishedSize
1.0.2——

Comments

Loading…

Similar plugins

dsh-perm-guard

Auto-approval permission guard: a middle tier between workspace-write and danger-full-access — auto-allows safe operations inside trust directories, always asks a human for destructive ones, with 11 p

Security & AuditDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 1

MIT

JavaScript

dsh plugin --profile web add dsh-perm-guard

by LAwLi3tCoding

Adds an "approve for me" access mode whose approval requests are answered by an independent reviewer model instead of a person: the reviewer can read the workspace read-only, a reviewer that cannot ru

Security & AuditManifest valid

★ 0

NOASSERTION

TypeScript

Oct 14, 2026

dsh plugin --profile web add dsh-approval-review

by yaopushen

Antigravity-style run_command for DSH: short commands return inline within a configurable wait window (default 10s) while longer ones auto-promote into ctx.jobs for later collection and completion not

Workflow & AutomationSecurity & AuditManifest valid

★ 1

MIT

TypeScript

Oct 11, 2026

dsh plugin --profile web add dsh-plugin-background-tasks

by IHS470

DSH plugin: one user-owned rule list, injected into every request system prompt, so the agent has to walk the rules before answering.

Development & InfrastructureManifest valid

★ 0

MIT

JavaScript

Oct 3, 2026

dsh plugin --profile web add dsh-global-rules

Autonomous permission classifier for the auto preset: tool-scoped allow/deny rules, an LLM semantic judge, and git checkpointing for unattended sessions.

Security & AuditDevelopment & InfrastructureManifest valid

★ 0

dsh plugin --profile web add dsh-auto-classifier

by nicecx

Auto-approval agent for DSH permission requests: rule layer (denyAlways/allowlist) plus Hermes Pro semantic adjudication with quick-fail retries, fail-closed to human when Hermes is unavailable, rejec

Security & AuditDevelopment & InfrastructureManifest valid

★ 0

MIT

JavaScript

Aug 31, 2026

dsh plugin --profile web add dsh-auto-approver