
F007
适用版本:懒猫商店「Traccar 定位追踪」1.0.21 及以上(包名 ,基于上游 Traccar 6.16.0)。文中 请替换成你自己的微服名称,例如盒子叫 ,应用地址就是 。文中截图来自同一镜像的测试实例,地图上的设备、轨迹、围栏都是演示数据(杭州),不是真实行程。快速配置(5 步跑通)安装:懒猫商店搜索「Traccar 定位追踪」并安装。登录:打开 ,点「使用懒猫账号登录」,免密进入(微服管理员自动成为 Traccar 管理员)。添加设备:设备列表点「+」,填名称和标识符(如 100004),保存。手机上报:手机安装官方 Traccar Client,「设备标识符」填第 3 步的标识符,「服务器地址」填 ,打开服务开关。这个地址要求手机安装并登录懒猫客户端;手机不装懒猫客户端时,用商店的 Cloudflared UI 把 映射成自己的域名,服务器地址改填该域名。看位置:回到网页,设备变成「在线」,地图上出现位置;可再用「轨迹回放」「报表」查看历史。设备照片可以从懒猫网盘选择上传,报表和轨迹导出可以直接保存到懒猫网盘,见「懒猫网盘」一节。一、Traccar 是什么,适合谁Traccar 是一款老牌开源 GPS 定位平台(Apache-2.0 协议)。装到懒猫微服上之后,它就是一台只属于你家的定位服务器:家人定位:给爸妈、孩子的手机装上官方免费 App「Traccar Client」,随时在网页地图上看到位置;车辆记录:放一台旧手机在车里,自动记录每天的行程、里程、停车点;外出轨迹:徒步、骑行、出差时开着 App,回来按天回放完整轨迹;到家/离开提醒:给「家」「公司」「学校」画地理围栏,进出时网页弹提醒、事件自动记账。和各种商业定位 App 比,最大的区别是:位置数据只上报到你自己的盒子,不经过第三方云平台,也没有订阅费。本商店版做了这些适配:项目商店版的做法登录接入懒猫账号(OIDC)免密登录;微服管理员自动成为 Traccar 管理员,普通成员是普通用户注册关闭了 Traccar 自带的注册表单,账号统一来自懒猫手机上报开放公开路径 ,装了懒猫客户端的手机上报时不用登录懒猫账号;没装客户端的手机访问不了 ,要用 Cloudflared UI 映射的固定域名(见 4.4 节)协议只开启 OsmAnd 协议(官方 Traccar Client 用的就是它)地图默认高德地图,另可切换 OpenFreeMap、OpenStreetMap单位默认公里、公里/小时网盘接入懒猫网盘文件选择器:设备照片、服务器文件、日历、围栏 GPX 可从网盘选;报表、轨迹导出可存到网盘数据内置数据库、设备照片、上传的文件都存放在应用数据目录,重启和升级不丢二、安装与首次登录在懒猫商店搜索「Traccar 定位追踪」,点击安装。从启动台打开应用,或在浏览器访问 。第一次打开时,懒猫会先弹出应用的「使用须知」,读完关闭即可。应用会跳转到懒猫账号授权。第一次可能会看到懒猫的授权页面,点一次 Grant Access(允许访问),之后就是免密直进。如果停在 Traccar 自己的登录页,点「使用懒猫账号登录」按钮即可,不需要输入任何账号密码。登录后就是主界面:左侧是设备列表,右侧是地图,底部有「地图 / 报表 / 设置 / 账户」四个入口。权限说明:微服管理员登录后自动是 Traccar 管理员,能看到「设置 › 服务器 / 用户」等管理项;家里其他懒猫成员第一次打开应用时会自动建一个普通用户,默认看不到任何设备,需要管理员把设备分配给他(见第九节)。三、在网页里添加设备每一部要被定位的手机(或其他设备)都要先在网页里「登记」,Traccar 只接收已登记标识符的上报。在主界面设备列表顶部点 「+」(或进入「设置 › 设备」,点右下角「+」)。填写两项必填内容:名称:随便起,比如「奶奶的手机」「家用车」;标识符:一串唯一的字符,比如 。手机 App 里的「设备标识符」必须和这里一模一样(区分大小写)。「附加」里可以选类别(人、汽车、自行车……,决定地图上的图标)、填电话、型号等,可不填。点「保存」。小技巧:Traccar Client 装好后会自带一个随机的「设备标识符」。你可以直接把那串数字抄到网页的「标识符」里;也可以反过来,在网页里定一个好记的(如 ),再到 App 里把标识符改成它。两边一致即可。添加完成后,在「设置 › 设备」能看到所有设备及其标识符:四、手机安装 Traccar Client 并配置4.1 下载 AppAndroid:Google Play 搜索「Traccar Client」;没有 Google Play 的手机,可以从官网 提供的 GitHub 链接下载 APK 安装(撰写本文时为 v10.2.1)。iOS:App Store 搜索「Traccar Client」(官网链接:)。国区 App Store 能否搜到以实际为准,搜不到可换其他地区账号下载。App 默认连的是官方演示服务器 demo.traccar.org,一定要改成你自己的盒子地址,否则位置会发到别人的服务器上。4.2 关键配置项打开 App 的设置界面,按下表填写(括号里是英文界面的字段名,中文界面的叫法以 App 实际显示为准):配置项填什么说明设备标识符(Device identifier)与网页「标识符」完全一致,如 不一致就会被服务器拒收服务器地址(Server URL)必须带 和末尾的 ;不要加端口 定位精度(Location accuracy)推荐「高(High)」;车载可选「最高(Highest)」最高=GPS 常开,最准也最费电;中/低主要靠 Wi-Fi/基站距离(Distance)如 ~ 米移动时每走 N 米上报一次,最主要的参数间隔(Interval)如 ~ 秒距离设为 0(仅 Android)或精度为「最高」时按时间上报角度(Angle)如 度精度为「最高」时,转弯超过该角度就补报一个点,轨迹更贴合道路静止心跳(Stationary heartbeat)如 ~ 秒静止时隔多久报一次「我还在这」,太长会让网页显示「xx 分钟前」离线缓存(Offline buffering)建议打开没网时先存在手机里,联网后补传,轨迹不断档唤醒锁(Wake lock,仅 Android)车载/重要场景打开移动时阻止休眠,更可靠但更耗电停止检测(Stop detection)默认打开自动区分移动/静止两种状态使用系统定位(Use system location,仅 Android)一般不用开没有 Google 服务、定位异常的国产机可以试试打开密码(Password)可选给 App 设置页加锁,防止家人误改全部填好后,打开服务开关(Service status / 开始),App 会开始在后台上报。回到网页,对应设备名下方会变成绿色的「在线」,地图上出现图标。字段含义整理自官方配置说明:。为什么不用填 5055 端口? 官方文档说默认端口是 5055,那是自建服务器直连的情况。商店版已经把 这个路径转发到容器内的 5055 端口,手机走标准 HTTPS(443)即可。手机必须装懒猫客户端吗? 用 地址就必须装,并保持客户端在线。不想装的话,看 4.4 节,用自己的域名上报。这个公开地址安全吗? 只接受位置上报,不能浏览任何数据;没在网页里登记过的标识符会被直接拒收。网页的其余部分仍然需要懒猫账号登录。为了防止被人猜中,标识符可以用长一点的随机串,而不是 。4.3 后台权限与省电白名单(决定能不能持续定位)手机系统为了省电会「杀后台」,这是定位断断续续最常见的原因。官方也明确建议给 App「不受限制的后台使用」。iOS:「设置 › 隐私与安全性 › 定位服务 › Traccar Client」选 始终,并打开 精确位置;「设置 › 通用 › 后台 App 刷新」里允许 Traccar Client;不要从多任务界面上划关闭 App;低电量模式会影响后台定位。Android(各品牌菜单名称略有不同):位置权限选 始终允许(「仅使用期间允许」在锁屏后会停);「电池 / 耗电管理」里把 Traccar Client 设为 不限制 / 无限制,关闭「智能省电」对它的限制;国产系统(小米、华为、OPPO、vivo 等)还要打开 自启动、在多任务界面把 App 加锁;通知栏会常驻一个 Traccar 通知,这是正常的前台服务,别关掉通知权限。不同品牌的具体路径可以查 (官方推荐)。4.4 被追踪的手机不装懒猫客户端:用 Cloudflared UI 映射固定域名上面的 地址只有装了懒猫微服客户端的手机才能访问;没装客户端的手机连这个域名会直接报 SSL 错误,位置一条也传不上去。如果被追踪的人(老人、孩子、车载备用机)不方便装懒猫客户端,可以用商店里的 Cloudflared UI,把 Traccar 的上报服务映射成自己的固定域名,比如 。手机只要能上网就能上报,不需要装懒猫客户端,也不需要登录。Cloudflared UI 本身就运行在盒子里,能直接访问其他应用的内部服务地址,所以不需要再用端口转发工具。为什么不用局域网地址?局域网地址只有手机连着家里 Wi-Fi 时才通,人一出门就断了。定位追踪本来就是为了知道人在外面的位置,只在家里能用的地址没有意义。准备:一个托管在 Cloudflare 的域名(免费套餐即可);在懒猫商店安装「Cloudflared UI」。第一步:在 Cloudflare 创建隧道登录 Cloudflare 控制台,进入 Zero Trust → 网络(Networks)→ 连接器 / 隧道(Tunnels);点「创建隧道」,类型选 Cloudflared,起个名字,例如 ;在安装连接器的页面复制隧道令牌(token)。只复制 后面那一长串,不要带前面的 。第二步:在 Cloudflared UI 里启动隧道打开懒猫上的 Cloudflared UI,粘贴隧道令牌,点「启动隧道」。回到 Cloudflare 页面,隧道状态变成「健康(Healthy)」就是连上了。第三步:添加已发布应用程序路由在这条隧道里点「添加已发布应用程序」,按下表填写:字段填什么子域名(随意)域选你托管在 Cloudflare 的域名路径留空服务 URL服务 URL 的意思是「 服务 · 包名 · 端口 5055」,这是 Traccar 在盒子内部的上报端口,复制粘贴即可,不用改。点「添加路由」后 Cloudflare 会自动加好 DNS 记录并签发证书。第四步:手机上填新的服务器地址Traccar Client 里的「服务器地址」改成你的域名,例如:必须是 ,不要加 ;这个域名直接对接 5055 上报端口,不用加 ;设备标识符仍然要先在网页里登记,规则和前面一样。想先测试的话,在手机浏览器打开 :空白页表示服务器收到了,400 表示标识符没登记(会在轨迹里留一个测试点)。安全提示:只映射 5055 上报端口,不要把网页端口 8082 映射出去。 隧道会绕过懒猫的登录网关;5055 只能写入已登记设备的位置,看不到任何数据,8082 映射出去等于把地图和轨迹交给公网;查看位置的人(家长、管理员)继续用懒猫客户端打开 ,用懒猫账号登录;标识符建议用长一点的随机串,防止被猜中后写入假位置。五、查看实时位置与轨迹回放5.1 实时位置在主界面点设备名,地图会定位到它,并弹出信息卡:定位时间、速度、总里程、电量等。卡片底部的按钮可以进入轨迹回放、编辑设备等。设备状态的含义(测试实例中观察到的):在线(绿色):最近一段时间内收到过上报;xx 分钟前:有段时间没收到新位置了,显示的是最后一次上报距今多久;离线(红色):从未上报过,或连接已断开很久。5.2 切换地图(以及「位置偏了」怎么办)点地图右上角的图层按钮,可以在「开放自由地图 / 开放街景地图 / 高德地图」之间切换,也可以开关地理围栏、精度圈、移动轨迹等图层。关于位置偏移:高德地图使用国内的 GCJ-02 坐标,而手机 GPS 上报的是国际通用的 WGS-84 坐标,两者在国内会差几百米。所以真实设备在高德底图上可能「偏到马路旁边」,这不是定位不准。需要精确对齐时,切换到「开放街景地图(OpenStreetMap)」即可。(本文截图是为了演示效果预先换算过坐标的模拟数据。)5.3 轨迹回放在设备信息卡点「轨迹回放」,或进入「报表 › 轨迹回放」;选择设备和时段(用左右箭头按天切换,下拉还能选本周、上周、自定义);点「查询」,地图上会画出整条轨迹,颜色代表速度(左上角显示速度范围);用底部的播放条拖动或播放,逐点查看每个时刻的位置和时间。六、地理围栏与通知6.1 画围栏进入「设置 › 地理围栏」,右侧是地图编辑器;用地图左上角的绘制工具在地图上圈出区域(多边形或折线),完成后给它起名,如「家」「公司」「学校」;点列表里的围栏名可在地图上定位,铅笔图标可改名和修改属性。关键一步:把围栏和设备关联。 进入「设置 › 设备」,点设备那一行的「连接」(链条)图标,在「地理围栏」里勾选要生效的围栏。只有关联了的设备进出该区域才会产生事件。6.2 设置通知进入「设置 › 通知」,点右下角「+」;类型:选「进入地理围栏」「离开地理围栏」「超速限制」「设备离线」等;通道:选「网页」;勾选「所有设备」,或不勾、之后在设备的「连接」里单独关联;保存。说明:通道列表里还有「电子邮件」和「命令」。邮件需要在服务器上配置 SMTP 发信,商店版目前没有提供这项配置入口,请以「网页」通道为主;「网页」通知是在你打开 Traccar 网页时弹出的提醒,网页关着就看不到弹窗,但所有事件都会被记录,可以随时在「报表 › 事件」里查;官方手机端「Traccar Manager」的推送依赖 Traccar 官方云推送,本商店版未做验证,不建议依赖它。在测试实例中,车辆早上离开「家」、到达「公司」、晚上返回,事件都被准确记录:七、报表与导出点底部「报表」进入,左侧是报表类型:报表能看什么组合轨迹 + 事件的综合视图事件进出围栏、移动/停止、超速、上下线等所有事件地理围栏在各围栏内停留的时段行程每一段行程的起止时间、里程、平均速度停留点每次停车/停留的地点和时长总览按天/按设备汇总里程、速度图表速度、海拔等随时间变化的曲线轨迹回放 / 位置回放轨迹 / 原始定位点列表日志 / 预定报表 / 统计 / 审计偏管理用途使用方法:选设备、时段(可选显示哪些列),点「查询」。在行程报表里,点某一行左侧的准星图标,上方地图就会画出这一段行程:导出 Excel:点「查询」按钮右边的小箭头,菜单里有「导出 (XLSX)」「打印」「工作计划」(定时生成报表)。商店版给网页加了懒猫的文件选择器适配,导出的报表可以直接保存到懒猫网盘。八、懒猫网盘:从网盘上传、导出保存到网盘商店版接入了懒猫网盘文件选择器。网页里凡是「选择文件」和「导出 / 下载」的地方,都会先弹出懒猫的窗口,顶部可切换「网盘文件 / 本地文件」。从网盘上传设备照片进入「设置 › 设备」,点设备那一行的编辑(铅笔)图标。设备照片栏只在已保存的设备上出现,新建设备时先保存一次再编辑;展开「设备照片」,点输入框,弹出懒猫窗口,在「网盘文件」里找到图片,选中后点「确定」;输入框里显示文件名后点「保存」。回到地图点该设备,信息卡顶部就会显示这张照片。同样能从网盘选文件的还有:设置 › 服务器 › 文件(上传自定义文件,保存在应用数据目录);设置 › 日历 › 类型选「自定义」(导入 .ics 日历文件,用于通知的生效时段);地理围栏页左上角的上传图标(导入 .gpx 轨迹,直接生成一条折线围栏)。导出报表 / 轨迹保存到网盘在任意报表点「查询」,再点「查询」右边的小箭头,选「导出 (XLSX)」;位置报表还可以选 CSV / GPX / KML / KMZ;弹出「保存至懒猫」窗口,选目录(如 Downloads)、可改文件名,点「保存」;在懒猫网盘对应目录里就能看到导出的文件。想存到电脑上,切到顶部「本地文件」即可。支持保存到网盘的导出:报表 › 总览 / 行程 / 停留点 / 事件 / 地理围栏(XLSX);报表 › 位置(CSV、GPX、KML、KMZ);轨迹回放页顶部的下载图标(KML);设置 › 设备 › 「导出」(XLSX 设备列表)。提示:如果点了没反应、仍然直接下载到浏览器,通常是浏览器还缓存着旧版页面,按 Ctrl+F5(Mac 上 Cmd+Shift+R)强制刷新一次即可。九、多用户:让家人也能看推荐做法是每个家庭成员用自己的懒猫账号登录,管理员再把设备分给他:在懒猫里给家人开好账号(家人需要能登录你的微服);家人用自己的懒猫账号打开一次 Traccar,系统会自动为他创建一个普通用户;管理员进入「设置 › 用户」,找到这位家人,点那一行的「连接」(链条)图标;在「设备」里选上他可以看的设备(比如「妈妈的手机」「家用车」),也可以一起分配地理围栏、通知等;家人刷新页面后,就能在地图上看到这些设备,而看不到没分配给他的设备。提示:每部被定位的手机仍然是在第三节里登记的「设备」,和谁能看它是两回事:一部设备可以同时分配给好几个用户;用户编辑页里还能设置「只读」「设备数量上限」「失效日期」等,适合给临时需要看位置的人用;应用强制使用懒猫账号登录,管理员在「用户」里手动新建的本地账号通常用不上,以懒猫账号为准。十、常见问题1. 设备一直显示「离线」,地图上没有点按顺序检查:App 的服务开关有没有打开;服务器地址是不是 :常见错误有少了 、写成 、多加了 、盒子名拼错;App 日志里出现「SSL error」(iOS 报 -1200):说明这台手机没装或没开懒猫客户端,访问不了 ,改用 4.4 节的自定义域名;App 里的设备标识符和网页里的标识符是否完全一致(多一个空格都不行)。服务器收到未登记的标识符会直接拒收;用的是 4.4 节的自定义域名时,检查 Cloudflare 隧道是否「健康」、服务 URL 末尾有没有 ;手机能不能正常上网。可以在手机浏览器里打开 ,返回一片空白页说明服务器已接收;如果浏览器提示 400 错误,多半是这个标识符没在网页里登记。接收成功后再看网页里设备是否变成「在线」。注意这会在经纬度 (30, 120) 留下一个测试点,它会留在历史轨迹里。2. 一开始正常,过一会儿就不更新了 / 轨迹断断续续基本都是手机后台被系统限制了。回到 4.3 节:定位权限设为「始终」、电池设为「无限制」、国产手机开自启动并锁定后台。同时打开 App 的「离线缓存」,没网时的点联网后会补传。3. 显示的时间不对商店版容器时区已设为北京时间(Asia/Shanghai);网页显示时间还会受浏览器时区和「设置 › 首选项 / 账户」里的时区设置影响,检查一下是否被改成了其他时区;位置的「修正时间」来自手机自己的定位时间,手机系统时间不准也会导致时间错乱,打开手机「自动设置时间」。4. 地图空白或加载很慢默认的高德底图需要能访问高德服务;某个图层加载不出来时,用右上角图层按钮换另一种底图试试;刚打开页面、或缩放到全球视图时瓦片加载需要几秒,放大到具体城市再看;位置和道路对不上:见 5.2 节「关于位置偏移」。5. 报表里的速度看起来不对行程报表的平均速度是按「总里程 ÷ 总时长」算的,等红灯、堵车都会被计入,所以通常比你感觉的车速低。如果你自己写脚本按 OsmAnd 协议上报,注意 参数的单位是节(1 节 ≈ 1.852 公里/小时),官方 App 会自动处理,不用管。6. 能接 GPS 定位器硬件(GT06、途强等)吗?商店版只开放了 OsmAnd 这一种协议,且只通过 这个 HTTPS 路径接入。支持 OsmAnd 协议(HTTP 上报 、、、 等参数)的 App 或设备都可以用同一个地址,或用 4.4 节映射出去的固定域名;走专有 TCP 协议的车载定位器目前接不进来。7. 数据存在哪?升级会丢吗?所有位置、设备、用户数据都存在应用自己的数据目录里(内置 H2 数据库),重启、升级应用都不会丢失。卸载应用前请先确认是否需要保留数据。附:一分钟上手清单商店安装 → 打开 → 懒猫账号自动登录(首次点一次 Grant Access);设备列表「+」→ 名称 + 标识符(如 )→ 保存;手机装 Traccar Client → 标识符填 → 服务器地址填 → 打开服务;手机给定位「始终允许」+ 电池「无限制」;网页看到设备「在线」,完成。之后再按需画围栏、建通知、看报表、给家人分配设备。本攻略基于 Traccar 6.16.0 商店版编写。上游项目:(Apache-2.0)。



