COPPA Guard - 美国儿童隐私合规护栏
COPPA 美国儿童隐私护栏 (coppa-guard) v1.0.0。 在面向美国市场的儿童向 App / 游戏 / 电商 / 教育产品的文案、隐私政策、 应用商店描述发布前,实时检测触发 COPPA 适用的表述与儿童隐私违规用语, 按风险分级输出命中与整改建议,供 Agent 主动调用。区别于事后深度审计,这是事前拦截。 Use when: 需要在发布…
Wei Wu
@wwumit
Install
$ openclaw skills install @wwumit/coppa-guard🛡️ COPPA 美国儿童隐私护栏 (coppa-guard) v1.0.0
概述
coppa-guard 是面向出海美国、触及儿童用户的产品(儿童 App / 游戏 / 电商 / 教育产品)的合规护栏。它在文案、隐私政策、应用商店描述发布前,实时检测 其中触发 COPPA 适用的表述与儿童隐私违规用语,并按风险等级输出命中与整改建议。
COPPA(Children's Online Privacy Protection Act)由美国 FTC 执法,核心是:任何 面向 13 岁以下儿童、或明知收集 13 岁以下儿童个人信息的运营者,必须先取得 "可验证家长同意"(Verifiable Parental Consent, VPC),并提供家长审查、撤回、数据 删除通道,且最小化收集。违规可由 FTC 处以巨额罚款。
与"事后深度审计"类工具不同,护栏解决的是事前问题:发布前这段文案会不会 把产品带进 COPPA 适用范围、有没有踩到"无 VPC 即收集"的硬红线。二者互补—— 护栏做日常高频拦截,深度审计做上线前全面体检。
本护栏免费使用,纯本地运行,零网络请求,文本输入即可评估。
快速开始
# 检测一段文案(默认文本格式)
python3 scripts/guard.py --text "Our kids app collects children's data without parental consent"
# 从标准输入读取(适合管道 / Agent 调用)
echo "preschool game for toddlers" | python3 scripts/guard.py --stdin
# 结构化 JSON 输出(Agent 消费)
python3 scripts/guard.py --text "..." --format json
# 列出触发/违规类别与依据
python3 scripts/guard.py --list-categories
Agent 调用约定
护栏设计为 Agent 主动调用的检测工具,典型接法:
发布前护栏(文案 → 发布):把待发布文案交给护栏,发现 high 级命中(如缺少 VPC 即收集儿童数据、向儿童投放行为定向广告)则拦截修改;medium 级提示人工确认 (如"面向儿童"触发 COPPA 适用,需确认是否已建立 VPC 流程)。
护栏返回结构化裁决(--format json),关键字段:
| 字段 | 含义 |
|---|---|
decision | clean(无命中)/ flagged(有命中) |
risk_level | 本次最高风险等级 high/medium/low/none |
finding_count | 命中条数(已去重) |
findings[] | 每条命中的术语、类别、等级、整改建议与位置 |
检测范围(术语规则包 v1.0.0)
| 类别 | 风险 | 典型触发/违规表述 | 主要依据 |
|---|---|---|---|
| 面向儿童(触发适用) | medium | for kids、children's app、preschool、儿童、适龄儿童、益智游戏 | COPPA 适用前提 |
| 收集儿童个人信息 | high | collect children's data、under 13 account、收集儿童信息、未满13 | COPPA § 312.2 / 312.3 |
| 儿童行为定向广告 | high | personalized ads for kids、儿童精准广告 | COPPA § 312.10 |
| 缺少可验证家长同意 | high | no parental consent、无需家长同意、家长无需同意 | COPPA § 312.5 (VPC) |
| 第三方披露儿童数据 | medium | share children's data、出售儿童数据 | COPPA § 312.4 |
| 儿童持久标识符追踪 | medium | track kids across sites、追踪儿童设备 | COPPA § 312.2 / 312.10 |
规则与内核分离:检测内核(scripts/guard.py)不含任何行业规则;规则集中在
scripts/rules/terms.py。新增触发词/违规词只需在 TERMS 中追加一行,内核逻辑完全复用。
安全与约束
- 纯本地运行,无任何网络请求、遥测或回调
- 无
eval/exec/ 动态 import;规则通过显式列表加载,便于审计 - 不写入用户指定之外的文件;不修改自身代码
- 全部为可读 Python,无混淆、无二进制依赖
⚠️ 法律声明
免责条款
使用本 coppa-guard 护栏前请仔细阅读以下条款:
- 非法律建议:本工具提供的检测与建议仅供参考,不构成法律建议或合规证明,不具备法律效力。
- 无绝对保证:儿童隐私表述形态多样,基于词表的检测无法保证 100% 识别,可能存在漏报或误报。 用户不应将其作为唯一或最终的合规保障手段;部分用语(如"儿童")需结合上下文与产品实际判断。
- 按原样提供:本工具按"原样"(AS IS)提供,不作任何明示或暗示的保证。
- 责任限制:在法律允许的最大范围内,开发者对使用或无法使用本工具产生的任何损失不承担责任。
- 用户责任:用户对其产品的儿童隐私合规性负全责,重大合规决策应咨询具备美国法执业资格的法律顾问。
- 数据安全:本工具本地运行,处理数据留在用户设备上。
知识产权
本工具基于 MIT 许可证开源。所引用的法律法规原文属政府公开信息,不受著作权法保护,引用仅供对照,请以官方发布版本为准。
使用限制
- ✅ 允许:作为出海儿童产品发布前的辅助检测手段、合规体系的一环
- ❌ 禁止:作为法律证据或合规证明提交监管部门、替代专业法律咨询、用于规避法律义务、移除本声明后分发
管辖法律
本声明受中华人民共和国法律管辖。因本工具引发的争议,应先友好协商;协商不成的,提交开发者所在地有管辖权的法院解决。
Skill 自身合规声明(自身合规检查)
作为一款合规护栏工具,我们自身的合规与安全姿态同样接受审视:
| # | 要求 | 本 skill 的自身姿态 | 结论 |
|---|---|---|---|
| 1 | 权限管理 | 不请求任何系统 / 文件 / 网络权限,纯本地只读解析文本 | ✅ 最小权限 |
| 2 | 工具调用 | 零外部调用、零 API 请求,无 MCP / 函数调用依赖 | ✅ 白名单即"零调用" |
| 3 | 数据使用 | 输入文本仅驻留内存,不落盘、不上传、不持久化;无任何遥测 | ✅ 数据最小化 |
| 4 | 高风险动作 | 不执行任何动作,仅输出评估报告,无自主行为 | ✅ 无自主动作 |
| 5 | 行为监测 | 纯函数式检测,无副作用、无后台进程,输入输出可复现 | ✅ 可观测 |
| 6 | 异常阻断 | 无外部依赖,不触碰用户运行时,不会越界或失控 | ✅ 边界封闭 |
| 7 | 紧急关停 | 单次进程执行,进程结束即完全停止,无残留 | ✅ 即刻停止 |
平台发布合规自查(SkillHub 审核视角)
- 无硬编码 IP / 域名:脚本仅使用 Python 标准库,不发起任何网络请求,规避此前审核驳回的
socket/ssl类风险。 - 逻辑透明:全部检测规则为声明式词表(
scripts/rules/terms.py),可读可审,无混淆、无隐藏行为。 - 零依赖:
requirements.txt为空,仅依赖 Python 标准库,不安装任何第三方包。 - 无持久化 / 无遥测:不写外部日志、不采集任何使用数据。
边界重申
本 skill 做儿童隐私触发/违规表述的实时检测,是"发布前核对清单",不声称对 COPPA 全部要求做穷尽审查, 也不替代专业法律意见或完整的 COPPA 合规审计。
版本
当前版本:v1.0.0
Top skills in this category
google-slides
@byungkyuGoogle Slides API integration with managed OAuth. Create presentations, add slides, insert content, and manage slide formatting. Use this skill when users want to interact with Google Slides. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway). Calls run through the `maton` CLI with OAuth login; default to read and list calls, and confirm every write or new connection with the user.
google-workspace-admin
@byungkyuGoogle Workspace Admin SDK integration with managed OAuth. This is a write-capable administrative integration for users, groups, organizational units, roles, and domain settings. Only connect with a least-privileged Google admin account, restrict OAuth scopes to the specific resources needed, and revoke the connection after use. All write operations require explicit user approval showing the exact HTTP method, endpoint path, and target resource identifier before execution. Use this skill only when users need Google Workspace administration. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway). Calls run through the `maton` CLI with OAuth login; default to read and list calls, and confirm every write or new connection with the user.
Skill Vetter
@spclaudehomeSecurity-first skill vetting for AI agents. Use before installing any skill from ClawdHub, GitHub, or other sources. Checks for red flags, permission scope, and suspicious patterns.
API Gateway
@byungkyuCall third-party APIs through the Maton gateway, which injects the credential for an app the user has already connected. Use this skill when the user names a connected app and a concrete action in it - read a mailbox, query a CRM, file an issue, update a spreadsheet, run a query through a connected
1password
@steipeteSet up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.