AF pipl-guard
PIPL 运行时护栏 (pipl-guard) v1.0.0。 在 AI 应用的输入/输出链路中实时检测个人信息,按风险分级 执行脱敏或阻断,供 Agent 主动调用。区别于事后审计,这是事中防护。 Use when: 需要在 Agent 处理用户输入或返回结果前,实时拦截/脱敏 个人信息;防止敏感数据流入大模型或被输出泄露;为 AI 应用加装 符合《个人信息保护法》的运行时护栏。 核心能力: - 🛡️ 实时检测中国大陆身份证、手机号、银行卡、护照、车牌、 邮箱、IP/MAC 等结构化个人信息(含 Luhn / 身份证校验位校验) - 🧩 关键词线索识别(生物识别、医疗健康、行踪轨迹、未成年人等 敏感个人信息类别) - 🎭 三种动作:detect(仅检测)/ mask(脱敏放行)/ block(高危阻断) - 📊 风险分级(high / medium / low)与结构化裁决结果(JSON) - 🧱 内核与规则分离:换规则包即得行业版(金融版规划中) 触发关键词:护栏、guardrail、运行时防护、实时脱敏、输入输出过滤、 个人信息拦截、PIPL 护栏、AI 合规护栏、敏感信息阻断 适用范围:AI 应用输入/输出文本的运行时防护 运行模式:纯本地,零网络请求,零动态执行 ❎ 外部依赖:Python 标准库(无需额外安装)
PIPL 运行时护栏 (pipl-guard) v1.0.0。 在 AI 应用的输入/输出链路中实时检测个人信息,按风险分级 执行脱敏或阻断,供 Agent 主动调用。区别于事后审计,这是事中防护。 Use when: 需要在 Agent 处理用户输入或返回结果前,实时拦截/脱敏…
As a process F 35/100 · Will not run — References files that are not bundled: scripts/guard.py, scripts/rules/
How to improve
- The text references files that are not there: add them or drop the references.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 0
✓ No critical or high findings
Files scanned: 0. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- warning
missing-refreference to a missing file: scripts/guard.py - warning
missing-refreference to a missing file: scripts/rules/
Process rating: all ten parameters 35/100
- 0Tools and files. 2 referenced file(s) missing: scripts/guard.py, scripts/rules/
- 0Result and completion. Does not say what the result is
- 0Inputs and preconditions. Does not say what the process needs to start
- 0Failures and branches. Linear process with no failure handling
- 0Progress reporting. Says nothing while it works
- 20When it triggers. No condition that starts the skill
- 100Steps. 13 steps
- 100Consistency. Name and required fields are in place
- 100Execution cost. Instruction body is 734 tokens
- 100Running it twice. No mutating operations
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +5Description has no quoted example phrases that should trigger the skill
- +4Description does not say when NOT to use the skill (false activations)
- +3Output format is not stated: the model decides each time
- +1No license
- +2Single-language instructions
- +3Description length 582: enough signal without eating the budget
- +4Structure: 14 headings
- +3Step-by-step instructions: 13 items
- +4Has examples (1 code blocks)
Quality base 70; lint remarks subtract, signals add up to 100. Result: 75.