🌟积攒算力仓🧩中💗
把家里的摄像头接进微服:motionEye 录像相关软件家里的摄像头平时只能在厂商 App 里一台一台点开看,翻昨天的画面还要看广告。想让微服来干这件事:两路画面并排看,有人经过自动存一段,手机上收到推送,回头按日期找得到录像。motionEye 就是干这个的——它自己不会把摄像头"变聪明",只做三件事:把 RTSP 流拉进来、按运动触发录像、开一个网页后台让你调参数看回放。开始之前微服上装好 motionEye,从桌面打开应用入口(域名形如 )。摄像头和微服在同一个局域网,并且摄像头能给出 RTSP 地址:懒猫摄像头自带 RTSP,地址和账号密码在摄像头自己的后台里;小米摄像头没有现成 RTSP,先用 go2rtc 转出一路(见 go2rtc 那篇攻略);其他 ONVIF 摄像头,说明书或摄像头后台里会写 。摄像头的用户名和密码。别用出厂默认口令,后面这串要填进 motionEye。第一步:打开应用,先点那行蓝字第一次进来是空的,画面中间只有一行字,这是正常状态——motionEye 不自动找摄像头,得你告诉它地址。第二步:填 RTSP 地址点蓝字会弹出「添加摄像头...」。摄像头类型选「网络摄像头」,然后填 URL、用户名、密码:URL 的格式是 ,坑基本都在这条地址上:端口默认 554,懒猫摄像头这类自己实现 RTSP 服务的是 8554;路径区分主码流和子码流,懒猫摄像头是 (主)和 (子);用户名密码也可以直接写进 URL(),但单独填在下面两行更好改;端口或路径错一个字符,点完确定会卡在添加中,最后只有一帧灰图。填完点「确定」,正常十几秒内出画面。第三步:确认通了出画面之后看左上角: 这组数字里,前一个是实际拿到的帧率,后一个是你给这路设的上限。前面有数字、画面时间戳在走,就说明拉流成功。这张图里房间没开灯,画面是黑的,但只要帧率在动就说明流是对的——判断通没通不要看画面亮不亮,看帧率。第四步:加第二路顶部那个下拉框默认停在当前摄像头。要新增一路,必须在下拉里选「添加摄像头...」,再走一遍第二步:第二路建议用摄像头的子码流。同一台摄像头的主码流是 1080p/2K,子码流一般是 640x480 或 720p,motionEye 每路都要解一遍码,两路 2K 同时跑,微服的 CPU 会明显上去,而看家根本不需要那个清晰度。第五步:录像落在哪点左上角菜单进某一路的设置,展开「文件存储」:默认就是「自定义路径」,根目录 ,图片和录像按日期分子目录放,应用重启、升级都不会丢。下面是整块盘的用量(148.3/3815.4GB,3%),不是 motionEye 自己占了 148G——别看到数字就以为盘要满了。这一页的下面还有几个开关,值得留意的只有两个:上传媒体文件和调用 Web Hook,默认关着,不用动。第六步:调运动检测,这一节决定你会不会天天被骚扰展开「运动检测」:这组参数的规则,按影响从大到小说:帧率变化阈值(图里 1%):画面里变化的像素占比超过这个值就算"有动作"。数字越小越敏感。室内 1%~2% 够用;调到 0.5% 以下,暗光下的噪点波动都会被当成有人经过。最小运动帧数(图里 20):连续多少帧都判定为变化才真正触发录像。误报多就往上调,比如 30~50;想抓快闪过的猫,往下调。运动间隔(图里 30 秒):两次录像之间至少隔这么久。设太小会一分钟塞给你几十段几秒钟的短片,回放时根本没法看。之前捕获 / 之后捕获(各 1 帧):录像前后多存几帧,防止人刚进画面就结束。自动噪音检测、光线变化检测、色斑过滤器:暗光噪点大就开自动噪音检测;晚上开灯关灯总触发录像,就把光线变化检测往上调;画面里有一直晃的树叶、路灯光斑,用遮罩把那块涂黑最省事。遮罩比调阈值更靠谱:阈值调高了漏拍真事,调低了误报满天飞,而遮罩是精确排除固定干扰区域。第七步:出事推到哪里同一个设置页往下,展开「运动通知」:发送邮件:要先在下面的邮件服务器区填 SMTP 地址、端口、账号、密码,收件人填自己。填完可以用页面上的测试按钮发一封,收不到就是 SMTP 没通,别指望录像触发时才排错。发送 Telegram 通知:填 bot token 和 chat id,能直接收到带图的推送。国内网络要自己解决连不上的问题。调用 Web Hook:把动作转给自建服务,比如转给 Home Assistant 触发其他设备。每项都分「motion has started」和「motion has ended」两段,只填上面那段就是只推开始,不会收到一堆结束通知。第八步:语言、密码、分辨率点左上角菜单(三横线)进设置,第一屏是「常规设置」和「视频设备」:语言是中文,镜像里已经设好了;想换回英文也在这里。管理员和监控用户两行密码默认是空的,空着的时候局域网里任何人打开这个地址都能看画面、改配置。第一件事就是把这两行填上:管理员能改所有设置,监控用户只能看。视频分辨率要和摄像头实际输出对上,网络摄像头选 640x480 起步就够看家;想认脸再上 1280x720 或 1080p,代价是 CPU 和磁盘。仅限管理员访问打开后,监控用户看不到这一路。隐私遮罩和运动遮罩不是一回事:隐私遮罩是把画面里某块直接糊掉(比如对着邻居窗户的位置),录下来也不会有。



🌟积攒算力仓🧩中💗
把小米摄像头接进微服家里几台小米摄像头,平时只能用米家 App 一台一台点开看;想在微服(NAS)上把几路画面并排看,同时把其中一路交给 motionEye 录像、或者让局域网里的监控中心 / 录像机直接拉 RTSP。go2rtc 干的就是这件事:它把摄像头的流拉进来,转成浏览器能直接播放的格式,同时再以 RTSP 重播出去。它不录像、不转码(除非你要求),装好之后是一个空列表——因为它本身不带摄像头。特别说明:懒猫摄像头本身支持rtsp,所以不需要这款应用,可以直接使用支持rtsp接入摄像头应用,如果家里有其他厂商摄像头,可以参考这篇攻略接入开始之前微服上装好 go2rtc,从桌面打开应用入口(域名形如 )。小米账号和密码,且摄像头已经在米家 App 里绑在这台账号下。摄像头和微服在同一个局域网。用 Chrome 或 Edge 打开,MSE 播放依赖浏览器的媒体能力。go2rtc 的界面是英文的(上游没有多语言),下面按界面上的英文按钮名说明,按钮位置和文字对照着图看即可。第一步:把小米账号加进 go2rtc打开应用,顶部是 Streams 列表,此时是空的,这是正常状态。点左上角的 Add:会列出一堆支持的源类型(ALSA、ONVIF、Tuya、Ring、Xiaomi……),往下找到 Xiaomi 点进去:在 username / password 里填小米账号和密码,点 login:接下来是两道验证码:先输图里的图形验证码点 send,再等手机上(或邮箱里)收到 6 位验证码,填进 verify 那一行点 send:验证通过后点 load devices,这台账号下绑定的设备就全列出来了:这一步最关键:表里 列是每台设备的取流地址(),它只在这次会话里显示,页面一刷新、一点别的页签就没了。有几个摄像头就整列复制几行,先贴到自己的文档或记事本里存好,后面配置全靠它。第二步:把地址写进配置点顶部导航的 config。第一次进来编辑器可能是空白的一行,刷新一下页面或者多等几秒即可,编辑器脚本是从外部 CDN 加载的:然后按下面的层级把上一步存下来的地址写进去:写的时候注意这几条规则,写错一条整段配置就解析失败: / 是你给这路流起的名字,随你改(建议英文或拼音、不要空格),后面所有地址都用这个名字引用它;名字下面那一行必须以 (短横线加空格)开头,表示「这是该流的一个源」;缩进用两个空格: 顶格, 缩两格, 再缩两格。用 Tab 会直接报错; 后面一整串照抄,包括 —— 和 是这台设备的,不能这台机器的地址配另一台的名字。写完点 Save & Restart 保存并重启 go2rtc,几秒钟就恢复。第三步:验证流能播回到左上角的 go2rtc 页,刚才起名字的几路流已经在列表里了:点某一行右边的 stream(或者直接点流名)开始拉流,弹窗里会让你选播放方式:MSE:延迟最低、最流畅,优先用这个;MJPEG:兼容性最好,MSE 播不出来时换它;HLS:前面两个都不行时的兜底,延迟更大。 列的数字是当前有多少客户端正在取这路流,显示 0 只说明现在没人看,不代表源配错了——点一次 stream,数字会变成 1。第四步:把这路流转给别的应用 / 监控中心画面在应用里能播之后,就可以对外供流了,分两种用法:给同一台微服上的应用取流(motionEye 录像、Frigate 侦测、Home Assistant 接入都用这套地址):第一条是 HLS、第二条是 MJPEG、第三条是单帧快照(当封面或做侦测抓图很省资源)。 后面填你在配置里起的流名。局域网里的录像机 / 监控中心 / NVR 要拉 RTSP:go2rtc 自己开了一个 RTSP 重播口 8554,但微服对局域网只开放 HTTPS 那一个入口,8554 得先用「端口转发」应用导出去,下一步专门讲。第五步:用端口转发工具把 8554 导到局域网微服的应用入口只有 HTTPS 一条路,容器里的 TCP 端口局域网直连是连不上的。要拉 RTSP 就得先在「懒猫端口转发工具」里建一条规则,把 8554 暴露到微服所在的局域网(应用商店搜「端口转发」,入口子域名是 ):打开端口转发工具,点右下角的 创建转发规则。出口配置(局域网侧):入口地址类型选 微服物理网卡——工具下面的说明写着「仅微服所在局域网可访问」,正是要的效果;监听端口填 。目标配置:转发目标类型选 微服应用 → 应用选 → 服务选它的那个服务 → 目标端口填 ;可以先点 测试目标连接 确认通。点 创建规则,列表里这条规则变成启用、没有异常提示就说明监听起来了。之后局域网里的录像机 / 监控中心 / NVR 就能用这个地址拉流: 换成你自己微服的局域网 IP; 是你在 config 里起的流名,一条流一个地址; 是下一节要配的 RTSP 账号密码,没配之前这个端口谁都能拉。第六步:给 RTSP 端口上锁默认配置里 但没有认证。回到 config 页,在 前面加上账号密码段(顺序无所谓,但都要顶格):保存重启后,RTSP 地址就要带上 ,浏览器访问 1984 端口也会要求登录;应用入口本身还有微服账号体系挡着,这两层是分开的。密码改完记得把录像机 / 监控中心里存的地址一起改掉,否则它们会一直认证失败。




