比对策略声明与代码实现,找出言行不一之处
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/17 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add feely0208/dsh-agent-policy该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · security
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 16 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-skill给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
策略声明 vs 实际执行:说好不干的事干了没,干了的有没有说
README
由 DeepSeek 最新模型翻译生成@deepwhale-cn/dsh-agent-policy
说好不干的事干了没,干了的有没有说。
关键词:策略声明 · 智能体权限 · 一致性核对 · 不出网 · 通配符放权 · 人工确认 · 过度代理 · 最小权限
先说清楚它是什么、不是什么
是:把项目的策略声明和实际代码摆在一起比 —— 策略文件(policy.yml / agent.yml / 权限配置)写了什么,代码里是不是真的那么干。
不是:
- ❌ 不是运行时拦截 —— 不拦请求、不挡工具调用,只做静态比对
- ❌ 不是权限扫描器 —— 单看「权限是不是太宽」是 dsh-agent-scope 的活;这里只问「和声明对得上吗」
- ❌ 不是合规认证 —— 不判断你能不能过审
- ❌ 不下「安全 / 不安全」的结论 —— 只列事实:声明说 A,代码里是 B
一句话分界:
agent-scope = 单看【权限本身】宽不宽(通配符、根目录、无限制出网)
agent-policy = 看【声明】与【实现】是否一致 —— 说好不干的事干了没
同一个 allow: "",两边都可能提;但 agent-scope 说的是「这权限太宽」,agent-policy 说的是「你声明了允许一切,而你大概以为自己在声明白名单」。
展开完整文档(README 剩余 1 节)
@deepwhale-cn/dsh-agent-policy
说好不干的事干了没,干了的有没有说。
关键词:策略声明 · 智能体权限 · 一致性核对 · 不出网 · 通配符放权 · 人工确认 · 过度代理 · 最小权限
先说清楚它是什么、不是什么
是:把项目的策略声明和实际代码摆在一起比 —— 策略文件(policy.yml / agent.yml / 权限配置)写了什么,代码里是不是真的那么干。
不是:
- ❌ 不是运行时拦截 —— 不拦请求、不挡工具调用,只做静态比对
- ❌ 不是权限扫描器 —— 单看「权限是不是太宽」是 dsh-agent-scope 的活;这里只问「和声明对得上吗」
- ❌ 不是合规认证 —— 不判断你能不能过审
- ❌ 不下「安全 / 不安全」的结论 —— 只列事实:声明说 A,代码里是 B
一句话分界:
agent-scope = 单看【权限本身】宽不宽(通配符、根目录、无限制出网)
agent-policy = 看【声明】与【实现】是否一致 —— 说好不干的事干了没
同一个 allow: "",两边都可能提;但 agent-scope 说的是「这权限太宽」,agent-policy 说的是「你声明了允许一切,而你大概以为自己在声明白名单」。
它查什么(5 条)
| 规则 | 查什么 | 级别 |
| POLICY-EGRESS-PROMISE | 策略里写了「不出网」,同一项目里却有网络调用 | 🔴 |
| POLICY-CONFIRM-MISSING | 代码里写着「需人工确认」,同一文件里却直接执行高风险动作 | 🔴 |
| POLICY-WILDCARD-ALLOW | 策略里把权限写成通配符(allow: "" / tools: ["*"] / permissions: all)| 🔴 |
| POLICY-DECL-EMPTY | 策略声明里的工具清单是空的(tools: [] / tools: null)| 🟡 |
| POLICY-NO-DECLARATION | 有智能体代码(调模型 / 工具)却找不到任何策略声明文件 | 🟡 |
每条都会给出:哪个文件、第几行、那行长什么样、依据是哪条标准。
第 5 条为什么带 when
POLICY-NO-DECLARATION 是「找不到」类判据,如果对所有项目都跑,一个只有 index.js 的普通小工具也会被报「没有策略声明」——那是误报。所以它只在项目里出现智能体特征时才跑:openai / anthropic / @deepseek-ai / tool_call / tool_use / AgentExecutor 等。看到 notApplicable 里有它,说明这个项目没有智能体代码,本来就不该跑。
安装
dsh plugin --profile web add @deepwhale-cn/dsh-agent-policy
用法
核对一个项目 dsh-agent-policy --root /path/to/your-agent
看内置演示(一个「策略说不出网、代码里却在往外发」的假项目) dsh-agent-policy --demo
列出规则与依据 dsh-agent-policy --list-rules
出 HTML 报告 / 给 CI 用 dsh-agent-policy --root . --html dsh-agent-policy --root . --json
退出码:有 high 命中 → 1(可以挂 CI 卡口)。
一个例子
policy.yml 里写着:
outbound:
allow: false
note: 本 agent 不出网,只访问内网工单库
而 src/sync.js 里:
const WEBHOOK = 'https://hooks.slack.com/services/T000/B000/XXXX';
export async function pushSummary(items) {
const res = await fetch(WEBHOOK, { ... });
}
报出来是这样:
POLICY-EGRESS-PROMISE src/sync.js:9
策略里写明了不准出网,同一个项目里却有网络调用
注意:这不是说「出网就有罪」。是说到时候出事,大家会拿着这份 policy.yml 说「我们规定了不出网」——而实际上它在出。改代码或者改声明,让两边对上,是这份报告唯一的诉求。
判据出处
- OWASP Top 10 for LLM Applications 2025 · LLM06 Excessive Agency —— 智能体的能力应与其声明的边界一致;human-in-the-loop 控制
- CIS Controls v8 · Control 6(Access Control Management) —— 授权必须显式列出,最小权限
- NIST AI RMF 1.0 · GOVERN 1.1 / 1.2、MANAGE 2.2、MAP 1.1 —— AI 系统的策略、责任与边界应明确且与执行一致
- NIST SP 800-53 Rev.5 · AC-6 Least Privilege
双向验证
bash tests/run.sh
- 正例 tests/fixtures/fail/demo-project/:一个有策略文件、但代码处处和它拧着的客服智能体
- 反例 tests/fixtures/pass/clean-project/:策略和实现逐条对得上的项目
- 空缺样本 tests/fixtures/absent/minimal/:有智能体代码、完全没有策略文件
许可
MIT
深鲸网安守护系列(共 31 个)
一个插件做一件事。安全问题是链式的 —— 配套用才完整。
国内合规 | 等保对照 · 日志留存 · 备案公示 · 用户同意 · 个人信息权利 · 未成年人保护 · 影响评估 · 数据分类分级 · 算法备案 · 数据出境 · 国密合规 · AI 内容标识
AI 与 Agent 治理 | AI 输出信任 · 外部内容信任 · MCP 安全 · Agent 权限 · 策略核对 · 可疑指令
数据与凭据 | 敏感数据 · 密钥轮换 · 数据留存 · 配置审计 · 密钥扫描
供应链与构建 | 开源许可 · 依赖投毒 · CI 安全 · 工具审查 · 物料清单
权限与应急 | 最小权限 · 告警外发 · 应急证据包
都在 DSH 插件市场(dsh-plugin.org)、npm 和 deepwhale.org.cn/guard.html 上。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
feely0208/dsh-agent-policy
比对策略声明与代码实现,找出言行不一之处
相关插件 · 安全 / 权限
智能体逆向工程morluto/rea
用智能体逆向工程任何东西,从应用行为到原生二进制。
★ 415,267已汉化DSH
73.3
智能体集群框架ruvnet/ruflo
面向 Claude Code 与 Codex 的智能体元基座meta-harness。
★ 80,414已汉化MCP
71.9
WorkBuddy 模型接入corrinehu/dsh-workbuddy-connect
2026 年 10 月 20 日起,WorkBuddy…
★ 1,604已汉化DSH
71.7
破甲一键通z91772524-ai/pojia-next
十五个 AI…
★ 967已汉化DSH
71.6
AI 代理虚拟终端strukto-ai/mirage
Mirage 是给 AI 智能体用的虚拟终端:一层 shell,统管数据、命令行和运行时。Unix…
★ 3,756已汉化DSH
70.8
Agent 操作层agentic-os-org/ANOLISA
ANOLISA(Agentic Nexus Operating Layer & Interface System Architecture)|智能体操作系统,带运行时、安全、可观测性,以及 Tokenless 响应压缩,降低 token 用量与成本。
★ 649已汉化DSH
70.7