dsh-tui-secret-guard
Manifest validBlocks high-confidence secrets before dsh-TUI sends them to a model, compliant with dsh ecosystem manifest v0.15.
dsh-TUI Secret Guard
A small dsh-TUI ecosystem plugin that prevents high-confidence credentials from being sent to a model. It scans locally, never stores prompt content, and reports only credential categories.
Why it helps
Pasting a .env fragment, deployment command, or debugging log into an agent is an easy way to disclose a live key. Secret Guard blocks known provider tokens, private-key headers, and credential-like assignments before delivery. The normal path uses tui.dsh/v1alpha1#DecisionEvents, so rejected text is not written to the session. Its compatibility fallback rejects the latest user message at agent/pre-step, before the model request.
Install
dsh plugin --profile dsh-tui add ./dsh-tui-secret-guard
Decision interception is default-deny in Community v0.15. Grant the declared permission in ~/.dsh-tui/extension-grants.json:
{
"grants": {
"community.dsh-tui.secret-guard": [
{
"name": "session.input.intercept",
"scope": "tui/input"
}
]
}
}
The grant is live-reloaded by dsh-TUI. The plugin requests no storage, message-observation, network, filesystem, or command permission.
Configuration
enabled: true
genericAssignments: true
minGenericLength: 24
showStatus: true
genericAssignmentsdetects values assigned to names such asAPI_KEY,CLIENT_SECRET,ACCESS_TOKEN, andPASSWORD.minGenericLengthcontrols only generic assignments. Provider-specific formats retain their own strict lengths.showStatusdisplayssecret guard: armedand a process-local blocked count. It does not persist counters or content.
Placeholders including ${ENV_NAME}, YOUR_API_KEY, redacted, and masked values are ignored. A blocked prompt must be edited and submitted again; automatic redaction is intentionally avoided because silently changing code or credentials can produce misleading model output.
Protocol compliance
dsh-plugin.json targets manifest 0.15, declares the optional DecisionEvents contract, requests the exact tui/input scope, and documents its fallback. Validate it against dsh-ecosystem-spec:
npm run validate:manifest -- --manifest /absolute/path/to/dsh-plugin.json --grant session.input.intercept
Before publishing, add the final repository and artifact digest to dsh-plugin.json so a Verified claim can bind the released tarball.
Development
npm install
npm test
npm run pack:check
Comments
Loading…
Similar plugins
by ZhijiangTang
DSH plugin: block dangerous shell commands and secret leakage before execution (tools/pre-execute veto)
★ 0
↓ 58/wk
MIT
JavaScript
Aug 16, 2026
dsh plugin --profile web add dsh-safeguardby ArcaneOrion
DSH terminal front door: a pi-tui workbench with layered messages, file-edit pane, permission presets and hot-swappable themes
★ 0
JavaScript
Oct 2, 2026
dsh plugin --profile web add @arcaneorion/dsh-tuiby MoruTeaven
该仓库暂未提供项目说明。
★ 0
Apache-2.0
JavaScript
Sep 27, 2026
dsh plugin --profile web add @moruteaven/dsh-key-panelby 030611
Privacy-minimal heuristic per-turn verification summaries for DeepSeek Harness
★ 4
↓ 296/wk
MIT
TypeScript
Sep 3, 2026
dsh plugin --profile web add dsh-verification-receiptby MkaliezZ
Dependency-installation guard for DeepSeek Harness: classifies package-manager commands as ALLOW, ASK, or BLOCK before execution.
★ 0
TypeScript
Aug 29, 2026
dsh plugin --profile web add @mkaliezz/dsh-dependency-firewallby chiro2001
DeepSeek Harness × OpenCode TUI 前端:把 dsh 的 Agent、会话、工具接入官方 opencode 终端。OpenCode TUI frontend for the DeepSeek Harness (dsh): agents, sessions and tools in the official opencode terminal.
★ 7
TypeScript
Sep 11, 2026
dsh plugin --profile web add @chiro2001/dsh-oc