F007
Keues 排队叫号:取号机、叫号终端、大屏免装懒猫客户端部署攻略应用默认地址 需要设备装懒猫客户端才能打开,而取号一体机、安卓广告屏、电视盒子等嵌入式设备很难安装客户端。本文用商店官方应用「局域网端口转发工具」,把Keues 映射到微服的局域网 IP端口,现场设备用浏览器直接打开,不用装客户端、不用登录懒猫账号。管理后台(建网点、队列、窗口、看数据)管理员设备装懒猫客户端,用 heiyu.space 地址懒猫账号登录取号机 / 叫号终端 / 叫号大屏走端口转发地址,无需客户端和账号本文于 2026-10-20 在真实懒猫微服上实测,示例中微服局域网 IP 为192.168.31.12、转发端口为 18080,请换成你自己的。一、准备1 微服已安装「Keues排队叫号」 ,并在管理后台建好网点、队列、窗口和业务流(取号机菜单)。窗口的「允许的用户/ 用户组」保持为空,否则现场叫号终端会要求输入 Keues 账号密码。现场设备与微服接在同一个局域网。在商店安装「局域网端口转发工具」(官方应用)。图1 商店里的「局域网端口转发工具」二、创建端口转发规则打开「局域网端口转发工具」,点右上角「添加转发规则」,按下表填写:备注Keues 排队叫号协议TCP局域网入口类型微服物理网卡(仅微服所在局域网可访问)出口地址自动带出微服网卡和 IP,如 enp2s0 - 192.168.31.12监听端口 / 端口段18080(1024 以上、未被占用即可)转发目标类型微服应用微服应用Keues 排队叫号(英文界面显示 Keues Queue Management)服务keues目标端口8080图2 填好的转发规则点「测试目标连接」,再点「创建规则」。列表中出现,目标显示「目标检查通过」即成功。出口地址里的IP 就是现场设备要用的地址。图3 规则创建成功,顶部提示「目标地址连通正常」三、(可选)自定义域名不想让设备记 IP,或者担心 IP 变化:先在路由器里给微服做 DHCP静态绑定,再在路由器的「静态 DNS / 自定义解析 / Hosts」里加一条(OpenWrt:网络 → 主机名;爱快:DNS 设置 →静态解析)。路由器不支持时,可在设备 hosts 里加。之后设备统一用 http 协议打开。不要用 .local 后缀或公网真实存在的域名。四、取号机在取号机浏览器用 http 打开 (或)。「服务器地址」会自动填成当前地址(如 ) ,无需修改。图4 首次打开,服务器地址已自动填好填写「设备名称」→ 点「连接」→ 选「网点」和「业务流」→「保存」。图5 选好网点与业务流图6 保存后进入取号界面,可点左上角「全屏」图7 顾客点选服务后出票(示例 A014)五、叫号大屏电视 / 广告屏浏览器用 http 打开,填「屏幕名称」→「连接」→选「网点」「业务流」→「保存」。图8 显示屏配置图9 叫号大屏,左下角显示「已连接」六、窗口叫号终端窗口电脑或手机用 http 打开,填「设备名称」→「连接」→选「网点」「业务流」「窗口」→「保存并启动」。图10 窗口设置图11 叫号面板:叫下一位、完成服务、转移票号、取消票号图12 点「叫下一位」,叫到 K003图13 大屏实时显示 K003 → 3 号窗口,无需刷新七、常见问题·打不开地址:确认设备与微服在同一局域网、入口类型是「微服物理网卡」、Keues正在运行;端口冲突就换一个端口重建规则。· 页面一直连不上:服务器地址要和浏览器地址栏一致(含 http协议和端口),如果没有安装微服客户端不要填 heiyu.space 地址。· 叫号终端要求登录:后台把该窗口的允许用户 / 用户组清空。· 微服 IP 变了:路由器静态绑定;用了自定义域名的只改一处 DNS。· 设备开机自动打开:电视盒子 /安卓屏用支持开机自启和全屏的浏览器;Windows 可用 Chrome 的 --kiosk参数启动。八、安全说明转发地址绕过懒猫的登录保护,局域网内任何人都能打开取号机、叫号终端和大屏页面。只用「微服物理网卡」入口,不要在路由器上把该端口映射到公网,现场网络建议与访客Wi-Fi 隔离。管理后台的增删改仍需 Keues 管理员登录。



苔花如米小,也学牡丹开。
Donkey 上手指南:给 NAS 和家庭实验室的 Docker 镜像加速如果你在 NAS 或家里的小服务器上拉镜像,多半遇到过这种画面: 卡在 一动不动,或者干脆超时。官方源慢,公共镜像源又不稳定,换一个挂一个。Donkey 就是冲着这件事来的。它是一个用 Rust 写的 Docker / OCI Registry 拉取代理,可以自托管、可审计,前端编译后直接嵌进二进制,跑起来不需要额外装 Node.js。它参考 KSpeeder 的公开功能说明重新设计,和 KSpeeder、LinkEase、Docker Inc. 都没有隶属关系。为什么要自己搭一个公共镜像源什么时候限速、什么时候只缓存热门镜像、什么时候直接下线,你都管不着。今天是它,明天可能就换了。商店里原本有一个 KSpeeder,Donkey 的灵感来自它。不过它是闭源的,配置也偏繁琐,所以我做了一个适合懒猫设备的版本:Donkey 的思路是把多个镜像源当成一个池子,按实际表现动态挑选,把拉下来的内容存在本地,下次直接从磁盘给。你既可以用它当 Docker 的镜像源,也可以把它当成一个独立的 Registry 来 。运行概览:一屏看清节点和流量首页每 3 秒刷新一次,卡片分三组:上排是健康节点数、缓存容量、累计命中、当前调度模式;中排是代理请求数、代理流量、多源并发状态和重试次数;下方左侧是各节点的实时吞吐曲线,右侧是按综合分排序的「当前路由」列表。「当前路由」这一列,每个节点后面跟着三个数字:实时速率、平滑速率和延迟。平滑速率是历史吞吐的加权估计,比实时速率更能反映一个节点的真实水平。一次抖动拉低不了它的分数,一个节点真的变慢了,它也会慢慢掉下来。右边还标着 或者 。截图里 是异常状态,说明最近一次探测没连上上游,调度会先跳过它。等它恢复,或者你点一下卡片右侧的重试按钮手动测速,它才会重新参与派活。加速节点:把镜像源管起来Donkey 把「逻辑 Registry」和「镜像端点」拆成两层。Docker Hub 是根命名空间,GHCR 用 前缀,你还可以加自定义的。每个命名空间下面挂一个或多个镜像端点,也就是真正的上游地址。同一个命名空间挂多个端点,才是这套东西的价值所在。镜像的每个 Blob 会被切成若干分片,分片同时发往不同的节点下载,谁快谁多拿。某个节点中途断了,没下完的那一段会转到别的节点接着下,不用从头再来。一个 100 MB 的 layer,如果三个节点都在线,实际耗时可能只有一个节点的三分之一。节点之间怎么分工,背后是一套打分。分数大致由三样东西决定:近期真实吞吐、成功率、以及当前还有多少任务挂在它身上。吞吐越高分越高,成功率越低分越低,正在忙的节点会被扣分,避免所有分片都挤在一个节点上。有个细节值得单独说:调度会留出大约八分之一的机会,去试用那些空闲的、还没测过速或者刚恢复的节点。不然分数一旦定下来,新节点就永远没有出头之日。这也是为什么你新加一个节点后,它会很快被纳入调度,而不是等很久。节点卡片上能看到实时速率、平滑速率、延迟、累计下载、并发上限和成功率。认证支持 Basic、Bearer 和自定义 Header 三种,密钥用 AES-256-GCM 加密后存进 SQLite,界面上永远不会回显明文。缓存:内容寻址加授权隔离缓存是内容寻址的,每个 Blob 按 digest 落盘,命中时可以直接响应 Range 请求。第二次拉同一个镜像,同样的 layer 直接从磁盘给,不用再出网。拉下来的内容要过一遍 SHA-256。Donkey 一边收数据一边算哈希,收完比对 digest,多收了或者少收了都算失败,宁可重下也不把半个文件留在缓存里。落盘用的是先写临时文件、再重命名提交,所以不会出现「文件写了一半就被下一个请求读到」的情况。另一个细节是并发去重。同一时刻有多个请求要同一个 Blob,Donkey 只放一个去回源,其余的等着拿结果。这个在拉一整套镜像的时候很常见,几十个请求同时打过来,实际只出一趟网。带 的请求,Donkey 会把整个头值不可逆地混进缓存 key。用不同凭据拉下来的私有内容因此不会互相串味,明文凭据本身也不会落盘。只有当某个命名空间的所有节点都没配认证时,才可能跨 Bearer 令牌轮换复用缓存,而且这个行为要显式打开开关。回收策略有平衡、LRU、LFU 三种,配合高低水位使用。默认 90% 开始回收、回收到 80% 停止,容量上限 50 GB。正在传输的对象不会被回收,这点对并发拉取很关键。拉取日志:谁在什么时候拉了啥每次经过 Donkey 的镜像拉取都会记一条:镜像仓库、Tag、Registry 命名空间、解析出的 digest、时间和状态。日志只记 tag 和 digest,不保存认证信息和客户端凭据。记录条数有上限,默认保留 30 天或 10000 条,两个条件谁先到算谁。这个模块可以整体关掉,关掉后页面隐藏,已有历史仍然保留。日志里的 digest 比 tag 更有用。同一个 tag 可能被上游重新指到别的镜像,digest 才是内容的真实身份。这也是后面定时同步判定「要不要重传」的依据。域名加速:不止镜像这块功能和镜像代理是两回事,它把 GitHub Release、软件包等公开下载站点的地址转换成加速链接。你填一条映射,填一个原始域名和一个上游地址,之后凡是命中这个域名的链接都能走加速。和普通 Registry 代理的区别在于:域名加速按请求 Host 命中映射,由 Donkey 自己去取上游内容再原样回传,客户端看到的是 Donkey 的地址。它不缓存、不做分片,但会把客户端的 头原样转发,所以断点下载这类语义是保留的。上游返回的 302 也会在服务端跟随,最多 3 跳。这里有一层安全考虑:Donkey 在发请求前会先解析目标域名的 IP,解析结果落在内网或者云厂商的元数据地址就直接拒绝。也就是说,这个功能不会被人拿去当跳板扫你家里的内网。镜像工具:浏览、导出、复制、定时同步这是 Donkey 里最像运维工具的部分,它挂在管理端,不改变公共 代理的只读边界。内容:按平台解析镜像,合并 layer 后展示文件树,可以下载单个文件。想知道某个镜像里到底装了什么、有没有多余的调试工具,不用先拉下来再起容器。离线包:生成 Docker archive 或 OCI archive,拿到没有网络的机器上直接 。复制:把镜像推到另一个 OCI Registry。推送前先检查目标端已有的 Blob,只补缺失的,最后才写 manifest。manifest 最后写,意味着镜像不会出现「一半传过去就能被拉到」的中间状态。同步:用 Cron 定期检查某个 mutable tag,源 digest 没变就跳过,变了才重新复制。任务有 pending / running / completed / failed / cancelled / skipped 六种状态。接口支持 ,同一个 key 重复提交会直接返回已有任务,不会重复跑。服务重启后,租约过期的未完成任务会自动恢复。这里的租约默认 10 分钟,任务在跑的时候会定期续约。如果机器突然断电,续约断了,重启后这个任务会被捡回来重跑,而不是永远卡在 running。源站、加速节点、目标 Registry 用的是三套完全独立的身份。节点凭据只会附加在发往该节点的请求上,不会流向目标 Registry。也就是说,你给加速节点配的密钥,不会在复制镜像时被带到目标端去。参数设置:调优都在这里运行时参数保存到数据库,新请求和任务立即生效,环境变量只在首次启动时作为默认值。自适应分片:默认开启。分片大小不是固定的,Donkey 会按当前可用节点的并发能力反推,把单个 Blob 切成大概四波能干完的份数,再钳在 2 到 8 MiB 之间。节点多、带宽足就切大一点,节点少就切小一点。自动汇总节点并发:每个命名空间分别汇总启用节点的并发容量,当前最高算到 64。节点策略:速度优先按真实吞吐分配;稳健均衡适合节点表现稳定的环境。调度算法:当前算法适合稳定节点,预计完成时间算法会把延迟、成功率和在途负载一起算进去。节点之间速度差得越多,后者的优势越明显。淘汰策略:平衡 / LRU / LFU。平衡策略会同时考虑新鲜度、访问热度和对象大小,偏向留住常用的小对象。页面还支持导入导出设置,换机器时可以整套搬走。部署帮助:接到 Docker 上Donkey 会按你当前的访问域名动态生成配置脚本,界面上直接给出替换好域名的命令。最省事的是一键切换,Linux 下执行:脚本只配置 Docker Hub 的 ,不会自动改写 这类地址,也不会安装 Docker 或保存凭据。运行前可以先加 看改动,它会先备份已有的 daemon.json。有一点要记牢: 通常只接管 Docker Hub 拉取。GHCR 等其他 Registry 必须走命名空间路径:如果不想动 Docker daemon,也可以直接把 Donkey 当独立 Registry 用:关于Donkey 用 Rust 写,前端是 React + Mantine,编译期把前端产物嵌进二进制。数据落在 SQLite 加文件系统缓存里,备份时整个数据目录一起打包即可。源码在 ,MIT 协议。它不绑定任何商业服务,节点、凭据和策略都由你自己配,装上就能给懒猫设备做镜像加速。



