# 隐私与边界 > **这个工具是一个学生,不是守卫,更不是小偷。** > > 它只学「**模式**」,不碰你的「**秘密**」。 --- ## 硬承诺(可以自己验证,不必信我) ### ① 零网络 —— 不联网、不上传、无遥测 本包所有脚本**没有任何网络调用**。自己验一遍: ```bash grep -rnE 'Invoke-WebRequest|Invoke-RestMethod|curl|wget|WebClient|HttpClient|smtp|ftp' \ --include='*.ps1' --include='*.sh' . # 预期:无输出 ``` **它不会**把任何内容发往任何地方 —— 没有服务器、没有"匿名统计"、没有回传。 ### ② 只读你在的那个仓库 所有读取都限制在**你执行脚本时的仓库目录内**: - `git ls-files`(只列该仓库**已跟踪**的文件) - `$ROOT` 下的路径 **它不会**去读:其他项目目录、浏览器数据、环境变量里的密钥、SSH key、 聊天记录、剪贴板、任何仓库外的文件。 ### ③ 不保存、不缓存、不自动提交 - 检查结果**只打印到终端**,不写日志、不入库、不建缓存 - `contribute` 只生成一个**本地 md 文件**,**提交与否完全由你决定** - **没有任何自动提交、自动推送、后台常驻** ### ④ 学的是模式,不是秘密 `constraints.md` 里积累的是**抽象规则**,例如「凭据不要硬编码」, **而不是**「你的密码是 `xxx`」。 **自检标准**:把规则库**整个公开**,你会不会不安? 如果会,说明它学错了东西 —— 直接提出来改掉。 ### ⑤ 你的规则库是你的资产 - 安装是**幂等**的:重复安装**绝不覆盖** `core/constraints.md` - 你可以**随时删掉**这个包,留下自己积累的规则文件 —— 它们不依赖本包运行 - 贡献是**手动**的:你决定给谁看、给什么 --- ## 它想成为什么 > **一个不断学习的学生**:从每次开发、每次踩坑里学到一点,越用越懂。 真正的核心是这三件事: | 机制 | 学什么 | |---|---| | `DISTILL.md` | 从这次的坑里,能学到什么**下次不用再踩** | | `MERGE.md` | **三个项目独立踩到同一个坑** —— 这才是真的普遍规律,不是个例 | | `PRUNE.md` | 学过时的东西要**忘掉** —— 记住一切等于什么都没记住 | **脱敏检查只是一道安全网**,不是这个包的主题。 它存在的意义不是"审查你",而是**帮你别把该留在家里的东西带出门**。 **如果这个包给你的感觉是「被监视」,那它就做错了方向 —— 请直接说,改掉它。** --- ## 如果你不想要脱敏检查 它完全是**可选**的: ```bash # 不装 hook(默认就不装,必须手动启用) # 脚本也可以直接删掉: rm -rf scripts/ .githooks/ .sanitize-deny.txt ``` 删掉之后,规则库、提炼流程、精简流程**照常工作** —— 因为**脱敏是外围,学习才是内核**。 --- ## 为什么仍然保留它 因为「把不该带出去的东西带出去」这件事,**靠自觉一定会出错** —— 本包自己就犯过:准备公开时发现 **31 处项目专名**、 一个把本地路径写进**文件名**的示例,还有一个**只检查了第一个文件**的 hook。 所以它的定位是:**不打扰你的安全网**。 挡住了就告诉你"这类内容可能要脱敏",而不是"你违规了"。