Skip to content

儿童安全 ​

面向儿童的产品,安全不是功能列表里的一行,而是所有设计决策的前置约束。这个 App 的安全目标是:让孩子在不需要账户、不公开个人信息的前提下,进行温和、可控的天文探索。

无账户、本地存储 ​

儿童主流程不需要注册和登录——没有账户,也就没有账户数据可泄露。愿望、抽星记忆、聊天记录、课堂进度全部保存在当前设备的浏览器里,不上传任何服务器。

实现上,所有持久化都走浏览器 localStorage,读取时逐字段做类型校验,不合法的数据当空处理。代价是浏览器清理数据后内容会丢失,这个取舍对儿童产品是值得的:隐私优先。

内容边界:三道防线 ​

孩子和星体聊天、往愿望墙写内容时,输入会经过三道防线:

  1. 硬拦截。在调用大模型之前,先用本地规则过滤:涉及自伤、危险行为的直接温柔拒绝;包含电话、地址、学校等个人信息的提醒"不要把这些写进聊天里";作业代写、算命占卜、伪科学这类请求则被"这已经飞出我的星轨了"式地挡回去
  2. 话题边界。不是天文问题、也不属于情感陪伴的输入,星体会接住话头但不展开,自然地把话题带回星空
  3. 模型约束。进入模型的请求还受系统提示词约束:只能聊天文和温柔陪伴;必须优先依据准备好的知识资料回答,不允许编造事实;资料不足要明确说"不确定";神话故事和科学事实必须分开讲

实现上,前两道防线是服务端的本地代码——几组关键词表(危险、拒绝范围、陪伴场景)加一条隐私正则(匹配手机号、邮箱、学校地址等),在任何模型调用之前执行,命中即返回准备好的引导话术,请求根本不会到达模型。第三道是注入模型的系统提示词。

设计逻辑是纵深防御:提示词约束是"软"的,可能被绕过;但进不了模型的输入永远是安全的。三道防线里任何一层失效,另外两层仍然兜底。同一套过滤复用在聊天和愿望墙写入两个入口。

科学边界 ​

科普产品还有一条特殊的线:不能教错。

  • 天文数据来自 NASA 官方接口,每个数据点标注来源
  • 官方数据拿不到时,用人工审核过的本地资料兜底,不编造具体参数
  • 讲星座神话时,一定跟着回到科学事实
  • 答案不确定时明说,并引导去看知识卡片

成人区域隔离 ​

管理后台等内部页面不出现在儿童导航里,由独立密码保护;模型密钥的状态只显示"已配置/未配置"和脱敏形式(前几位 + 省略 + 后几位),永远不会明文出现在页面上。密钥脱敏在服务端完成后才返回给页面,前端拿到的永远是摘要。

对家长/老师 ​

当前版本没有公开社区、没有云同步、没有内容推荐。孩子看到的一切内容要么来自 NASA 官方数据,要么来自人工准备的资料,要么是受约束的模型回复。