苔花如米小,也学牡丹开。
很多人都有过这样的经历:想听一个国外电台,得先在一个聚合站里翻半天,点进去发现流已经失效;换个网站,收藏又得重新攒一遍。更麻烦的是,这些聚合应用的电台源大多握在别人手里——某个台换地址了、某个频道下架了,你只能干等维护者更新。阿喵收音机(meowRadio)就是冲着这件事做的:一个自己部署的网络收音机,把世界电台目录、收藏、定时关闭、录制和自己的电台源都收进一个页面里,源掌握在自己手上。它是 Rust 写的单二进制服务,React 界面直接嵌进二进制,账号和收藏用 SQLite 保存,不依赖外部数据库,也不需要单独跑一个前端服务。一分钟跑起来直接在懒猫应用商店下载这个是打开时候的首页界面找台:目录、搜索和筛选首页是电台目录,目录来自社区维护的 Radio Browser。列表每条会显示国家、节目类型、编码和码率,点电台名称就直接开播。想按条件找,用搜索框输入电台名称、FM 或频率关键词;或者点「筛选」打开面板,按国家/地区、语言、节目类型、排序组合浏览——不输关键词也能翻。编码和最低码率收在「音频格式与音质」折叠区里,首页只保留一个筛选入口,不把选项铺满屏幕。几个实际用起来才发现的细节:中文输入法要在选词完成后再搜;按 Enter 可以立即搜索;搜不到结果时有恢复入口,不用手动清空条件。筛选面板里点击「应用筛选」才会更新列表,直接关掉面板会丢弃未应用的修改。选中电台后播放器进入 ON AIR 状态,显示电台名、国家与编码,时钟开始走;播放、暂停、上一个/下一个频道和音量都在这一块。九套外观:让它像一台真的收音机桌面常驻或者投到大屏上,界面好看与否是每天都要面对的。所以这个播放器做了九套外观:胡桃木拟物、琉璃夜色、光阵立方(2D/3D)、云白拟态、弧光调谐、奶油白、黑白刻度、银色复古、红屏像素。每一套都有独立的浅色和暗色配色。外观在用户菜单的「系统设置」里切换,语言和深浅色在首页顶栏就能切。切换外观不会打断正在播放的电台,偏好保存在当前浏览器里。用户菜单里集中了个人选项、系统设置、录音管理、个人电台源和退出登录五件事。外观里的电平、波形是随播放状态变化的装饰,暂停、缓冲、静音或者页面被隐藏时就停下来,不会假装成真实频谱;系统开启「减少动态效果」时显示静态形状。收藏:多了也不卡收藏多了以后,一次性把全部电台拉下来会越来越慢。所以「我的收藏」改成服务端分页,每页 24 个,同时显示匹配总数和页码;搜索覆盖全部收藏的名称、标签和国家,改关键词会回到第一页,但翻页不会打断正在播的电台。取消末页最后一项收藏时会自动退回有效页。首页分成「系统电台」「个人电台」「我的收藏」三个入口,各自保留自己的页码。定时关闭:像收音机闹钟一样睡前听电台,最需要的是「到点自动关」。定时关闭的入口在播放器旁边,点开是一个表盘:拖动时针和分针选择时长,也可以用键盘方向键、直接输数字,或者用 15/30/60/120 分钟的快捷预设。设好点「开始计时」,到点按实际时间停止播放,重新设置会替换上一次。它还能决定提前多久给出更醒目的提示:关闭、提前 10 秒、30 秒、1 分钟或 5 分钟。提示跟着当前材质和配色走,数字保持稳定,只有光晕轻微呼吸;系统开启减少动态效果时保持静态。有个细节值得单独说:换台、切换外观、进入登录页都不会重置计时,但刷新或关闭页面会结束这次计时。这不是 bug——正在运行的定时只属于当前页面会话,是有意这么设计的(后面原理部分再解释)。设备休眠时浏览器无法执行计时,恢复后会按已经过去的截止时间立即停止。录制:听到好节目存下来广播节目没法回听,听到好的内容想留下来,就得录。录制的前提是先让音频经过服务器播放(也就是「中转」),然后点播放器上的圆形录制按钮开始,点停止图标结束。换台、暂停、定时关闭或者播放中断,都会自动结束当前录制,并把这一段连同原来电台的信息保存下来;重连之后需要手动开始新的录制,不会把不同时段的音频悄悄拼成一条。停止后录音自动上传到个人录音库,也可以先下载到本机。上传失败可以重试。录音库在用户菜单里,支持应用内试听、重命名、下载和删除;试听时会先暂停直播,关掉管理窗口就停止试听。录制参数在系统设置里:格式按浏览器能力显示(WebM/Opus、Ogg/Opus 或 MP4/AAC,没有伪装成 MP3 的选项),目标码率 64/128/192/256 kbps,最长 5/15/30/60 分钟。每条最大 100 MiB,每用户总共 1 GiB。个人电台源:把自己的源管起来这是最贴合「源头要自己维护」这件事的功能。央广、地方台、小众流媒体、或者某个不在公共目录里的直播流,都可以自己加进来。入口在用户菜单的「个人电台源」,也可以直接访问 。有三种添加方式:填一个返回 JSON 的订阅网址、填单个音频地址或电台播放页、或者直接上传 JSON 文件。网络源需要手动点「更新」拉取,文件源重新上传替换;更新失败会保留原来的内容,不会把好的数据冲掉。JSON 格式是顶层数组,每个电台有名称、可选的分类路径和一组地址;多个地址按顺序尝试,前面的失效就用后面的。需要带请求头的地址可以用对象写法,但只允许 User-Agent、Referer、Origin、Accept 四种头。协议支持得比较宽:HTTP(S) 连续音频、HLS、FLV、RTMP(S)、RTSP(S)、MMS 系列,也包括能从中提取媒体链接的 HTML、JSON、JSONP 播放页和接口——央广的播放页按 参数选频道。服务端会把这些源解析并转成同源 MP3(128 kbps)再播放,这样录制和定时功能才能一起用。导入或更新之后,程序会逐条检查每个地址。检查完只把失败的线路列在对话框里,由你确认后才清理;如果某个电台还有别的有效地址,它会和它的收藏一起保留下来——只有所有线路都失效,才会删掉这个电台和它的收藏。源管理里也可以删除单个电台、单个源或全部个人源,系统电台的收藏不受影响。限额方面:每个用户最多 32 个源,单次导入最多 5 MiB、5000 个条目;转码任务全局最多 4 个并发、每个用户 2 个,地址检测和播放共用这个额度。账号:多用户、各自收藏登录和注册在独立的 页面,不在弹窗里。每个账号有自己的收藏和录音,密码用 Argon2id 哈希,会话是 HttpOnly 的 Cookie,过期和退出都会撤销。个人资料在用户菜单的「个人选项」里,只有「个人资料」和「修改密码」两个页签:昵称只用于显示,登录用户名不变;头像支持 PNG/JPEG/WebP,上传后服务端裁剪成 256×256 的 WebP。改密码需要验证当前密码,改完保留当前登录、撤销其他设备的会话。懒猫的移动端优化移动端在懒猫微服的 WebShell 里打开时,程序会自动启用原生控制栏适配:Android 端同步播放状态、元数据和播放/暂停/换台,iOS 端适配状态栏和安全区域。在普通浏览器里会跳过这些 SDK 加载和宿主调用。几个设计取舍定时关闭为什么用「实际截止时间」。 浏览器在后台会节流定时器,如果只靠倒计时计数,页面被挂起后就会越走越慢。所以计时存的是一个绝对截止时刻,到点比对当前时间即可停止。换台、切外观不会重置,是因为截止时刻属于这个页面会话,而不是属于某个播放器实例;刷新页面会结束计时,同样是因为它只存在于当前会话里——这一点在界面上是有意保留的行为。断流之后怎么恢复。 网络中断后按 2/4/8/16/30/30 秒递增的间隔重试,恢复网络或回到前台时也会检查是否需要重连。手动暂停和定时关闭到点不会触发自动恢复,避免你明明按了暂停、它自己又响起来。中转的安全边界。 服务端中转要防止被拿来当跳板。系统电台只接受 Radio Browser 的电台 UUID,每次重定向都重新检查目标是不是公共 IP,并把解析结果固定下来;个人电台源只允许公共网络目标,拒绝 URL 里带账号密码的地址,每次跳转和媒体子资源都检查目标地址。HLS 的子资源(播放列表、密钥、分片)用绑定当前用户和电台的签名链接,仍然需要登录会话才能取。录制为什么只对中转音源启用。 浏览器直连的音频流来自电台自己的域名,跨源拿不到可录制的音轨;而中转后的音频是同源的 MP3,才能用浏览器原生的录制接口抓下来。这也是为什么录制按钮在未中转时是灰的。收藏为什么要轻量摘要。 列表上要显示收藏标记和银色复古外观里的快捷频道,如果为此把全部电台详情都拉一遍会很浪费,所以单独用一个只含 UUID 和最近几个快捷频道的摘要接口。移动端上界面会收成单列,筛选面板变成底部抽屉,触控目标也相应放大。其他的一些说明Radio Browser 是社区目录,部分电台可能离线、地域受限,或者编码不被你的浏览器支持;页面会显示连接失败和重试入口。个人源里那些需要登录、或者只能靠执行网页脚本才能拿到流地址的链接,可能无法播放;历史链接是否可用也取决于上游服务状态。移动系统挂起网页时,无法保证后台录制或播放持续运行;回到前台后播放器会检查是否需要重连。最后这个项目的目标不是再造一个电台聚合站,而是把「选台、听、收藏、定时、录制、维护自己的源」这套流程放进一个自己能掌控的服务里。目录可以来自社区,但你的收藏和你的电台源,留在你自己的机器上。感谢懒猫内测群的大佬帮忙抓取的某网络收音机源,通过个人源可以收听很多国内的电台,我做了整理 希望这个小小的收音机软件能带给你一些快乐。



苔花如米小,也学牡丹开。
懒猫微服那圈 LED 灯晚上太亮,影响睡眠。可白天又想一眼看到它还亮着,才觉得安心,亮着就说明机器还在跑。懒猫小灯最早只想要个定时开关,后来慢慢发现一些好玩的功能,就丰富了起来。现在它管的事从灯几点亮,一直延伸到这台机器几点睡、几点醒。装好之后长这样:先让灯听你的话设备的 LED 灯带是常亮的,它不看时间,也不管你是不是已经躺下了(特别是冬天,我不想伸手去拿手机)。手动开关解决的是现在就想关,定时任务解决的是每天到点自己关。点顶栏的加号,填任务名、执行时间、操作,再勾上需要重复的星期,一条任务就配好了。操作里除了开灯、关灯,还有关机和重启,所以灯和机器这两件事排在同一个列表里。我配了两条。早上 8 点开灯,是给自己看的,起床抬头确认一下设备在跑;晚上 22:30 关灯,是为了睡觉。后台每分钟轮一次,把启用的任务挨个过一遍:今天是不是要跑的星期,时间到了没有。到点就执行,执行完按设备返回的实际状态刷新界面,不靠本地记的状态去猜。灯到底关了没设了 22:30 关灯,人已经躺下了,脑子里还会飘过一个念头:到底关了没有。通知就是为这个加的。每条任务可以单独选走哪个通道,支持三种。懒猫内置通知直接推到微服客户端,Server 酱推到微信或 App,ntfy 适合已经有自建服务、或者想在多台设备上收消息的人。通知文案能自己改,里面可以插任务名和执行时间。关灯那条我改成了一句带名字的话,收到时就知道是哪个任务跑完了,而不是一条干巴巴的系统消息。Server 酱这里有个坑。SendKey 两个页面都能拿到,但推送渠道不一样:从 拿到的走 Server 酱 App 推送,从 拿到的走微信推送。填错了不会报错,只是收不到,或者收到的不是你平时看的那个渠道。让机器也听你的话灯关了,风扇还在转,硬盘偶尔还在响。夜里的声音比光更烦人,真想安静下来得把整台机器关掉。这里有个绕不过去的问题。软件定时器活在操作系统里,系统一关,定时器跟着就没了,那谁来把机器叫醒?(当然懒猫也支持WOL唤醒,但是我没多余的设备,就只能懒猫的事情懒猫自己干了。)总不能每天早起手动按一下电源键。之前官方出了个应用觉得挺实用的,后面就去在懒猫小灯上实现了。这个功能的答案在主板上一颗带纽扣电池的小芯片,RTC,实时时钟。机器断电之后它照常在走时,还支持设一个到点触发的闹钟。把它设好,机器就能自己醒过来,不依赖任何正在运行的程序。小灯要做的事,是在关机之前把这个闹钟安排明白,顺序卡得很紧。先把开机时间写进 RTC,再把闹钟读回来,跟要设的时间逐秒比对,一致才算写进去了。这一步确认成功,关机指令才发得出去。回读要是对不上,关机就会被拦下来,宁可这次不关,也不能让机器睡过去没人叫醒。写闹钟之前还有一道检查:先读一次当前的闹钟,如果上面已经挂着一个还没到点、又不是自己设的闹钟,就直接报错退出,不去覆盖别人留下的设置。关机时间和开机时间可以分别开关,只用其中一个也行。每周重复的按 IANA 时区算,开机时间早于关机时间时按次日算,比如 23:55 关机、05:20 开机,醒来就是第二天早上。单次计划的开机最远只能排到 28 天内,这是 RTC 驱动本身的限制。两个时间点之间至少留 5 分钟,只设一个也要留 2 分钟以上,不然刚发完关机指令就得准备唤醒,时间太紧。开关机只对管理员开放。保存、取消、真正执行关机之前,都会重新查一次当前账号的角色。有件事得说清楚:回读只能证明闹钟写进去了,证明不了机器一定醒得来。能不能唤醒取决于主板固件里的 S5 唤醒有没有打开,那个开关不在应用里。第一次用建议保持供电,实机试一次。一些边角上的用心灯泡样式有六种,经典灯泡、熔岩灯、复古台灯、液态光效、点阵时钟、微光灯泡。我平时用复古台灯,那根拉绳开关的样子比一个冷冰冰的按钮舒服。桌面上的启动器图标会跟着灯的状态变,不用打开应用,从图标就能看出灯是亮着还是灭着。设置里可以把任务列表收起来,任务照常执行,界面干净一点;也可以打开网页内的提前提醒,提前几分钟自己填。深浅主题和中英文切换都在顶栏。装和用想用自动开机的话,先去主板固件里把唤醒打开,并且保持供电。RTC 时钟得是 UTC,跟系统时间差超过两分钟会被直接拒绝,用之前顺手校准一下硬件时钟(当然懒猫是实现都弄好的,开箱即用)。再补充一句:应用得一直跑到关机那一刻。重启或者重装之后,已经错过的关机不会补做。这是有意这么设计的,宁可少关一次,也不要在不合时宜的时候突然断电。另外新版的懒猫小灯使用了懒猫的动态图标功能,可以直接看图标就晓得状态。灯开着是这样的图标关闭了是这样的图标希望这个软件能给您使用懒猫的生活带来一些小小的快乐。



