上次更新还是 9 月 10 日。这一个半月没写模型新闻,时间基本都花在一台 NAS 上——不是折腾硬件,是把它变成家里每天都会打开的东西。
正好今天看了眼后台统计,干脆写一份「使用报告」:最近一个月,我高频使用的到底是哪几个功能。
一、益智游戏乐园:孩子放学后的固定入口
这是用得最久、也最稳定的一块。一个跑在 NAS 上的静态站,主页二十个入口:古诗乐园、成语接龙、数独、数织、扫雷、魂斗罗双人联机、森林冰火人、知识岛·五年级……手机浏览器打开,加到主屏幕就是一个全屏 App。
站点自己记点击,只记次数、名称和表情,不记设备、不记 IP、也不记时间点——给孩子用的东西,统计做到这一步就够了。
最近一个月的数据:古诗乐园 30 次,魂斗罗双人联机 12 次,成语接龙 10 次。古诗乐园排第一我不意外,意外的是双人联机——为了两个人能一起玩,专门做了个中继服务。
二、小星 AI 答疑:今天刚上线的「家庭老师」
孩子遇到不会的题,第一反应是喊家长。家长也不一定会,会了也未必讲得明白。于是今天在游戏站里加了一个页面:小星。
- 语文、数学、英语、科学、道法都能问,按年级给讲法;
- 可以拍照上传题目,也可以按住麦克风直接说;
- 回答可以朗读,家长能在设置里打开「自动朗读」;
- 每台设备每天 200 次、每小时 40 次,够用,也不至于被刷。
模型调用放在 NAS 服务端,浏览器只拿到回答,拿不到 API Key。页面本身是纯静态的,断外网也能打开。
为什么不做成 DeepTutor 的手机端?试过:那套前端依赖 fnOS 网关登录和 WebSocket,在孩子的 Android 9 手机上打不开。最后换成「一个 HTML + 同源接口」,反而哪里都能用。今天上线到现在,已经被问了 4 次。
三、Hermes 定时任务:每天三次新闻,推到飞书
这是从 VPS 迁回 NAS 的一套东西,三个任务:
- 每日新闻推送:9:25、13:25、20:25 各一次,累计 114 次;
- AI 前沿速递:同样一天三次,累计 115 次;
- 每日巡检:早上 8:50,看 VPS 和 NAS 的状态,累计 43 次。
到 10 月 24 日为止,三个任务累计跑了 272 次,全部推到飞书。多源抓取之后会做跨期去重——昨天的头条今天不会再推一遍。晚上 20:25 那班,基本是一天里最后一条推送。
四、DeepSeek Harness:在 NAS 上指挥一个 agent
浏览器打开 3080 就是它。今天小星页面的拍照、语音、朗读,还有首页那张卡片,都是在这个会话里改完直接部署的。
它最大的好处是「离得近」:agent 直接读写 NAS 上的站点目录、重启服务、跑测试,改完就能在手机上验收。最大的风险也是这个——权限太大,所以每次动生产目录前先备份,改完立刻回归。
最近还给它调了模型参数:视觉输入、思考强度、默认模型。模型多了以后,配置本身就是一门手艺。
五、远程访问与存储:不在家也能用
WireGuard 是最后一块拼图。在外面用手机流量也能打开游戏站和 fnOS 桌面,不用等回家。
存储反而最不「性感」:477G 的盘用了 188G,站点、配置、备份各占一块。真正花时间的是备份策略——改完就备份,备份要能回滚。
三个坑
1. 模型改名,定时任务静默罢工。 模型从 deepseek-v4.1-flash 换成带后缀的版本后,Hermes 判定「全局推理配置漂移」,为了防意外扣费直接跳过任务,连续几天没收到新闻。后来把任务显式 pin 住模型才恢复。定时任务一定要固定版本。
2. 容器「Up」不等于「跑通」。 有个热点聚合容器挂了十天,状态一直是 Up,日志里每半小时一条「配置文件不存在」——挂载目录不见了。看容器别只看状态,要看日志。
3. 桌面磁贴白屏,不一定是页面坏了。 fnOS 桌面点进去白屏,最后发现是网关后面那个 socket 进程没重启,加载的还是旧代码。重启进程、清缓存,就好了。
写在最后
这台 NAS 的配置并不高,跑的也都不是什么重负载:一个静态站、一个 Python 服务、三个容器、几个定时任务。但它有一个好处——家里人默认在用。
孩子不会关心什么叫自托管,她只知道点开主屏幕上的星星就能问问题;我也不用解释什么叫容器,晚上九点二十五分新闻会自己到飞书。
下一步想做两件事:把备份做成真正的一键恢复;给游戏站加一个家长面板,能看到「这周谁玩得多、都玩了什么」。
——这篇也是让 NAS 上的 agent 翻着最近的日志和统计写的。
