# @deepwhale-cn/dsh-cn-pipl-check **个人信息保护:声明 ↔ 实现对照** —— 给 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 用的 skill 插件。 回答一个具体问题:**隐私政策里承诺的,和代码里真做的,是不是一回事?** 应用市场驳回的第一大原因不是文案写错,而是这两者对不上 —— 政策说"不收集位置", 代码里却有定位权限;政策承诺"可随时注销",App 里找不到入口。 ## 它查什么 | 项 | 具体是什么 | |---|---| | **权限最小必要** | 每个权限有没有非它不可的功能?申请时机对不对?有没有说明用途? | | **第三方 SDK 清单** | 打包里真实存在的 SDK(统计/推送/地图/支付/广告…)与政策里写的清单是否一致 | | **用户权利入口** | 查阅 / 复制 / 更正 / **删除** / **注销账号** / 撤回同意,是否都有可操作的入口 | | **敏感信息单独同意** | 人脸、指纹、行踪、医疗、金融、十四周岁以下 —— 是否**单独弹窗**,而非混在总协议 | | **数据出境** | 出站域名与服务商在境内还是境外,政策有没有写 | | **承诺可落地** | 政策里每一条具体承诺,能否在实现里找到对应 | ## 为什么它比"列一堆检查项"有用 因为**它给的是事实,不是结论**。 `scan.sh` 的输出长这样(真实取证,带文件与行号): ``` ── 2. 代码里真实声明的权限 ── · ACCESS_FINE_LOCATION (AndroidManifest.xml) · NSCameraUsageDescription (Info.plist) ── 3. 可能收集个人信息的第三方 SDK ── · build.gradle: com.umeng.analytics:analytics:9.3.8 · package.json: react-native-amap-geolocation ── 4. 用户权利入口 ── · SettingsActivity.java: 注销账号 ``` 而**定性留给人和审核方** —— 因为合规定性要看业务场景、看有没有真的取得同意、 看监管口径,这些脚本都看不到。一份"看起来权威但其实在瞎定性"的报告,比没有报告更危险。 所以技能正文里反复强调两句话: - **找不到 ≠ 没有**(可能叫别的名字,或在服务端实现) - **❌ 只代表"没匹配上"**,必须人工逐条确认真实情况 ## 安装 ```bash dsh plugin --profile add @deepwhale-cn/dsh-cn-pipl-check ``` 然后重启 dsh。技能会在需要时自动可用。 ## 用法 装上之后,直接让 agent「做一次个人信息保护对照」,它会: 1. 先跑取证脚本(扫权限、SDK、权利入口、出站域名、隐私政策定位) 2. 按六个必查项逐条对照 3. 产出**对照表 + 需人工判断清单**(格式见技能正文第四节) 也可以自己跑脚本: ```bash # 脚本路径由插件注册时注入到技能正文里,或直接到安装目录找 skill/scan.sh scan.sh --dir /path/to/app --policy /path/to/privacy.md ``` ## 与相邻技能的边界 这四个包的划分是**刻意分开的**,不能互相替代: | 包 | 管什么 | | --- | --- | | `dsh-cn-compliance` | **话能不能说** —— 对外文案红线 | | `dsh-cn-ai-labeling` | **AI 标识做没做** —— 生成合成内容的显式/隐式标识 | | **`dsh-cn-pipl-check`** | **说的和做的是否一致** —— 隐私相关 | | `dsh-release-selfcheck` | **东西对不对** —— 发布产物与流程 | ## 许可 MIT