苔花如米小,也学牡丹开。
magpie 是给你所有 Agent 统一选模型的地方:先把模型来源加进来,再给每个 Agent 选一个模型,magpie 会把它写进那个 Agent 自己的配置文件。背后是一个小网关,同时说 OpenAI / Anthropic / Gemini 三种 API,并在它们之间互转——所以 Claude Code 能用 ChatGPT 订阅里的 GPT,Codex 能用 DeepSeek,OpenCode 能用你的 Claude 订阅。通过下面的地址安装应用为什么值得装在懒猫微服上magpie 官方形态是跑在你自己电脑本机(127.0.0.1:3425),只服务那一台机器。装到微服上,它的角色会变——一个域名,全家设备都能用:笔记本、台式机、手机、平板都指到同一个地址,接入只要三行环境变量;订阅、密钥、用量都留在你自己家:谁在用什么模型、花了多少,一目了然;装一次,升级在商店点一下:备份就是拷走一个目录。从"本机小工具"变成"家里的 AI 网关",这是它最值得被放在微服上的原因。概念速览:四张桌子打开控制台你会发现整个应用就是四张桌子,理解它们之后,所有操作都能自己推出来:桌子是什么你要做的事供应商模型从哪里来:订阅、API 密钥、本机模型、自定义接口把你有的来源都摆上来,一次就好Agent用模型的工具:Claude Code、Codex、OpenCode、Gemini CLI……每个工具点一下,选个模型网关所有请求经过的出口:一个地址、五种 API复制走地址,别让工具直连上游路由组可选:把多个账号或同名模型合成一个有第二个账号时再来每个模型都写作 provider/model,例如 deepseek/deepseek-chat。怎么用第 1 步 · 添加供应商打开「供应商」标签页,点 +添加供应商。模型来源有四类:订阅 · 登录即可:Claude(Pro/Max/Team)、ChatGPT(Plus/Pro/Business)、Cursor、Grok、Copilot、Devin。点卡片后 magpie 会打开厂商自己的登录页,登录完成账号立刻出现;同一个卡片再点一次就能加第二个账号——订阅只需在这里登录一次,不用先去别的 Agent 里登;厂商预设:Anthropic、OpenAI、Gemini、DeepSeek、Kimi、GLM、Qwen 等,选一个、粘 API Key,magpie 会向厂商问出模型列表;本机:Ollama 和 LM Studio,无需密钥;自定义:任何 OpenAI 兼容地址(以 /v1 结尾)或 Anthropic 兼容根地址。以前在 Claude Code / Codex 里配过供应商?面板顶部的「导入…」会读取它们的配置文件,把勾选的供应商带进来(不改动原文件,而且导入的是拷贝,之后两边的改动互不同步)。第 2 步 · 给每个 Agent 选模型「Agent」标签页里,本机装过或配置过的每个 Agent 各占一行,显示它当前用的模型。点模型 → 选一个,就完成了——magpie 会把选择直接写进那个 Agent 自己的配置文件,只改它需要的几个键,注释、顺序、缩进全都保留,写入是原子的。Agent写入什么Claude Code~/.claude/settings.json 里的 ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN 和模型变量Codex~/.codex/config.toml 的一个 [model_providers.magpie] 表;你自己的 ChatGPT 登录不受影响OpenCode / MiMo Code / Pi / Crush 等一个 magpie 供应商条目 + magpie/provider/modelGemini CLIGOOGLE_GEMINI_BASE_URL 指向网关、密钥认证与模型两个必须记住的点:改的是"下一个会话":Agent 在启动时读配置,已经在跑的会话保持原来的模型;Codex 还要重启应用:它的模型列表也是启动时生成的,切换后把 Codex 应用和已打开的会话一起重启。在 Agent 页底部点「+ 保存当前」,可以把所有 Agent 的设置存成一个方案,之后一键全部切回——试新模型之前先存一个,心里就有底了。模型选择列表第 3 步 · 把其他设备接上「网关」页是微服版相对官方形态最大的不同:你会拿到一个域名地址和五种 API(OpenAI / Responses / Anthropic / Gemini / System One),任何支持 OpenAI 兼容接口的工具都能接。export OPENAI_BASE_URL=https://你的域名/v1export OPENAI_API_KEY=sk-magpie-key-… # 网关页里为每台设备单独建一把注意:对 magpie 列表里的那些 Agent(Claude Code、Codex 等),你不需要手动配这些环境变量——magpie 已经写好了。这几行是留给它管不了的工具的,网关页的「接入」部分有一键复制。两个安全相关的动作:装完第一件事:生成一个KEY 打开 网关-添加网关密钥(如果你没想好名字,可以在设置-网络与共享里面打开“局域网共享”会生成一个叫Magpie的网关密钥)每台设备一把密钥:新建、命名、分开统计。用量页会按密钥把消耗列清楚,谁在用什么一目了然。第 4 步(可选)· 路由组:多账号与同名模型的合体当你有两个 ChatGPT 账号、或者同一个模型既有订阅又有 API Key 时,路由组把它们合成一个名字(group/id 形式),Agent 把它当作一个模型来选。同名模型会自动成组:Claude 订阅和 Copilot 都有 Claude Opus,DeepSeek 官方和 OpenRouter 都有 DeepSeek,选它就能分摊到多个来源。路由方式:智能(默认,余额多的先用)、按顺序、轮流、最少使用、重置前用完。还能用规则把某类对话交给组里指定成员:tokens=150k——长对话优先发给便宜模型;compact——Agent 压缩上下文时的总结交给便宜模型,正式对话留在原地;folders=~/work/acme——某个项目里的会话先发给指定模型;intent="一个简单问题"——用几个词描述意图,让它按内容分流。路由页会实时显示每一轮被哪条规则、送到了哪里。用量、上下文与方案「用量」页按 Agent 和模型统计经过网关的每次调用:token、缓存命中、费用,以及每份订阅已用的额度和重置时间(直连厂商的请求不经过 magpie,不会计入——这也正是把工具都收到网关下的好处)。「上下文」标签页能看到每次请求的提示词里装了什么:系统提示词、工具定义、指令文件、读入的文件、对话各占窗口多少,并给每个 Agent 一个百分制得分。提示词原文只在内存里留最近 10 次,magpie 退出即消失,不会发往任何地方。进阶:终端与自动化magpie 的每一步在命令行都有对应命令(在应用容器的终端里执行):命令作用magpie ls列出找到的每个 Agent 及其当前设置magpie modelsAgent 能选的所有模型magpie claude codex/gpt-5.5把某个 Agent 的模型设成指定值magpie accounts add codex再登录一个 ChatGPT/Claude 订阅magpie save work / use work保存 / 应用方案magpie usage 7d按 Agent 和模型统计 token 与费用magpie agent default恢复该 Agent 原样,移除 magpie 的接入magpie help 是完整列表;不加参数的 magpie 是终端里的完整 TUI。几个真实会遇到的坑订阅登录的回调:在容器里发起登录时,浏览器最后会跳回 localhost,那个页面打不开——把地址栏里整条地址复制出来,粘进登录流程里的 Callback URL 输入框即可;想恢复原样:在模型选择列表里选 Agent 自带的模型,或者用对应的 default 命令,magpie 会删掉它写入的内容并恢复原来的值;手动改配置不会冲突:magpie 每次都重新读文件,只动它设置的那几个键;代理软件的 502 陷阱(如果你在本机也跑 magpie):Surge / Clash 之类会把发往 127.0.0.1:3425 的请求劫走,在规则最前面加 IP-CIDR,127.0.0.0/8,DIRECT,no-resolve 与 IP-CIDR6,::1/128,DIRECT,no-resolve 即可;截图和分享前先轮换密钥:控制台会打印完整密钥,发到公开场合之前记得在网关页「轮换密钥」,顺手检查用量页里的账号名;备份与迁移:一切都在 /lzcapp/var/config,整目录拷走即完成备份;隐私:你的提示词、回复、密钥只发给你自己用的供应商,中间没有 magpie 的服务器;正式版每天报一次"多少人在用"的匿名统计,设置 → 隐私里可以关掉。写在最后AI 工具的更新速度已经超过了我们维护配置的耐心。与其在每个工具里追着改,不如给自己搭一个稳定的入口:上游随便换,入口永远是你的。magpie 在懒猫微服上只是点一下安装的事,而它带来的秩序感,会在你接第三台设备的时候开始显现。



111
一、安装部署使用上面连接安装 PP-OCRv6 应用安装完成之后,点击应用,进入界面如下,点击 "继续安装" 按钮会自动跳转到 AI Pod 进行部署部署参数选择进入部署界面,我们可以看到有三种模型规格,安装部署默认选择的是 。推荐单次调用使用 Small ,批量使用 Medium 。规格说明:Tiny 版本:参数量约 6.0M,具备极致的轻量与超快速度,但精度在三者中最低,适合算力极度受限的边缘设备。Small 版本:参数量约 29.7M,在体积与精度之间实现了良好平衡,支持多种语言,适合移动端和普通桌面端应用。Medium 版本:参数量约 132.3M,具备极高的准确率和强大的复杂场景泛化能力,但计算开销最大,适合服务器端或工业级高精度需求。部署完成,下图框出区域是模型调用的 URL 地址二、使用将上面复制的 URL 地址在浏览器打开。点击 "浏览" 选择图片文件,然后点击 "识别" 按钮。这样就可以实现文字识别了。三、扩展使用端口转发工具,参考下图创建转发规则,使用 ,也能调用算力舱的模型使用了。效果图展示小龙猫调用在小龙猫中,输入提示词 ===> 上传附件图片 ===> 回车 ===> 等待结果



111
一、安装部署通过连接安装应用安装完成之后打开该应用,显示界面如下,点击 "继续安装" 按钮会自动跳转到 AI Pod 部署。下图显示的部署参数是默认的,现在我实际部署的是 Hy-MT2-1.8-FP8。开始部署之后,会拉取模型,这个过程需要等待一会儿。上图中,总进度显示 100%,且没有其他报错。表示已经部署完成。图中进度条下方显示的 url 地址就是模型的调用地址二、使用部署完成之后就是使用了。如果前面没注意到 URL 地址,也可参考下图方式查看配置 API选择一款模型调用工具,我这边使用的是 cherry studio,参考下图配置。API密钥可以随便填写,但是不能为空对话调用在 cherry studio 中选择 "对话",创建一个普通助手,选择部署的 Hy-MT2 模型,对话翻译就可以了Tips如果出现这个报错则可能是因为用户通过 cherry studio 创建的智能体调用的我这里创建的智能体是通过内置的 pi runtime 跑的,Agent 的工作方式就是「工具调用循环」(读写文件、执行操作等),所以它会强制给每个请求带上 tools + tool_choice:"auto"。Hy-MT2-1.8B-FP8 是个 纯翻译模型(架构 HunYuanDenseV1ForCausalLM),它的 chat_template.jinja 里根本没有 tools / tool_calls 的渲染逻辑,本质上就不支持函数调用。



111
一、模型部署通过上面连接安装应用安装完成之后打开该应用,显示界面如下,点击 "继续安装" 按钮会自动跳转到 AI Pod 部署。选择要部署的算力舱上面提到的部署参数也可以进行选择,一般是推荐默认配置 ,如果用户有其他精度需求,则可以自行切换模型权重说明BF16:原始训练精度,语义与图文对齐能力最完整、无损,但显存占用最大、推理速度受限于硬件原生支持度,仅适合显存充足的科研评测或高精度生产环境。W4A8:权重4-bit+激活8-bit混合量化,显存降至BF16的30%-40%且保留激活动态范围以避免多模态对齐崩塌,兼顾性能与精度,但需TensorRT-LLM/vLLM等特定框架支持,适合高并发服务端部署。NVFP4:NVIDIA Blackwell架构专属4-bit浮点格式,硬件原生加速下数值稳定性与速度优于传统INT4,但在旧卡上无加速甚至回退模拟计算变慢,仅适配新一代数据中心GPU。GGUF:消费级/边缘端通用格式,支持纯CPU、Apple Silicon及混合卸载,社区适配快、部署门槛低,但视觉编码器与投影层量化敏感,低量化版本易出现图文对齐失效,仅推荐Q5_K_M以上精度用于多模态任务。下载源也可以切换,目前支持 和 两个仓库源。建议国内用户优先选择 进行模型的下载二、使用模型生成图片在局域网内,其他设备浏览器输入 就可以打开一个 ComfyUI 的网页,它会有一个默认的工作流,直接运行,生成的结果如下如果想生成其他图片,在下图圈出的编辑区,输入新提示词,之后再点击右上角运行,等待生成即可。补充:对于下图框选区域,这个编辑区是:决定你在生成图片的时候,剔除一些不需要的元素、风格等等一些其他因素。其他配置建议保持默认即可。对于喜欢动手的大佬,也可以选择不使用默认模板配置,而是自己搭建适合自己的工作流。三、扩展使用上面连接安装端口转发工具,参考下图配置出口地址:使用微服域名,并定义一个监听端口目标配置:算力舱ip和模型监听的端口访问的时候使用 效果图展示Tips该模型使用特点qwen image 2.1 heretic 的这个comfyui是专门为这个模型文件单独构建的,您要使用其他的工作流,建议您切换 comfyui 应用来使用



111
如何在微服中体验到 Windows 系统,今天我来教你如何在微服中安装windows。先看效果图,如下:教程中我安装当前最新版本是v0.2.3,建议大家也是安装最新的版本。进入正题我们先来到懒猫商店,搜索 "Windows虚拟机" 这个应用,点击安装安装完成之后,打开应用,如图其中,下载来源是可以切换的,不同的源可安装的镜像都会不同,有需要的用户可以每个都切换看看,选择想要安装的系统版本。这里我就是用默认的方式安装。安装过程稍微有点久,请大家耐心等待。前面的检测,校验跑完,走到安装 windows 这一步,安装windows配置,如果有不懂的也可以参考下面的截图。对于大佬来说,下面的一些截图就可以跳过了版本我选择的专业版,大家有不懂的可以百度,这里不过多介绍选择安装类型升级:在现有 Windows 系统上直接覆盖安装,保留个人文件、设置和已安装的应用程序。自定义:进行全新安装。你需要手动选择安装到哪个分区,甚至可以格式化硬盘。提示:选择自定义之后,会让用户对磁盘进行分区或者其他操作,如果想省事直接点击下一步,则会进入下图界面,这就开始装系统了。这个时候就不能撤回到上一步了。(补充:在前面几项配置中,每页的左上角有一个回退按钮,这就是回到上一步的。但是开始安装windows就不能撤回了)现在系统安装好了,进行初始化设置,这里就不过多介绍了初始化完成,进入edge也能上网,这个时候就可以点击右下角的 "我已完成安装"。它会有个弹窗,这里我忘记截图了,直接确定就可以了。点击之后,就是这种样子,大家可以愉快使用了如果大家在windows系统里面,将它关机了,重新打开或重启"windows虚拟机"应用,都不知道怎么启动win系统。请按下图操作成功开机



