PerryLink/dsh-click6

dsh-click

Cross-platform native desktop control tools for DeepSeek Harness (Windows first): screen_shot, screen_read (accessibility tree + pixel description for text-only models), click/type/scroll/key, and app_list/app_launch — every mutating action gated by approval, never stealing foreground focus, with stale-observation rejection and process-identity checks

包名
dsh-click
版本
0.3.10
许可证
Apache-2.0
最近更新
2026年9月12日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:PerryLink/dsh-click

Configuration

All tunables are Schemastery Config fields (changeable from cordis.yml). An id-targeted override replaces the whole row — restate every key you need. cordis.patch.yml documents each key inline.

KeyDefaultMeaning
requireApprovaltrueGate every mutating action behind approval; observers never ask
autoApproveWindows[]Window-title/executable regexes that skip the approval ask (still freshness-checked and audited)
auditSessionEventstrueAppend dsh-click/observed / dsh-click/action session audit events. The adaptive gate already skips the append on envelope-less hosts (rc.6–rc.8, 0.1.1-rc.2, and 0.1.2-rc.1, which fails closed on unknown types at read); set false to stop audit appends entirely 0.1.2-rc.1 (adapted 2026-09-02): the session envelope keeps its ignorable field for stored-log read compatibility only - Session.append still cannot stamp it, so audit-gate behavior is unchanged.
focusFallbackneverWhether an action may bring the target window to the foreground as a last resort (never / allow)
imageModeautoscreen_shot rendering: auto (image when the model accepts images, text otherwise) or text
helperTimeoutMs30000Per-helper-call timeout in ms (1..300000)
maxHelperOutputBytes25165824Cap on one helper response in bytes (1024..67108864)
maxScreenshotSide2560Longest screenshot side in pixels (320..7680); larger captures are downscaled
staleCheckPixelstrueCompare a fresh pixel hash before every action and refuse on change
maxObservationAgeMs30000Maximum age in ms of an observation an action may cite (1000..600000)
maxCachedObservations8LRU cap on cached observations (1..64)
maxElements500Cap on accessibility elements per screen_read (1..2000)
maxTreeDepth32Maximum accessibility tree-walk depth (1..64)
maxTextLength200Truncation length for sanitized model-visible strings (16..10000)
rollbackEnabledtrueBack up and restore control text when type fails
ocr.enabled / command / languagetrue / tesseract / engOptional OCR for the screen_find path (probed at mount; degrades to unavailable when tesseract is absent)

Example override in your profile patch:

- insert:
    - id: dsh-click
      name: dsh-click
      config:
        requireApproval: true
        autoApproveWindows: ['^Notepad']
        focusFallback: never