AC ccpa-guard
CCPA 合规护栏 (ccpa-guard) v1.0.0。 在 AI 应用输入/输出链路中实时检测 CCPA/CPRA 语境下的个人信息, 按风险分级脱敏或阻断,供 Agent 主动调用。 Use when: 需要在 Agent 处理用户输入或返回结果前,实时拦截/脱敏 加州消费者个人信息;防止 SSN、信用卡、加州驾照、精确地理位置、 生物识别数据、商业信息等流入大模型或被输出泄露;为 AI 应用加装 符合 CCPA/CPRA 的运行时护栏。 核心能力: - 🛡️ 实时检测 SSN、信用卡(Luhn)、美国电话、银行路由号、 加州驾照/身份证、美国护照号、IPv4/MAC、邮箱等个人信息 - 🧩 关键词线索识别:CPRA 敏感个人信息(受保护分类、精确地理位置、 生物识别、商业信息、就业/教育记录、互联网活动等) - 🎭 三种动作:detect(仅检测)/ mask(脱敏放行)/ block(高危阻断) - 📊 风险分级(high / medium / low)与结构化裁决结果(JSON) - 🧱 内核与规则分离:换规则包即得其他法域版本 触发关键词:CCPA、CPRA、加州隐私、个人信息检测、PII detection、 数据合规护栏、AI data protection、US privacy 适用范围:CCPA/CPRA 管辖下的 AI 应用输入/输出文本的运行时防护 运行模式:纯本地,零网络请求,零动态执行 ❎ 外部依赖:Python 标准库(无需额外安装)
CCPA 合规护栏 (ccpa-guard) v1.0.0。 在 AI 应用输入/输出链路中实时检测 CCPA/CPRA 语境下的个人信息, 按风险分级脱敏或阻断,供 Agent 主动调用。 Use when: 需要在 Agent 处理用户输入或返回结果前,实时拦截/脱敏 加州消费者个人信息;防止…
As a process C 53/100 · Has gaps — weak spots: result and completion, when it triggers, inputs and preconditions
How to improve
- 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: 9. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
✓ No remarks against the Agent Skills spec
Process rating: all ten parameters 53/100
- 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
- 100Tools and files. No external tools needed
- 100Steps. 29 steps
- 100Consistency. Name and required fields are in place
- 100Execution cost. Instruction body is 776 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 656: enough signal without eating the budget
- +4Structure: 14 headings
- +3Step-by-step instructions: 29 items
- +4Has examples (1 code blocks)
- +3All 1 scripts are documented
Quality base 70; lint remarks subtract, signals add up to 100. Result: 87.