往前走啊,想什么呢
懒猫影视是懒猫微服官方研发的面向家庭场景的影视聚合应用。搭载全自动智能刮削功能,可自动匹配海报、剧情与演员信息,自动划分电影、剧集、动漫等分类。这篇攻略主要介绍如何在TV上使用懒猫影视。安卓电视,安装懒猫TV客户端。打开网址: 。选择“下载TV版影视”。点击Android TV,下载安卓客户端。在电视上安装,即可使用。在Apple TV上使用。在Apple TV商店里搜索“懒猫影视”,安装后使用。通过HDMI链接使用。如果电视版本不支持安装TV客户端,或者是使用投影仪的用户,可以通过HDMI将微服与电视(或投影仪)连接的方式来使用。在手机或电脑上打开懒猫影视,点击右上角“TV”图标。根据遥控器下方小字提示,切换电视机信号源。(有的电视机型号会自动切换信号源)其他注意事项:点击遥控器上的“返回”,不影响TV上的画面播放,同时可以使用手机或者电脑客户端。下次点击“TV”图标可继续使用。TV使用过程中,电脑和手机上“TV”图标有状态区分。点击遥控器右上角的“关闭”按钮,结束当前懒猫影视在TV上的使用。下次再点击“TV”图标开启。




应怜鱼乱红纱涨,莫道青衿梦里游
🎯 What —— 这是什么?ProtoForge 是一个把“虚拟设备、工业协议、场景编排和测试记录”放在同一个 Web 控制台里的仿真平台。它适合在没有真实 PLC、传感器或摄像机的情况下,先把上位机、网关和数据采集程序联调起来。它的工作方式可以概括为:在管理页面创建一个虚拟设备,并为设备提供温度、湿度、压力、流量等测点。在“协议服务”启动 Modbus TCP、OPC UA、MQTT、Siemens S7、Omron FINS、GB28181、BACnet/IP、HTTP REST 等协议。用场景把多个设备组合起来,设置阈值、值变化、定时或脚本规则。通过外部工业客户端连接懒猫盒子发布的 TCP/UDP 端口,观察调试日志、录制交互并回放。把数据转发到 EdgeLite、InfluxDB、HTTP 服务或 Webhook,或者导出备份留档。当前实例展示了 97 个设备模板、18 类协议。数据保存在服务端 SQLite 中,同一懒猫实例的设备、场景和日志不依赖浏览器本地缓存。🛠️ How —— 怎么用?一、访问应用并用懒猫账号登录如果 OIDC 暂时不可用,可以使用本地兜底账号 进入,再到“系统设置 → 用户管理”修改密码。生产环境不要长期保留默认密码。二、用温湿度传感器完成第一条联调链路下面是一组可以直接照抄的中文业务数据,适合做第一次体验:场景:一号车间冷却水回路联调设备:一号车间冷却水回水温湿度监测协议:Modbus TCP测点:、、、1. 先启动协议服务左侧进入 协议服务。找到 Modbus TCP,确认端口为 。点击 一键启动,在确认框中点击 启动。等待启动进度走完,状态变为 运行中。这里的顺序很重要:如果协议服务尚未启动,模板市场中的“创建并启动”仍可能提示创建成功,但设备会显示“离线”,因为它没有可用的协议引擎。2. 从模板市场创建设备进入 模板市场,搜索“温湿度”。选择 温湿度传感器 / Modbus TCP,点击 一键创建设备。在弹窗中把名称改成 ,点击 创建并启动。回到 设备管理,确认设备协议为 、测点数为 、状态为 在线。本次实测生成的设备 ID 为 。每次部署生成的 ID 不同,联调时应以页面实际显示的 ID 为准。3. 查看并写入测点在设备行点击 数据测点,可以看到实时值、采样时间和质量。温湿度模板的四个点分别是:测点用途示例回水温度34.3相对湿度32.3露点温度7.28告警状态寄存器0 或设备当前值数值会按仿真逻辑变化,表格中的示例只用于理解量纲。使用“快速写入测点值”可以把测试值改成例如 、,然后刷新确认时间和质量仍为 。4. 从局域网客户端连接工业客户端优先连接应用域名加发布端口;如果客户端仅支持 IPv4、域名没有 A 记录或 IPv6 路径不可达,再改用懒猫盒子的局域网 IPv4:先用命令检查端口,再用 Modbus 客户端执行读写:如果客户端不支持 IPv6,或 没有结果,则把主机替换为懒猫盒子的局域网 IPv4。容器名 和 容器地址不能给外部客户端使用。三、场景编排:把设备变成一条工艺链进入 场景编排,点击 创建场景。2. 填写:场景 ID:场景名称:描述:点击场景行的 编辑,进入可视化场景编排器。4. 点击 添加设备,填写设备 ID、设备名称和协议。5. 点击 保存布局,回到场景列表后使用 启动 / 停止 控制整组设备。场景编辑器还可以保存阈值、值变化、定时和脚本规则。四、模板与设备的复用设备模板:查看 97 个模板的厂商、型号、测点数和描述;可按协议搜索,使用 实例化 快速生成设备。模板市场:按“PLC、传感器、数控机床、IoT 设备、摄像头、楼宇”等标签筛选,再一键创建并启动。创建模板:在“设备模板”中点击 创建模板,填写模板 ID、名称、协议、厂商、型号、描述和标签,再用 添加测点 定义数据点。五、仿真测试:编排可重复的用例仿真测试页面包含 可视化编辑、JSON 编辑、用例管理、测试套件、历史报告 五个区域。正常流程是:填写测试名称,例如 。2. 点击 + 添加步骤,为每一步选择操作并填写步骤名称。3. 使用 + 添加检查 配置断言。4. 点击 保存为用例,再使用 执行测试;HTML 报告用于浏览器预览,JSON 适合归档或迁移。六、调试日志与录制回放调试日志在 调试日志 中可以:按协议筛选,例如只看 ;按方向和关键词缩小范围;点击 暂停 固定现场,点击 清空 开始新一轮联调;点击 导出 保存当前日志。日志详情包含时间、协议、设备 ID、事件类型和说明。录制回放打开 录制回放,点击 开始录制。2. 名称填写 ,协议选择 ,描述可写“记录回水温度和湿度的 Modbus TCP 读写报文”。3. 用外部客户端产生真实读写,再点击 停止录制 并确认。示例:在macos终端中输入以下代码测试。注意需要修改自己的懒猫微服名在列表中使用 详情 查看事件,使用 回放 重放交互,必要时使用 导出 归档。七、备份、恢复、系统设置和审计备份恢复在 备份恢复 页面:导出备份:将设备、场景、模板和审计日志导出为 JSON;选择备份文件恢复:从 JSON 恢复,恢复会覆盖现有数据,执行前先保留当前备份。系统设置系统设置分为:通用设置:服务端口(默认 )、日志级别、CORS 来源和演示模式;集成配置:EdgeLite 等外部服务参数;协议端口:修改各协议的容器内监听端口;用户管理:添加用户、修改密码、重置密码、管理员开关;演示数据:按需生成或清理演示数据。注意:设置页中的 Siemens S7 默认端口为容器内 ,懒猫对外发布端口是 ,外部客户端应连接后者。审计日志审计日志 会记录用户、时间、操作类型、资源类型、资源 ID 和 API 详情。创建设备、启动协议、创建/更新场景、开始/停止录制等操作都可以在这里复核;管理员可以按用户名、操作类型和资源类型搜索。🔌 开放端口访问攻略管理页面和工业协议端口不是同一条链路。下表中的 只表示主机名,例如 ,不要包含 、路径或中文标点。用途客户端连接方式协议及注意事项管理页面通过懒猫账号登录;不要添加容器内部端口 仿真 HTTP明文 HTTP,不支持 HTTPS;可用浏览器或 访问Modbus TCP主机 ,端口 使用 Modbus TCP 客户端,不要添加 或 OPC UA使用 OPC UA 客户端;安全策略和认证方式以协议服务配置为准MQTT使用 MQTT 客户端;未配置 TLS 时不要使用 Siemens S7主机 ,端口 懒猫入口将外部端口 转发到容器内部端口 Mitsubishi MC主机 ,端口 使用 Mitsubishi MC TCP 客户端Omron FINS主机 ,端口 根据服务配置选择 FINS TCP 或 FINS UDPGB28181SIP 主机 ,端口 支持 SIP TCP/UDP;媒体传输还需要 UDP RTP 端口范围BACnet/IP主机 ,UDP 端口 使用支持指定远程主机的 BACnet/IP 客户端;跨网段广播发现可能不可用EtherNet/IP主机 ,端口 使用 EtherNet/IP TCP 客户端FANUC FOCAS主机 ,端口 使用 FANUC FOCAS TCP 客户端MTConnect通过明文 HTTP 获取 MTConnect XML;不要使用 HTTPSOPC DA主机 ,端口 ProtoForge 提供 TCP 桥接仿真入口,不是浏览器页面Mettler-Toledo主机 ,端口 使用对应的 Mettler-Toledo TCP 客户端PROFINET IO主机 ,端口 这是 ProtoForge 的 TCP 仿真入口,不等同于真实 PROFINET 二层实时网络EtherCAT主机 ,端口 这是 ProtoForge 的 TCP 仿真入口,不等同于真实 EtherCAT 二层总线最小连通性检查测试前先在 ProtoForge 的 协议服务 页面启动目标协议,再在 设备管理 中启动对应设备。1. 检查仿真 HTTP正常情况下会返回类似内容:8080 是明文 HTTP 四层入口,不提供 HTTPS、TLS 或 OIDC 登录。不要写成 ,否则可能出现 TLS 握手失败、连接重置、 或超时。正确使用 仍然出现 或 时,先回到页面确认 HTTP RESTful 协议服务是否已经启动。2. 检查 Modbus TCP 端口看到下面的结果,表示 TCP 连接已经建立: 成功只代表四层入口可以建立连接,不能证明 Modbus 协议已经正常工作。懒猫入口有时会在协议服务尚未启动时接受 TCP 连接,随后重置真正的协议请求。最终还要使用 Modbus TCP 客户端,按照设备实际配置的 Unit ID、寄存器地址和数据类型完成一次真实读写,并在 调试日志 中确认对应报文。3. 判断客户端应该使用 IPv4 还是 IPv6 记录表示 IPv4; 记录表示 IPv6;两者都有时,双栈客户端通常可以直接使用应用域名; 为空而只有 时,仅支持 IPv4 的客户端不能通过该域名连接;两者都为空时,检查域名是否填写正确,以及应用是否已正常安装。如果域名没有 A 记录、客户端仅支持 IPv4,或者当前网络无法访问 IPv6,请把连接主机改成懒猫微服的局域网 IPv4,端口保持不变。下面的 只是示例,必须替换成自己微服的真实地址:🧭 日常工作流建议先启动需要的协议,再启动设备。用模板创建设备,名称包含车间、产线和用途。在设备测点窗口确认数值和质量,再从外部客户端读写。用调试日志确认请求已到达;需要复现时再打开录制。将多个设备放入场景,保存布局后再运行规则。联调完成后导出备份,或把日志/场景/录制导出交给项目归档流程。联调结束后停止协议和场景,减少端口暴露和资源占用。🧩 Conclusion —— 一句话总结ProtoForge 适合把工业协议联调从“等真实设备到位”提前到“先用虚拟设备验证接口”。



苔花如米小,也学牡丹开。
相关软件nowledge Memory是一款针对AI使用场景,包括写代码、网页chat的历史和上下文做的一款历史软件,你可以把它看成你AI时代的个人"史官",记录你和AI的交互、决定并自动提炼你的AI Skill、习惯、更正和同步你的决定、改变。我这篇文章实际只是作为简单的记忆软件用途作为介绍,其他的rag、skill提炼请参考nowledge memory的官方文档。安装在懒猫微服上的安装还是比较简单,通过应用商店安装即可注意这里的设置向导里面的账号密码是给记忆快照使用的,记忆快照主要的作用的将nowledge memory的记忆自动备份到 webdav和s3存储,记忆快照的访问入口是在图标右键下面的菜单里。安装好以后,打开日志,找到 开头的随机生成的apikey,请妥善保管这个key,后面要使用到然后登录输入刚才的那个apikey对于apikey重置的操作比较麻烦,建议做好备份!第一次需要下载相关的离线嵌入模型然后还需要配置相关的openapi 来进行自动处理时的记忆处理,主要是用于提炼和自动更新相关的记忆内容,你可以使用来进行聚合一些免费的api,一般deepseek-v4-flash就够用了。这样基本的使用必备设置就完成了。使用使用上,限于篇幅,我不做太多的介绍,也无法做每个平台跟agent的集成说明,请参考官方的文档进行。这里我仅以使用了Arch Linux的Lightos 为例命令行安装nmem-cli 通过 来安装命令行工具配置通过然后再按官方的说明在不同的agent和软件的集成 ,这里以codex为例执行然后把下面这段放进 ~/.codex/config.toml:安装完成后重启 Codex。这时,你的codex应该会出现这些skill按你之前正常使用的节奏使用即可,后续可以在nowledge memory里面看到你的修改以及跟agent的交互。后面即使是你换电脑、换一个agent都可以通过nmem来获取某个时候,我做了啥决定,引入了啥功能,做了啥破坏性更改,性能做了啥N倍的优化,不用再给AI在描述一次,都可以在agent里面让AI自己去检索和回溯。桌面端可以通过 进行桌面端下载,aur用户可以通过 进行安装。如果你PC要连接懒猫上的nowledge mem请在pc里面先选一个任意的方案,进入到界面然后打开随处访问选 “连接到远程 Nowledge memory”,在服务器地址分别填写懒猫应用的域名或者你转发出来的域名点击连接即可。这样相当于所有的设备都可以直连你懒猫上的nowledge memory实例。记忆备份对于懒猫平台的nowledge memory,默认集成了nowledge memory的备份管理。直接通过图标的记忆快照访问,打开登录以后(懒猫自动注入之前输入的账户和密码设置),添加你的nowledge memory实例远程的存储配置备份时间等配置完成以后,程序就可以自动进行备份后续可以通过本程序进行记忆的恢复,也可以通过nowledge memory自带的恢复进行恢复数据。域名转发为什么要域名转发使用域名转发的目的的为了在不需要懒猫客户端、cli安装的情况下访问到自己的记忆内容,把记忆更新到懒猫的nowlege mem实例,这样适用场景更加广泛。用到的软件有通过cfui可以方便地进行域名转发,虽然nowledge mem内置的cloudflared,但是仅仅添加一个cf tunnel是不够的,所以我这里选择了cfui来做配置,好处是添加一次,后续不需要添加官方的局域网转发工具局域网转发找到nowlegde mem应用,监听懒猫虚拟网卡即可CFUI转发cfui需要配置两个东西1、tunnel token2、api token按软件界面的指引获取设置即可功能选项记得打开 远程隧道管理配置好以后,就可以在远程隧道管理添加相关的域名映射加好以后,你就可以通过你的域名访问nowledge memory实例了。



