关于 audit
confide:audit 是用于批量检查会话文件中个人信息(PII)的安全技能,适合评估原始或脱敏语料。检测在本地执行,报告仅包含聚合统计,不泄露文本或文件名。
主要功能
- 01递归扫描 Markdown 和文本文件
- 02分层本地 PII 检测
- 03按类型与检测层统计
- 04计算脱敏率及残留指标
- 05生成 Markdown、JSON 和可选 HTML 报告
适用场景
- 01估算原始语料中的 PII 规模
- 02检查脱敏语料的残留风险
- 03分享统计结果而不暴露文本
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ glebis/ claude-skills --skill audit安装后在 Claude Code 中输入/audit确认已加载。
附带文件scripts/audit.py
详细介绍
confide:audit — 面向语料库的纯统计 PII 审计
衡量整个会话文件夹中包含多少 PII,同时绝不暴露任何 PII。审计会对每个文件运行 shared/confide_core.py 中分层的本地检测器栈(regex → Natasha → 本地 LLM),并且只输出汇总数据。这与 real_session_eval 的隐私约定一致:仅在进程内读取文本,只输出计数。
隐私不变量(不得违反)
- 仅限本地。 不调用云端 API。原始对话文本绝不会离开本机。
- 输出仅含统计数据。 报告(Markdown + JSON + 可选 HTML)只包含计数和比率——绝不包含对话文本片段,也绝不包含检测到的 PII 值。
- 不包含文件名。 每个文件的行使用匿名 ID
own-00、own-01、… 标识。绝不会写入或打印原始路径/名称。遇到无法读取的文件时,只记录索引和异常类名。 - 可安全分享。 报告仅包含计数,因此可以分享给云端 Agent,或粘贴到聊天中。PII 会留在本机。
报告内容
n_files、文档字符总数 / 平均数 / 最小值 / 最大值spans_by_type(PERSON、EMAIL、PHONE、DATE、…)和spans_by_layer(regex / natasha / llm)overall_redaction_rate以及每个会话的脱敏率分布(最小值 / 中位数 / 平均值 / 最大值)- 粗略的残留指标:脱敏后仍可检测到的片段——在干净的 RED 语料库中约为 0,在 GREEN 语料库中则是泄漏信号。
运行
将其指向一个文件夹(递归处理每个 .md/.txt 文件;跳过 confide 自身生成的 *.green.md / *.stats.json 输出):
python3 skills/audit/scripts/audit.py FOLDER
选项:
--list paths.txt— 同时或改为审计按每行一个绝对路径列出的文件。--layers regex,natasha,llm— 选择检测层(默认值来自配置)。使用--layers regex执行完全离线且结果确定的扫描(不使用模型/网络)。--out report.md— 报告路径;同时在同一目录写入同名的report.json。--html— 同时生成类似 Tufte 风格的信息面板(report.html,仅含计数)。
写入 Markdown + JSON 报告(以及可选的 HTML),并打印汇总结果——全部仅含计数。
RED 与 GREEN
- RED(原始)语料库: 在任何脱敏之前,评估 PII 问题的规模。
- GREEN(已脱敏)语料库: 残留指标和剩余的
spans_by_type能说明脱敏是否在大规模场景下有效。
运行后
- 报告汇总结果(文件数、按类型/层划分的片段总数、脱敏率分布、残留指标)——绝不要粘贴 PII。
- 如果 GREEN 语料库中的残留并非微不足道,请引导用户使用 confide:anon 重新脱敏,并使用 confide:red 探测重新识别风险。
设置
层的可用性(Natasha、通过 Ollama 运行的本地 LLM)由配置决定——如果尚未安装,请运行 confide:setup。--layers regex 始终可离线运行。
评论
支持 Markdown