dsh-plugin-approval-alert
doncelee229-cmyk
DeepSeek Harness 审批/选择方案系统级通知提醒,显示工作区名、点击跳转、多语言。Approval & decision alerts with native notifications for DeepSeek Harnes…
PROJECT TOPICS
PROJECT README
Agentic Control Plane for DeepSeek Harness: every tool call is checked against your policies before it runs, and every decision is recorded — what ran, what was blocked, and why.
This is a native Cordis plugin on dsh's typed interception points, not a shell-hook shim. It registers on:
tools/pre-execute — the policy decision. allow lets the call through, deny blocks it with the reason in the trajectory, ask hands off to dsh's own approval flow.tools/post-execute — output scanning. A server-side block turns the result into corrective feedback; shadow-mode notices surface what enforcement would have done.dsh plugin --profile <your-profile> add dsh-plugin-acp
export ACP_BEARER_TOKEN=gsk_... # or keep it in ~/.acp/credentials
dsh --profile <your-profile>
No build step, no dependencies, plain ESM. Installing from git works too (dsh plugin add github:agentic-control-plane/dsh-acp-plugin) and needs no build allowance.
Get a key at cloud.agenticcontrolplane.com. No key? The plugin says so loudly and stays out of the way — it never bricks a session.
Override the row in your profile's cordis.patch.yml:
- id: acp
name: dsh-plugin-acp
config:
governBase: https://govern.agenticcontrolplane.com # or your self-hosted gateway
agentTier: interactive # default: interactive when an approval service is mounted, background otherwise
timeoutMs: 4000
ACP_GOVERN_BASE, ACP_BEARER_TOKEN, ACP_AGENT_TIER, and ACP_SHADOW=off work as environment variables too.
An outage of the control plane must not brick the harness, and a lapse in coverage must never be silent:
[ACP] ⚠ UNGOVERNED warning is logged, and a line lands in ~/.acp/lapse.log.In headless compositions with no approval service mounted, dsh itself resolves ask to deny — unattended runs cannot self-approve.
packages/acp is Zed's Agent Client Protocol — an unrelated project that shares an acronym. This plugin is the Agentic Control Plane.@deepseek-ai/dsh-hooks-claude-code bridge runs an unmodified hooks.json, so govern.mjs works today with zero new code — deny and ask are honored, but input rewriting is not. This native plugin is the recommended path.npm test
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。