rclone 可以连接非常多类型的在线网盘,如:google、onedrive、dropbox等都是可以的。本次主要配置的是google drive 和 onedrive注意:google photo 只能读取不能修改里面的内容。(无法双向同步)修改默认语言添加相关网盘信息本教程只涉及到相关网盘的挂载不会涉及到网络配置,如果网络问题导致无法访问相关网盘,请到VIP群咨询相关问题。Google Driveps: 1处可以自己定义挂载名称。(不能使用中文)直接点击创建,挂载和同步功能后面教程会介绍。复制这个链接到自己电脑浏览器去验证。登录成功,并且给了权限之后会有一个127.0.0.1的回调地址,后面的第一个参数是status。复制这个回调地址,粘贴到应用中。在首页可以看到刚才挂载的信息并且进去之后刷新可以看到网盘的容量情况就表示挂载成功了。One Drive可以自己定义挂载名称。(不能使用中文)直接点击创建,挂载和同步功能后面教程会介绍。复制这个链接到自己电脑浏览器去验证。登录成功,并且给了权限之后会有一个localhost的回调地址,后面的第一个参数是code。复制这个回调地址,粘贴到应用中。这里选择个人或者商业账号。这里一定要选择 One Drive(Personal)不然会挂载失败看到这个页面表示挂载成功了,点击继续。切换到 One Drive ,看到报错没关系。刷新一下。出现容量就表示成功了。挂载相关网盘到微服网盘中1: 选择google网盘中的文件夹2: 选择懒猫网盘的文件夹。图片中的配置是:将google网盘中的 lazycat 挂载到网盘中的 rclone测试/google- 这个文件夹中。注意:第二步中可以直接选择懒猫网盘目录。微服文件夹选择一个空的文件夹。点击进行挂载提示挂载成功之后去网盘里面验证。能在挂载的路径中看到相关文件比较挂载成功。设置懒猫网盘和相关网盘双向同步注意:目前OneDrive双向同步的自动触发,触发源只能是懒猫网盘这边。(懒猫网盘中的文件变化了会自动同步到OneDrive中, OneDrive中文件变化无法自动同步到懒猫网盘中)1.应用启动之后启动开启双向同步功能2.双向同步开启一个定时任务。(指定什么时候同步)3.实时监控双向同步。本地有文件变化有自动同步。1.选择网盘中需要同步的文件夹。2.选择懒猫网盘中的文件夹。图片中的配置是:将One Drive网盘中的 lazycat-test 和网盘中的 rclone测试/onedrive- 这个文件夹进行双向绑定。点击开始同步之后就会同步两个文件夹的内容。



mmmmmm
LightOS本文用于介绍 LightOS 的主要能力、适用场景、安装方式和核心功能说明。文中的界面、版本和镜像列表可能会随应用更新而变化,请以实际界面显示为准。LightOS 是懒猫微服自研的一套轻量化容器编排平台,和 LPK 深度集成,提供 WebShell、远程桌面、GUI 应用接入本地等能力。它适合拿来做远程开发环境、轻量桌面系统、局域网服务节点,以及接显示器直接使用的桌面主机。LightOS 是什么如果把 LightOS 当成一个“可快速创建的系统容器”,会更容易理解它的定位。你可以在 LightOS 里:创建一套独立的 Linux 系统环境使用 WebShell 在浏览器里直接操作终端配置 XRDP,通过 RDP 远程访问桌面挂载懒猫网盘,在系统里直接访问数据使用快照快速回退系统状态通过 HDMI 把某个容器当作桌面主机使用它更像是“带管理界面的 Linux 系统容器”,而不是传统意义上的虚拟机。适合哪些场景LightOS 常见的使用方式主要有三类:远程桌面主机:适合需要从 Windows、macOS、Linux 远程接入桌面的用户开发与运维环境:适合需要长期保留终端会话、安装开发工具、跑脚本和调试服务的用户桌面主机:适合通过 HDMI 接显示器、键盘和鼠标,直接把微服当作一台轻量 Linux 电脑来使用如果你是第一次接触,建议优先按“远程桌面”或“WebShell + 开发环境”这两个场景来理解和配置。安装入口应用商店地址:在商店中下载并打开 LightOS 后,需要创建一个系统实例。创建流程分为三步:基础页面设置网络界面设置身份页面设置系统安装按照本文操作一步步执行,即可安装成功。1. 创建系统打开 LightOS,新建一个系统实例。2. 基础页面系统镜像:镜像仓库:基础软件包:桌面环境选 开发者工具: 安装 工具包Node 与 NPM:前端构建工具常用 CLI 工具:安装 、、、、、、 等工具codex cli: 终端代码开发工具claude cli: 终端代码开发工具国内源:选择 USTC选完后点击下一步。3. 网络页面网络模式:选择 SSH:保持开启挂载 :选择开启,挂载后可以获取懒猫网盘的数据。:选择开启选完后点击下一步。4. 身份页面操作系统名称:debian,自定义即可用户名:一般有默认值,自定义即可 ⚠️不要使用纯数字,会出错⚠️密码:设置一个登录系统的密码语言:建议选择中文(简体)设置完成后点击创建。5. 等待构建完成构建完成后,界面会显示安装完成提示。点击知道了返回主页面。如果不需要安装远程桌面,可以跳过下面的远程桌面安装远程桌面 (如果不需要可以不安装)未安装远程桌面的容器显示是灰色的图标安装远程桌面按照下面的流程进行操作进入设置安装 Selkies开启远程桌面打开远程桌面提升清晰度打开了远程桌面,感觉清晰度不是很好,可以设置画面的质量。质量越高对网络的要求也高。大家可以根据实际需求来设置。文件上传下载这里下载,打开后看到的是桌面的文件。要把下载的文件放到桌面。剪切板(可以粘贴图片)粘贴图片需要开启剪贴板的图形支持功能其他使用场景把它当作 HDMI 桌面主机使用 HDMI 线连接微服和显示器,再配合键盘和鼠标,即可把 LightOS 当成一台桌面主机使用。推荐:桌面环境优先选 KDE自动启动按需开启如果有多个桌面容器,注意它们会竞争 HDMI 接口懒猫智慧屏也会占用同一个 HDMI 接口如果插上显示器后看到的不是预期桌面,通常要先检查是不是其他容器抢占了 HDMI。如果不打算当作主机使用,可以关闭 DHMI 对应的服务,在脚本里面关闭手动关闭命令: 相关设置参考这部分放在文章后面,供需要时查阅,不打断前面的安装和远程桌面主流程。基础页面设置说明系统镜像怎么选Arch Linux:滚动更新,适合熟悉 Arch 的用户Debian Bookworm:Debian 12Debian Bullseye:Debian 11Debian Stable:Debian 13 当前稳定版,适合大多数用户Debian Testing:测试版,不建议新手使用自定义:适合有明确需求的用户,自行指定 OCI 镜像推荐建议:新手优先选 Debian Stable需要稳定远程桌面环境,优先选 Debian 系镜像只有在你清楚镜像来源、软件包管理方式和系统初始化方式时,再考虑自定义镜像镜像仓库怎么选:懒猫微服官方源,推荐:镜像加速源:Docker 官方源自定义:使用你自己的镜像仓库基础软件包怎么选开发者基础工具:基础开发环境Golang:Go 开发环境Node 与 NPM:前端和部分 AI 工具依赖,推荐常用 CLI 工具:常用命令行工具集,推荐hclient-cli:在系统中使用微服客户端yay:仅 Arch Linux 相关Codex CLI:可选,按需安装Claude CLI:可选,按需安装KDE / XFCE:桌面环境二选一桌面环境推荐:远程桌面优先选 XFCEHDMI 桌面主机优先选 KDE国内源怎么选NPM:选择了 Node 与 NPM 时建议开启Golang:选择了 Golang 时建议开启系统包源:USTC 或 TUNA 二选一即可,保持默认也可以网络页面设置说明网络模式说明:默认最稳妥,外部访问内部端口时需要配合端口转发:与微服共享网络,能力更强,但操作不当可能影响主机网络:独立 IP、独立 MAC,但通常不能直接访问主机上的其他服务:独立 IP、复用主机 MAC,部分路由器不支持SSH建议保持默认开启端口一般保持默认即可如果需要修改,请确认界面中显示该端口可用挂载设备:桌面环境通常建议添加允许磁盘设备:仅在需要操作外接 U 盘或移动硬盘时开启挂载 :把懒猫网盘挂到容器中,推荐只读:勾选后只能读取,不能写入挂载内容主页面功能说明启动 / 停止:控制系统运行状态命令行界面:打开 WebShell设置界面:修改系统配置菜单:克隆、删除等功能SSH 复制:快速复制 SSH 命令自动启动:控制该实例是否随微服启动WebShell 说明WebShell 适合远程执行命令、手机和电脑协同操作,以及保留长期终端会话。注意事项:浏览器环境下,部分快捷键可能和浏览器自身冲突类似 这类操作可能直接关闭页面关闭浏览器窗口后,终端会话一般仍然保留,再次进入可以继续使用终端支持多标签和使用右键分屏操作。手机与电脑可以共享同一个终端状态:手机电脑如果你有多个容器,也可以在右上角切换当前连接的容器或返回主页,另外可以在设置中修改终端的选项终端设置主题设置手机快捷键设置PC快捷键设置发布服务可以将本地服务转发到微服里直接生成应用。先进入设置进入服务转发设置部署服务在应用里面搜索创建的服务打开应用如果出现下面的图片说明在容器里面没有启动对应的服务SSHSSH 适合从本地终端直接连接 LightOS 容器,也适合配合 IDE 和脚本化运维使用。主页面上的复制按钮可以直接生成连接命令。常见问题1. 为什么我可以创建系统,但远程桌面连不上优先排查:XRDP 是否已安装并启动容器网络模式是否适合远程接入3389 端口是否被占用连接地址是否填写正确2. 为什么显示器上不是我想要的桌面通常是因为多个桌面容器或智慧屏在竞争 HDMI 接口。3. WebShell 和 SSH 有什么区别WebShell:打开即用,适合随时进入SSH:更适合本地终端、IDE 和脚本化使用4. 快照适合什么时候用建议在安装桌面环境、批量装软件、改系统配置之前先手动创建一个快照。



hi, this is tanc.
定位:给已经安装或准备安装 Cumora 的个人用户使用。一、开始前:Cumora 与懒猫微服各自负责什么Cumora:网页协作界面、对话、Agent、任务与持久化数据。LightOS 设备:运行本机 Codex/Claude 等 CLI 的 Computer daemon。核心原则:浏览器走懒猫 SSO;盒内 daemon 优先走 内网地址,不把本地 Agent 的工作目录或登录态交给服务器。适用范围:当前(20260824)应用版本号为 (对齐社区版本 ,支持了中文、支持 Grok、Cursor)本应用的项目代码也放到了 上,有兴趣可以提 PR 共同维护。二、安装并打开 Cumora在懒猫应用商店安装 Cumora,首次打开通过懒猫 SSO 自动进入。打开之后中会自动创建工作空间、进入 Computer 管理页。点击“添加 Computer”,复制一次性的配对令牌。 后面的 url 参数是可以修改的,根据你 computer 的所处环境,比如懒猫内的 LightOS 连接,直接复制执行就行。懒猫外的设备,可以通过转发工具转发端口,然后通过懒猫 IP 进行配置。执行的 Harness 目前新版本支持了 Grok Build 和 Cursor,本人目前只自测了 Claude Code 和 Codex。三、最重要的地址选择:浏览器地址与 daemon 地址不同应用访问地址(或者你懒猫里面打开可以不用管这个):使用懒猫为应用分配的 HTTPS 域名。四、在 LightOS 实例中配对先确认本机已安装并登录要使用的 CLI,例如 Codex,LightOS 实例中执行:说明每个参数::页面刚生成的一次性令牌;正文标记为必须替换。:自托管 Cumora 的内网服务地址;遗漏后会连到默认服务,属于最常见错误。:按实际本地引擎替换;可补充 Claude 等示例。配对成功后安装为用户常驻服务:日常检查和重启:正式成文前会按当前 CLI 实际版本再复核 与服务名,避免命令漂移。五、完成后的最小验收Computer 页面显示设备在线。为 Agent 指定该 Computer,发送一条简单消息。确认本机 CLI 被唤醒并且网页收到回复。重启用户服务后确认自动上线;再验证历史对话仍在。六、其他设备连接其他设备(非懒猫设备)如果需要连接 Cumora 服务端,最简单的一个方式是通过端口转发工具,暴露出来接口,确保你要配对的 computer 能够访问即可。如下图所示,把 cumora 的 5181 端口转发出来即可。比如我局域网其他机器配对的时候,命令如下参考我的:连上之后,默认会创建几个 Agent,可以愉快玩耍了。最后有个点需要注意一下,管理 Computer 的操作页面需要在 PC 端(或者大屏设备)上操作,左上角才能看到自己的头像并点击进入(移动端我也没有找到入口。。)



博客图片修整中,看不了可以先搜索公众号“忘机山人”看。
之前写过一篇《懒猫微服开发篇(零):上架应用需要哪些知识》,里面列了 NPM、Linux、Docker、HTTP,后面做登录还会遇到 OIDC。那个时候的结论是:如果你只是移植现成的开源软件,开发能力可以弱一点,但是 Docker Compose 总得会一点吧,端口、环境变量、目录映射这些东西也得看得懂。这话没有错,就是普通用户看完可能已经被劝退了。最近官方制作了一个项目:,也是,我之前的答案可能要改一改了。不会写代码,也可以给懒猫贡献软件。当然,这里的不会代码,不是说对着 AI 喊一句“给我写个软件”,然后喝杯茶回来就能上架。更现实的玩法是:找一个已经能运行的开源项目,让 AI 帮你看 Docker 配置、写懒猫的 LPK 文件、执行打包命令,再根据日志一点点修改。说白了,AI 帮你干开发和运维的活,你负责提需求和验收。Lazycat Skills 是干什么的?现在的 AI 会写 Python、JavaScript,也会写 Docker Compose,但是它不一定知道懒猫微服最新的应用规范。我以前让 AI 写配置的时候也遇到过类似问题。它看起来什么都会,YAML 写得整整齐齐,字段也挺像那么回事,结果一打包就报错。继续问,它再换一种写法,最后可能把新旧版本的配置混到了一起。Lazycat Skills 相当于给 AI 准备了一套懒猫开发手册。仓库里和普通应用移植关系比较大的有::负责判断这是打包、路由、认证还是上架问题。:把 Docker 镜像、Docker Compose 或源码转换成 LPK。:处理安装应用时需要用户填写的参数。:处理路径转发、二级域名和 TCP/UDP 端口。:处理 OIDC 登录和用户身份。AI 遇到打包问题就去看打包文档,遇到 OIDC 再去看认证文档,不用一次把所有资料都塞进上下文。这个设计和我们查手册也差不多,用到什么再看什么。安装方式也很简单,在项目目录执行:或者你干脆把GitHub链接扔给AI,然后就可以对它说:这个 Skill 不是替你开发一个软件,而是让 AI 更懂懒猫。以前的教程还能看吗?可以看,但是需要注意版本。我之前写懒猫全栈上架指南时,主要讲的是 、 和应用图标。现在仓库的 和 分支已经按照 LPK V2 编写,应用元数据和运行配置被拆开了::应用名称、版本、作者、多语言和权限。:容器、路由、环境变量和数据目录。:正式版本如何构建和打包。:开发调试时的覆盖配置,可选。以前文章里的 Docker、路由和数据持久化思路没有过时,但是具体字段应该以新版 Skill 和文档为准。有意思的是,这正是 AI Skill 适合做的事情。人很容易搜到一篇旧文章照着抄,AI 也一样。现在直接把当前规范装进项目里,至少不会上来就拿旧版 Manifest 硬套。最适合普通人的方式:搬一个 Docker 应用第一次做应用,不建议让 AI 从零写网盘、相册或者密码管理器。这类软件看起来很常见,实际上涉及账号、权限、数据库、文件上传和数据迁移,后面全是坑。最简单的方式是找一个自己已经使用过的开源项目,而且最好已经提供 Docker 镜像或者 。比如项目文档里有这样的内容:以前我们需要自己分析: 是应用端口。 是环境变量。 需要持久化。 是需要复制到懒猫镜像仓库的镜像。现在这些工作可以先交给 AI。它会读取 Compose,再生成懒猫对应的服务、路由、权限和存储配置。LPK 的 Manifest 和 Docker Compose 本来就有不少相似之处,所以 Docker 应用移植是最容易成功的路线。第一次选项目,我建议满足下面几个条件:已经有公开可用的 Docker 镜像。最好只有一个容器,最多再带一个数据库。有 Web 界面,打开浏览器就能使用。文档里写清楚了端口、环境变量和数据目录。不依赖 GPU、USB、宿主机网络和特殊硬件。有明确的开源许可证,允许重新分发。确实有人会用,而不是单纯为了上架凑数量。懒猫商店需要的还是应用场景。数据库、开发库和只有程序员才会使用的中间件,原则上并不适合当作第一个上架项目。纯前端项目更简单如果连 Docker 都觉得麻烦,还可以先找一个纯前端项目。我以前移植过纸砚双拼,这种 Vue、React 写的工具,构建完成后基本就是 HTML、JavaScript、CSS 和图片。懒猫可以直接托管静态文件,不需要数据库,也没有数据持久化的问题。计算器、文本处理、格式转换、小游戏、学习工具,这些都很适合拿来练手。大致流程就是:AI 读取源码,确认使用什么命令构建。执行 和 。找到生成的 或 目录。写 LPK V2 配置,把根路由指向静态文件。打包后安装到自己的微服测试。这类项目甚至不一定需要自己做 Docker 镜像。不会代码,也可以做原创应用再往前一步,就可以让 AI 根据自己的需求写一个小工具。我之前用 Amazon Q 写过一个 Docker 客户端 Containly,后来也上架了懒猫商店。它的起点很简单:群晖里的容器多了以后,我记不住每个服务的端口,每次登录 Container Manager 又比较麻烦,所以想要一个简洁的面板,能看容器状态、URL、日志,也能做启动和停止。最早用 GPT 写,项目大了之后,它经常忘记之前改过什么。后来换成可以直接操作本地目录的 Amazon Q,体验就好很多。现在 Claude、Codex 这一类工具也能直接读取文件、修改工程、运行命令和查看报错。所以不会写代码并不代表做不了软件。很多时候,能把自己的问题说清楚,比上来就讨论用 React 还是 Vue 更重要。比如可以直接告诉 AI:不要第一次就让 AI 做十几个功能。先把最小版本跑起来,再一点点加。这个和正常开发没有区别,只不过以前是程序员敲代码,现在是你和 AI 结对。实际怎么开始?首先还是安装懒猫的命令行工具:然后在准备移植的项目目录安装 Skill:我建议第一轮不要让 AI 直接修改文件,先让它做检查:代码看不懂不要紧,命令看不懂也可以继续问。最重要的是报错不要只截最后一行,更不要只告诉 AI“不能用”。把完整日志交给它,说明自己点了什么、原本想看到什么、最后出现了什么,排查会快很多。打包和安装使用:能够生成 LPK,只能说明配置通过了打包检查,还不能说明应用真的能用。最容易踩的几个坑第一个是数据持久化。很多应用第一次安装可以正常打开,写数据也没问题,结果重启或者升级之后全部没了。因为数据写在容器内部,没有映射到 或 LPK V2 对应的文稿目录。所以测试的时候不要只看首页能不能打开。先创建几条数据,重启应用,再升级一个版本看看数据还在不在。第二个是镜像。自己电脑上能拉取,不代表商店审核时也能拉取。正式上架前,需要把公网可访问的镜像复制到懒猫官方仓库:复制完成后,再把返回的 地址写进 。第三个是架构。有些镜像只有 amd64,有些只有 arm64。在 M 芯片电脑上构建成功,也不代表放到另一种架构的微服上就能运行。这个问题我以前移植镜像时也踩过,所以第一轮就让 AI 检查镜像清单,省得最后再返工。第四个是默认密码和权限。示例里的密码只能拿来测试,不能原样上架。应用需要联网、访问局域网、读取文稿或者使用 GPU,也应该在 中声明对应权限,而不是一股脑把权限全部打开。第五个是 AI 一本正经地写错。Skill 能减少错误,但不能保证项目一定成功。第三方镜像的启动方式、文件权限、健康检查、Host 校验都可能有自己的脾气。遇到问题继续看日志,实在不行就在社区里问,不要和一个错误配置死磕。上架之前还要做什么?正式上架需要注册懒猫开发者,准备应用名称、介绍、图标、截图、使用须知和多语言信息。然后构建并提交:商店审核不是只看能不能打开,还会看应用有没有真实场景、依赖是否能下载、启动是否正常,以及重启和升级以后会不会丢数据。我觉得普通用户反而很适合做这一部分。程序员可能觉得服务返回 HTTP 200 就算完成了,普通用户会在意按钮好不好找、手机上能不能点、第一次打开知不知道密码在哪里、报错能不能看懂。软件并不是代码写完就结束了。能安装、能使用、能升级、数据不丢,才算一个完整的软件。当然lzc-cli 也提供了给 AI 查询Docker 的能力:贡献的不只有代码如果实在不想碰终端,也一样可以给懒猫生态做贡献:找到值得移植的开源项目。帮开发者测试安装和升级。补充官方WIKI提PR补充使用教程。把问题整理成可以复现的步骤。帮忙维护应用版本和用户反馈。懒猫商店里的应用越来越多,靠的不只是会写代码的人,也需要愿意折腾、愿意测试、愿意把过程记录下来的人。就像我之前写懒猫教程一样,很多内容并不是坐在那里背文档背出来的,而是自己遇到问题,问技术、看日志、试几遍,最后把操作记录下来。下一位遇到相同问题的人,就不用再从头踩坑了。总结所以,不会代码,可以给懒猫贡献软件吗?可以。最简单的是移植一个已经提供 Docker 镜像的开源应用,再简单一点可以从纯前端工具开始。有了本地 AI 编程工具和 Lazycat Skills,写 LPK 配置、执行命令、分析日志这些事情,已经不一定需要自己从头学会。但是不会代码不等于什么都不用管。你至少要知道自己为什么要做这个应用,打开以后应该是什么样子,哪些数据不能丢,以及出了问题怎么完整地告诉 AI。我一直觉得技术不应该只是程序员的专属技能。普通用户图方便,专业用户图折腾,中间缺的无非是一套好用的工具和一份能看懂的文档。现在工具已经有了,可以先找一个自己真正想用的软件,把项目链接交给 AI,然后告诉它:先别急着写代码,帮我看看这个软件能不能移植到懒猫微服。这就算迈出第一步了。


life goes on and on and on
RetroMail OAuth 部署参数配置说明RetroMail 是一个复古风格的邮件客户端,支持 Gmail, Hotmail, Outlook, QQ, IMAP/SMTP, Microsoft Exchange Server 多个 Provider.此外,本客户端充分利用懒猫客户端的通知功能,可以做到不输各官方邮件客户端的收信速度。本教程专为懒猫微服用户编写,手把手教你创建 Gmail 和 Microsoft 的 OAuth 凭据,填入懒猫安装参数,让 RetroMail 能够连接你的邮箱。逻辑都是一样的,申请个人使用的邮箱API, 申请密钥,然后配置回调以支持懒猫无缝服务。预计耗时:15-20 分钟。概览下面两个是独立的,按需选择(也可以都配):要用 Gmail → 去 Google 创建 OAuth 凭据要用 Outlook/Hotmail → 去 Microsoft 创建 OAuth 凭据拿到凭据后回到懒猫填入参数、连接邮箱。📌 先记下你的回调地址(后面在 Google 和 Microsoft 控制台都要用到):用途回调地址GmailMicrosoft⚠️ 地址必须完全一致,包括 、域名、路径、大小写和结尾斜杠。配置 Gmail(要用 Gmail 才做)1.1 创建项目并启用 Gmail API打开 登录你的 Google 账号点击顶部项目选择器 → 新建项目项目名称填写 或者任意你想要的名称,点击 创建等待创建完成,确认顶部已选中 项目左侧菜单 → APIs & Services / API和服务 → Library / 库搜索 ,点击进入后点击 Enable / 启用1.2 配置 OAuth 同意屏幕左侧菜单 → APIs & Services / API和服务 → OAuth consent screen / OAuth权限请求页面点击 Get started / 开始 App Information(应用名称) 看着填就行,注意 Audience/受众群体 需要选择 External/外部,剩下的可以看着填Branding(品牌塑造)页面填写都是默认,注意 Authorized domains/已获授权的网域 需要配置一下:字段填写内容App nameUser support email选择你的 Google 邮箱Developer contact email同上点击 Save / 保存Audience / 目标对象 这里有两种选择如果是 Testing/测试版 模式,需要在下面的 Test users / 测试用户 中加入你想要登陆的 gmail 邮箱,且这样的话,每七天会要求你重新授权如果你选择 publish app, 此时不输入邮箱,也不需要每七天重新授权,但是登陆时会有安全提示(可以忽略),笔者推荐使用这种模式Data Access(数据访问)页面 —— 这是关键步骤:点击 Add or Remove Scopes / 添加或移除范围搜索框输入 勾选出现的 点击 Update/更新 → Save and Continue 注意最下面还要 save 一下注意下面这里还要保存一次1.3 创建 OAuth Client左侧菜单 → APIs & Services/API和服务 → Credentials/凭证点击 + Create Credentials / 创建凭证 → OAuth client ID / OAuth客户端ID填写:字段填写内容Application type(应用类型)Web application / Web应用Name(名称)Authorized redirect URIs (已获授权的重定向 URI)点击 + Add URI 添加回调地址。如有多余的 占位符,可以删除。点击 Create/创建弹出窗口显示 Client ID/客户端 ID 和 Client Secret/客户端密钥:立即复制保存这两个值关闭弹窗后就看不到 Client Secret 了⚠️ 把这两个值粘贴到记事本或密码管理器中。不要截图分享。✅ Gmail OAuth 凭据完成! 记好你的:Google Client IDGoogle Client Secret配置 Microsoft(要用 Outlook/Hotmail 才做)2.1 注册应用打开 登录你的 Microsoft 账号不需要 Azure 订阅,免费注册的 Microsoft 账号即可操作。左侧菜单 → Identity → Applications → App registrations点击 + New registration填写:字段填写内容NameSupported account typesAccounts in any organizational directory and personal Microsoft accountsRedirect URI留空,稍后单独配置如果你的界面是中文的,参考如下截图点击 Register注册完成后,复制 Application (client) ID(中文是應用程式 (用戶端) 識別碼) 备用⚠️ 复制的是 **Application (client) ID **,不是 Object ID。2.2 配置 Web 回调地址左侧菜单 → Manage → Authentication点击 + Add a platform → Web在 Redirect URIs 中输入你的 Microsoft 回调地址(见上方概览)点击 Configure不需要勾选页面下方的 Implicit grant 或 Hybrid flow 开关。2.3 创建 Client Secret左侧菜单 → Manage → Certificates & secrets在 Client secrets 标签页,点击 + New client secret📸 截图:新建 client secret 按钮填写描述 ,有效期选择 12 months点击 Add立即复制 Value 列显示的值⚠️ 离开此页面后再也看不到这个值。复制的是 Value / 值(类似 ),不是 Secret ID / 祕密識別碼。2.4 添加 API 权限左侧菜单 → Manage → API permissions点击 + Add a permission → Microsoft Graph → Delegated permissions/委派的權限📸 截图:选择 Delegated permissions在搜索框中依次搜索并勾选以下四项:搜索一项 → 勾选 → 搜下一项,不要一次性全打进去。点击 Add permissions 确认最终会有这些权限✅ Microsoft OAuth 凭据完成! 记好你的:Microsoft Application (client) IDMicrosoft Client Secret Value填入懒猫并验证3.1 填入安装参数回到懒猫微服,在 RetroMail 的安装或重新配置页面找到以下参数:参数填入内容Gmail OAuth Client ID从 Google 复制的 Client IDGmail OAuth Client Secret从 Google 复制的 Client SecretMicrosoft OAuth Client ID从 Microsoft 复制的 Application (client) IDMicrosoft OAuth Client Secret从 Microsoft 复制的 Client Secret ValueMicrosoft Tenant填入 两项 Gmail 参数必须同时填写才会启用 Gmail 连接;三项 Microsoft 参数同理。如果你只需要其中一种邮箱,另一个留空即可。Microsoft Tenant 怎么填?你想连接什么账号Tenant 填什么个人 Outlook/Hotmail/Live组织账号 + 个人账号仅限某个组织该组织的 Tenant ID 或域名完成后点击保存,等待 RetroMail 重启。3.2 连接邮箱打开 RetroMail,进入 设置 → 邮箱账户点击 连接 Gmail 或 连接 Microsoft浏览器会跳转到 Google 或 Microsoft 的官方登录页 —— 选择你要连接的邮箱账号在权限确认页点击 允许 / Accept注意,如果是 Google 配置在 production 模式,登陆后会提示"Google hasn’t verified this app" 此时需要选择无视风险继续访问 :)如果是微软邮箱,应该只会提示应用未验证,道理都是一样的自动回到 RetroMail,系统开始建立同步基线进入 设置 → 运行诊断,确认账户状态和同步进度连接多个邮箱:重复 3.2 步即可 —— 在设置页再次点击连接,选择不同账号授权。不需要创建新的 OAuth 凭据。遇到问题?错误常见原因解决办法回调地址不完全一致逐字核对 、域名、路径、斜杠Gmail 7 天后要重新登录项目处于 Testing 状态在 Google Auth platform 发布为 Production微软提示需管理员批准组织租户策略限制联系管理员批准那四项权限Client Secret 无效复制了 Secret ID 而非 Value回到控制台创建新 Secret,重新复制 Value


