🐱

DeskPet 智能桌宠

手机与电脑共用同一份记忆。无论从哪里开口,都是同一个一直陪着你的伙伴。

Windows 完整包 · 171.9 MB · Android 正式 APK · 5.1 MB · 普通用户本地执行,VIP 可云端常驻
Windows v2026-10-05.1655 与 Android v1.9.1 共用账号、连续主上下文、记忆与云端备份。管理员发放一次性 VIP 激活码,登录后在设置中兑换并开启云端常驻;云端提供提醒、任务、通知、网页检索与阅读、授权只读 API 和文档生成下载。关闭设备后云端仍可处理任务,离线通知在上线后补收。开启云端时模型凭据会加密保存到服务器供任务执行。实验网页桌宠已下线。保留写实白毛蓝眼幼猫、抚摸互动及 Markdown / LaTeX 渲染;请两端一起升级。

强大的功能,可爱的外表

一只真正懂你的桌面伙伴,所有功能开箱即用

🧠

DeepSeek AI 驱动对话

基于 DeepSeek 大模型的自然对话,聪明又贴心

🗣️

语音交流

本地语音识别 + 云端语音播报,开口就能聊

📅

定时任务 & 主动提醒

安排日程提醒,它也会主动关心你的日常

🧸

多皮肤换装

支持 Live2D 与 Spritesheet 皮肤,随意切换风格

🔁

PC / Android 同一人格

记忆与加密 API 配置实时同步,换设备也能接着聊

🔒

隐私安全

API Key 端到端加密,服务器只能保存密文

三步开始使用

从下载到对话,只需几分钟

1

下载并解压

下载安装包后解压到任意目录(建议英文路径,如 C:\DeskPet)。

2

启动桌宠

双击 DeskPet.exe 即可运行,桌宠会出现在你的桌面上。

3

配置 API Key

右键托盘图标 → 设置,填入你的 DeepSeek API Key 后即可对话。

4

保持最新

内置自动更新:设置 → 软件更新 → 检查更新。遇到问题可在设置中一键上报日志。

系统要求:Windows 10 1803+(64 位),2 GB 内存;或 Android 8.0+。安卓悬浮桌宠需要手动授予“显示在其他应用上层”权限。
本地模式由设备发出模型请求;VIP 云端模式由服务器执行,模型凭据加密保存。账号同步中的 API 配置仍由账号密码派生密钥加密;Windows 与 Android 设置中都可提出建议或上报问题。

更新日志

每一次更新,小猫都在成长

2026-10-05 16:55云端电脑子任务权限
Windows 与安卓增加逐条审批 / 默认开放设置,按账号同步。默认逐条审批;默认开放仅影响新任务,已有任务状态保留。Windows v2026-10-05.1655,Android v1.9.1。
2026-10-05 16:35VIP 云端常驻与双端连续上下文
一次性激活码由管理员生成,VIP 绑定账号。Windows 与安卓共用主上下文,云端执行提供任务、提醒、网页检索阅读和文档下载;电脑子任务需授权。完善执行权切换、任务取消恢复和文件哈希校验,下线实验网页桌宠。Windows v2026-10-05.1635,Android v1.9.0。
2026-10-04上线同步与本地增量上传
Windows 启动、唤醒和恢复连接,Android 启动、回到前台和恢复网络时同步共享记忆。使用期间上传本地变化,其他设备下次上线时接续。JSONL 上传新增记录,改写文件上传变化片段;基线过期自动回退,保留离线合并、冲突副本和云端备份。沿用两端 UI 风格与写实白毛蓝眼幼猫。Windows v2026-10-04.1200,Android v1.8.0。
2026-10-04Windows 与 Android 账号统一同步及云端备份
两端共用账号共享数据和一条备份历史,自动同步与云端加密快照;支持共享备份正文预览和跨端恢复,保留恢复前副本。官网后台增加当前共享内容及备份历史正文查看,保留现有 UI 风格。Windows v2026-10-04.1015,Android v1.7.0。
2026-10-03Android v1.6.1 写实小白猫正式版
默认形象恢复为 Windows 同系列的白毛蓝眼幼猫,直接复用原始透明素材。抚摸额头时,小猫会看向手指、眯眼、轻轻侧头及摆尾;松手自然恢复。首页与悬浮窗均可互动,沿用原正式证书,可直接覆盖升级。
2026-10-03Android v1.6.0 抚摸小黑正式版
新增本地实时抚摸:轻轻滑动小猫额头,眼睛、头部、耳朵和尾巴分别响应;连续轻抚逐渐眯眼、侧头并出现爱心,松手自然恢复。首页可直接摸猫,点击卡片放大;悬浮窗的小猫可抚摸,上方气泡轻点聊天、拖动移动。支持无障碍双击摸摸,不需要联网或登录。沿用原正式证书,可覆盖升级。
2026-10-03Android v1.5.1 Markdown 与 LaTeX 正式版
聊天与历史消息支持标题、列表、代码块、基础表格和本地 LaTeX 公式;支持行内与块公式、公式解析失败原文回退。新版采用原正式证书签名,可直接覆盖升级现有正式版;包含加密备份恢复、记忆管理和任务取消,独立测试版仍可与正式版并存。
2026-10-02 20:16Android 正式版 v1.4.0
发布正式签名 Android v1.4.0,加入连续语音通话、流式逐句播报、可靠的跨设备同步、电脑任务交接和任务结果接收;独立测试版仍可与正式版并存。
2026-10-03 01:10数据恢复、升级保护与任务取消
Windows 用户数据迁至独立目录,按账号隔离;双端加入加密历史备份、恢复预览与删除找回,显示同步与备份日期。手机可取消电脑任务,记忆可纠正或删除,诊断不包含聊天、记忆和密钥。Windows 5 项原生检查、Agent 131 项检查和 Android 27 项单元测试通过;Android v1.5.0 当前提供独立测试包。云端单份原始备份上限 6 MiB,历史总额 128 MiB,最多保留 20 份历史备份;请保管备份密码。
2026-10-02 19:20Windows Agent 可靠同步与电脑任务
同步云端最新客户端代码,提升跨设备任务交接、可靠同步与任务进度恢复;支持与 Android v1.4.0 测试版的电脑任务协作。— Windows v2026-10-02.1920。
2026-10-02 19:07Agent 云端可靠同步与 Android 1.4.0 测试版
云端增加记录合并、冲突保留、任务确认与文件交付;Android 增加逐句语音、可选语义检索和备用转写。测试包独立安装,Windows 新客户端及双端实机联调仍待完成。
2026-10-02 14:22Windows 语音通话与克隆音色修复
通话默认恢复阿里云百炼并找回原克隆音色;语音播报只读取 JSON 正文,不再读出识别文本、情绪或内部字段。修复插话、挂断重拨与录音恢复。— Windows v2026-10-02.1422。
2026-08-29 20:35双端正式发布包重建
从远端最新代码重新编译并通过发布校验,更新 Windows 完整安装包与自动更新包;Android 正式签名 APK v1.2.1 同步重建并完成签名、对齐和版本校验。
2026-08-26 21:11Windows 发布包更新
同步最新桌面端代码并通过发布校验,更新 Windows 完整安装包与自动更新包。— Windows v2026-08-26.2111。
2026-08-25 22:20API 配置端到端同步与 Android 语音修复
Windows 与 Android 使用 PBKDF2-HMAC-SHA256 和 AES-256-GCM 同步模型 API 配置,服务端只保存密文;修复 Android 11+ TTS 引擎发现与初始化丢播,增加中文回退、错误反馈和语音试听。— Windows v2026-08-25.2220;Android v1.2.1(SHA256 F4DD8E29…1CE5199D)。
2026-08-25 21:45Android:连续人格、可信记忆与双入口反馈
同步桌面版的可信来源与置信度、重要经历队列、开放事项跟进、连续人格、情绪需求决策、每日经历和组合召回;新增“提出建议”和“问题上报”,诊断仅包含版本、设备与文件大小信息,不上传 API Key 或聊天正文。— Android v1.2.0(SHA256 B8E3707C…7B274E5B)。
2026-08-25 20:35连续人格、可信记忆与行为闭环
主动搭话现在会进入小黑自己的时间线,重启后仍记得自己说过什么;长期记忆增加来源、置信度、重要性与综合召回,重要经历可靠落盘;新增计划、承诺与后续跟进,以及随真实互动缓慢成长的人格状态。— Windows v2026-08-25.2055,更新包与完整安装包同步更新。
2026-08-24 00:45Android:语音、完整记忆召回与高可读 Liquid Glass 设置页
设置页新增背景虚化、压暗遮罩和高对比玻璃面板;新增语音输入、系统 TTS、情绪与需求状态、经历整理、受限核心事实维护、完整上下文召回、本地长期记忆索引,以及记忆查看、编辑、备份、导入和恢复。— Android v1.1.0(SHA256 33668863…53328F46)。
2026-08-23 22:30Android 新增自动检查与一键更新
启动后自动检查新版本,设置页可一键下载;APK 下载完成后会核对文件大小与 SHA-256,再交给 Android 系统确认安装。— Android v1.0.1(SHA256 B5B93555…99905FDD)。
2026-08-23 20:10新增:Android Liquid Glass 桌宠与 PC 同一人格实时同步
新增 Android 原生主界面、可拖动常驻悬浮窗、开机恢复和本机直连模型;PC 与 Android 共享核心记忆和近期对话,通过轻量事件与 turn 租约避免跨端同时改写。服务器不运行模型或向量计算,只同步白名单记忆文件。— Windows v2026-08-23.1958;Android v1.0.0(SHA256 681C4D23…5A1F2BD)。
2026-08-23 11:46升级:诊断中心、系统 AEC、首次向导与记忆管理
新增发布门禁和设置页诊断中心;支持 Windows 系统 AEC、reasonix 跟随当前模型渠道、首次启动向导、多皮肤动作降级与摸头反馈;核心事实可新增、纠正、删除,最近向量回忆可逐条删除。— 发布 v2026-08-23.1146,更新包与完整安装包同步更新。
2026-08-23 09:49优化:核心记忆使用工具增量编辑
模型不再重新输出整个核心记忆文件,改为调用受限的 edit_core_memory 工具,仅提交必要的新增、替换或删除操作;不设置输出 token 上限,兼容 DeepSeek 思考模式,并继续使用结构校验和原子保存。— 发布 v2026-08-23.0949,完整安装包同步更新。
2026-08-22 23:34修复:核心记忆取消输出上限并防止残缺覆盖
移除核心记忆固定 2000 tokens 和 80 行限制;模型输出触顶或缺少固定章节时保留旧文件,保存改为临时文件校验后原子替换。— 发布 v2026-08-22.2334,完整安装包同步更新。
2026-08-22 23:03修复:中文用户名导致 Whisper 识别为空
修复中文 Windows 用户名下 `%LOCALAPPDATA%` 路径导致 Whisper CLI 无法读取模型和录音的问题:优先使用 ASCII 短路径,必要时回退到公共文档目录。— 发布 v2026-08-22.2303(更新包 116,404,781 字节,SHA256 `7CB382DC…0D3EEBBB6`),完整包同步更新。
2026-08-22 21:51新增:轻量 Whisper tiny Q8 本地语音识别
更新包和完整安装包内置约 44 MB 的 Whisper tiny Q8 量化模型及 CPU 后端 DLL;使用 deepseek-chat 等不接收音频的模型时,也可在本机离线识别中文。— 发布 v2026-08-22.2151(更新包 116,403,876 字节,SHA256 `87D5C35A…A01BE83F`),完整包 175 MB。
2026-08-22 21:33修复:语音静音误报与 ASR 路由提示
接通后短时间没有说话不再弹出麦克风故障提示;通话日志明确区分 MiMo 音频输入与本地 ASR,当前模型不支持音频且本地识别资源不可用时会给出配置建议。— 发布 v2026-08-22.2133(更新包 73,990,056 字节,SHA256 `B54790E0…4BBBD`),完整包同步更新。
2026-08-22 20:35修复:Intel 智音阵列麦克风仍无输入
多声道麦克风不再直接平均,而是逐声道解码并选择当前人声能量最高的声道,避免弱声道、参考声道或相位差稀释/抵消输入;同时增加每声道 RMS、静音包和 WASAPI 错误诊断。— 发布 v2026-08-22.2035(更新包 73,989,416 字节,SHA256 `23952288…3F808`),完整包同步更新。
2026-08-22 19:34修复:Windows 11 部分麦克风无输入
修复部分 Windows 11 音频设备使用扩展 PCM 格式时被错误解析为浮点格式,导致系统麦克风测试正常但 DeskPet 检测不到输入;同时改进设备名称与权限诊断,并补充音频格式回归测试。— 发布 v2026-08-22.1934(更新包 73,986,749 字节,SHA256 `BC71FA4B…BD06AB`),完整包同步更新。
2026-08-21 19:20修复:记忆写入完成后近实时同步 + DeepSeek Vision 默认模型
同步等待后台记忆任务完成后再上传,自动合并窗口从 30 秒缩短到 2 秒;保留 JSONL 尾部增量上传和元数据按需拉取。默认 DeepSeek 模型改为 `deepseek-v4-flash-vision-exp`,授权截图后可让桌宠使用视觉模型查看桌面。— 发布 v2026-08-21.1920(更新包 73,867,505 字节,SHA256 `3E4A6E8D…4FC`),完整包同步更新。
2026-08-20 22:20优化:云端同步降低流量与存储——元数据拉取、按需下载、JSONL 增量上传
同步先获取文件元数据,只有云端版本更新的文件才下载;`episodic.jsonl`、`experience.jsonl`、向量 JSONL 等追加型文件只上传新增尾部,核心记忆、情绪、待办等可重写文件继续使用完整快照;兼容旧版客户端与已有同步数据。— 发布 v2026-08-20.2220(更新包 73,866,802 字节,SHA256 `272D9F0C…5F2940`),完整包同步更新。
2026-08-20 21:47feat: MiMo 智能思考按需开启——普通对话更快,复杂任务自动深度思考
主 Agent 先用关闭思考的轻量路由判断任务复杂度;普通聊天、简单问答默认关闭思考,复杂推理、代码排查、方案比较等任务自动二次开启 MiMo 深度思考。路由请求不携带真实工具,避免副作用重复执行。— 发布 v2026-08-20.2147(更新包 73,865,438 字节,SHA256 `1C5ABEF1…02C717`),完整包同步更新。
2026-08-19 19:11fix: 记忆系统可靠性改造——后台写入收敛、向量一致性校验与导入保护
语音通话接入 MiMo-V2.5 多模态音频输入,自动注入核心记忆、长期召回和本次通话上下文;TTS 支持小米 MiMo VoiceClone / 阿里云百炼自由切换;设置页新增音色样本管理并优化为 Apple 风格。— 发布 v2026-08-20.1800(更新包 73,861,635 字节,SHA256 `C96AE34D…A34F9`),完整包同步更新。
修复电话挂断后的后台线程/WebView 生命周期竞态、录音缓冲数据竞争和 ASR 文本 JSON 转义;播放期间增加回声抑制门控,减少 TTS 自打断;修复中文路径下 CMake 并行构建失败。— 发布 v2026-08-19.2212。
新增可等待的记忆后台任务队列,日志写入、向量化、经历整理和核心记忆整理按顺序执行;修复向量库损坏、缺失向量和 JSONL/bin 错位时的加载风险;导入和云端同步 reload 前等待后台任务完成;向量导入必须成套提供,避免记忆数据错位。— 发布 v2026-08-19.1911(更新包 78,236,640 字节,SHA256 `EE2E5E86…29EFD2`)。
2026-08-18 21:13feat: 桌宠独立账号体系——同步账号与网站账号彻底分离,桌宠管理员专属建号
① **独立账号**:桌宠的云端同步改用**桌宠专属账号**(与 admin.efsf.net 的网站通用账号彻底分离,互不相通);② **专属管理入口**:管理员在 **admin.efsf.net → 桌宠 DeskPet → 桌宠账号 → 创建账号** 建号设密码(建号即开通云端同步),不再使用「系统 → 用户管理」的网站账号;③ **边界更安全**:桌宠账号 token 进不了网站服务,网站账号 token 也进不了桌宠同步,双向隔离;④ **对老用户无感**:本版通过软件内自动更新下发,账号由管理员重新发放一次即可。— 发布 v2026-08-18.2113(更新包 78,231,859 字节,SHA256 `14028AF6…BBE0`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-18.2113
2026-08-18 20:02feat: 云端多端同步上线 + 安全加固——管理员建号授权,桌面端登录即可把小黑带到另一台设备
① **跨设备同步**:管理员在 admin.efsf.net 为每个用户创建账号并设定密码(创建即授权),你在设置页新增的「☁️ 云端同步」输入用户名密码点「开启云端同步」,就能把小黑的核心记忆/日记/对话历史/经历/情绪/需求/定时任务/待办同步到云端,另一台设备(含未来的安卓端)登录同一账号即可互通;② **自动同步**:每次对话后自动同步(约 30 秒节流),也可手动「立即同步」;③ **隐私**:只同步记忆与状态文本,你不希望同步的内容不受影响,需要管理员主动建号才可开通;④ 本轮同步做了安全加固(拉取文件名白名单、尺寸与响应上限),并修复 auth.efsf.net 证书让同步链路对外可用。— 发布 v2026-08-18.2113(更新包 78,231,844 字节,SHA256 `D2A953ED…3CEA3B`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-18.2113
2026-08-17 19:44feat: 周期困倦打盹——2 小时一周期,困 1 小时醒 1 小时,没人理就自己趴下睡
① **它会困也会醒**:以 2 小时为一周期,前 1 小时它是"困倦"状态——这段时间如果你 2~3 分钟不碰它,它就会自己**趴下睡觉**(呼吸动画),你一**点它**(或跟它说话)它就立刻起床;后 1 小时它保持清醒活泼;② **真实生物钟**:每隔 2 小时循环一次(偶数整点起困),就像人困了会打盹一样;③ **不影响记忆**:这次的睡觉只是动画行为,做梦整理记忆的机制完全不变(梦里还是会消化一天的对话)。— 发布 v2026-08-17.1944(更新包 78,205,068 字节,SHA256 `C098FC81…51E81`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-17.1944
2026-08-17 17:55feat: 记忆备份与迁移 v2——11 个记忆文件一键备份 / 整体导入 / 单文件拖拽粘贴
① **一键备份**:把小黑完整的 11 个记忆文件(核心记忆/日记/对话日志/向量记忆/经历日志/情绪/需求)一键复制到你选的文件夹,附 `manifest.json` 清单,换电脑/重装随时带走;② **整体导入**:直接选整个记忆备份文件夹即可全部还原(缺的自动保留现有);③ **单文件迁移**:设置页 11 个文件槽,每个都支持**拖拽 / 粘贴路径 / 浏览选择**,填完即时校验(✓ 正常 / ⚠ 文件名不符 / ✗ 不存在);④ **安全**:向量文件必须与元数据对齐才允许导入(防记忆错乱),导入前自动备份当前记忆、失败自动回滚;导入后无需重启即生效。— 发布 v2026-08-17.1755(更新包 78,204,019 字节,SHA256 `53829893…D7842`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-17.1755
2026-08-17 14:28feat: 多渠道模型 + 截图查看桌面 + 修复无声问题
① **多渠道模型**:除 DeepSeek 外可切换小米 MiMo / 智谱 GLM / Kimi / 通义千问 / OpenRouter / Ollama 本地等任意 OpenAI 兼容渠道——设置页「AI 模型与密钥」选模板一键填充(API Key 自己贴)+「测试连接」验证;② **兼容小米 MiMo 多模态**:`mimo-v2.5` 支持文本/图像/音频/视频理解 + 工具调用,对话开箱即用;③ **截图查看桌面**:授权后(设置→智能功能→允许桌宠查看屏幕)对小黑说"看看我屏幕上有什么",它就能截取屏幕画面查看并回答你(仅多模态模型支持,截图只用于回答你);④ **修复无声问题**:根治 MCI 播放器 127 字符路径限制导致的"合成成功但无声"——安装在超长路径时自动转短路径播放(Win10/11 均适用)。— 发布 v2026-08-17.1428(更新包 78,181,920 字节,SHA256 `D10EA4C5…5E66C`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-17.1428
2026-08-17 10:10feat: 意识链 M1→M3——经历日志 + 情绪引擎 + 需求引擎(它开始"有自己的内心")
① **经历日志**:每次对话它会偷偷记录内心的想法(对用户隐藏,只进自己的日志),对话按主题打包成连续经历,回复时"带着自己的时间线",而不是只记得零散聊天记录;② **情绪引擎**:它拥有会随时间变化的真实心情(愉悦/唤醒双维度),被夸会开心、被冷落会低落,情绪会自然平复(不会永久卡死),并注入语气和内心独白——"它说的"和"它心里感受的"一致;③ **需求引擎**:它会有自己的欲望——"想被关注""无聊想玩""好奇想学""困了想睡"四类需求驱动它主动行为:太久没理它,它会因为想你而来搭话;无聊了会找你要一起玩;好奇时它自己安静地"学习"并写进日记;深夜困了就不打扰你;④ **重要经历自动向量化**:刻骨铭心的对话会被记入长期记忆,之后能自然想起。— 发布 v2026-08-17.1010(更新包 78,170,268 字节,SHA256 `060BB5DC…306D6E`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-17.1010
2026-08-16 16:50fix: 修复克隆音色卡"1~3 分钟"与无声——回显跨线程 + 详细运行日志
① **修复克隆一直转圈**:克隆结果回显原先在后台线程直接操作网页控件导致收不到结果,现改为安全转发,克隆成功/失败都会在设置页明确显示;② **修复潜在无声**:克隆不再强制依赖"智能功能区"的 API Key(自动兼容克隆配置里保存的 Key),只要配了 Key 即使不克隆也有默认音色播报;③ **新增详细运行日志**:克隆/合成/试听每一步都会写入 `data/deskpet.log`(含失败原因),设置→上报问题会自动携带该日志,帮我们远程定位问题。— 发布 v2026-08-16.1650(更新包 78,138,758 字节,SHA256 `CD462264…6EC240C`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-16.1650
2026-08-16 09:47feat: 语音播报重构——桌面程序直连阿里云克隆音色(WebSocket 实时合成),修复无声问题
① **修复"听不到语音播报"**:根因是阿里云实时合成返回的 WAV 头 RIFF/data 长度为哨兵值(未知长度),播放器打不开;现按实际长度修复头部,实测正常出声;② **移除本地语音中间层**:不再需要启动本地 python 适配器进程,桌面程序用内置 WebSocket 客户端直连阿里云克隆音色实时合成(Qwen-TTS-Realtime),低配置电脑也更省资源;③ **设置页一键配置**:填阿里云 API Key + 业务空间 ID + 参考音频 →「克隆音色」(约 1~3 分钟)→「试听」,全部在设置窗口内完成,首次调用即可配置;未配置克隆音色时自动使用云端默认音色,语音功能不断。— 发布 v2026-08-16.0947(更新包 78,122,060 字节,SHA256 `1ADAC6E2…B948E7`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-16.0947
2026-08-15 20:47refactor: 联网搜索升级为四引擎自动降级(Bing→360→搜狗→百度),不再依赖 Docker/SearXNG
① **去掉 Docker 依赖**:原联网搜索需要本地 SearXNG 服务(Docker 部署),未安装 Docker 时长期只走 Bing 单后端;本次重构为**纯直连四引擎 HTML 解析降级链**——Bing(主力,中文结果最佳)→ 360 搜索 → 搜狗 → 百度,逐个尝试,失败/无结果自动换下一个,开箱即用零配置;② **广告过滤**:百度跳过推广块(result-op)、Bing 跳过广告标记、360 跳过推荐块;③ 结果链接还原真实 URL(Bing 重定向 base64 解码 / 360 data-mdurl / 百度 mu 属性);④ 顺带改进 HTTP 客户端(浏览器 UA + 中文语言头)与 HTML 实体解码。— 发布 v2026-08-15.2047(更新包 78,111,538 字节,SHA256 `CF957A81…FCE40D`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-15.2047
2026-08-15 07:45feat: 内置 reasonix 外部 agent(指挥成熟 coding agent 干活)+ 统一消息队列(三渠道来源标签 + 语音通话排队)
① **内置 reasonix CLI**(v1.25.1,与用户桌面版完全隔离):主 agent 可派发复杂任务(改代码/写脚本/分析项目)给外部 coding agent 异步办理,桌宠不卡顿,结果稍后转述,微信任务结果自动回微信;② **统一消息队列**:微信/桌面/agent 反馈三渠道消息带来源标签排队处理,语音通话期间全部挂起、挂断后排空(积压超过 5 条自动合并摘要);③ 外部 agent 不可用时自动降级内置助手;超时(默认 1 小时)/结果截断/开关等限制全部可在 config.json 调整。— 发布 v2026-08-15.0745(更新包 78,106,776 字节,SHA256 `E2B94249…37C80A`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-15.0745
2026-08-14 20:58feat: 音色克隆自动检测 + 设置页入口(本地专属音色一键可用)
① **自动检测**:语音播报开启时自动探测本地音色克隆服务,检测到即优先用专属音色,未检测到自动用云端(无需改配置);② **设置页新增「音色克隆」卡片**:实时显示已连接音色/未检测到(引导双击 `启动音色复刻TTS.bat` 配置)/已关闭三种状态,开关即时生效。— 发布 v2026-08-14.2058(更新包 59,318,328 字节,SHA256 `FB6B7008…329B74`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-14.2058
2026-08-14 18:25fix: 语音通话(录音层 WASAPI 重写 + 无标点回复也能播报)+ 音色复刻首次使用体验
① **录音层 WaveIn→WASAPI 重写**:旧 MME API 在部分 Windows 上采集静音且关闭会卡死(导致"说话无反应 + 挂断卡死"),实测 WASAPI 采集正常;② **无标点回复也能播报**:LLM 流式回复没有句号时此前永不触发语音播放("有识别无声音"),现流结尾未播尾句也会播报;③ **音色复刻首次使用**:新增交互式引导(API Key/业务空间 ID/参考音频路径自动持久化)+ 双击 `启动音色复刻TTS.bat` 一键启动,并自动复用桌宠设置里的 API Key;④ 单实例保护(防重复启动卡死)。— 发布 v2026-08-14.1825(更新包 59,315,302 字节,SHA256 `945A84F0…ADF59A`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-14.1825
2026-08-14 15:34fix: 微信消息回复没有发回微信端 — sendmessage 字段对齐官方 send.ts
智能体已能收到微信消息,但 AI 回复只显示在桌面、微信端收不到。对比腾讯官方 send.ts 确认:发送消息 `message_type` 必须用 **2(BOT)**(此前误用 1(USER))、且必须带 `client_id` 和 `from_user_id`,缺失会被服务端拒发/不投递。已按官方补齐。— 发布 v2026-08-14.1534(更新包 59,313,607 字节,SHA256 `58B95147…A4B99`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-14.1534
2026-08-14 14:48fix(根治): 微信"未连接到智能体" — Authorization 请求头拼接畸形 + 补 notifyStart 连接状态上报
抓包实证找到真正根因:请求头末尾未以换行结尾,导致**登录后每个请求** `Authorization` 头被拼到上一行,HTTP 头畸形、服务端认证永远失败(自微信通道首版就存在)。已修复,并按腾讯官方实现补齐:`notifyStart`/`notifyStop`(微信端"已连接"状态控制)、`get_bot_qrcode` 改 POST 带 local_token_list、动态 baseurl、binded_redirect 处理。— 发布 v2026-08-14.1448(更新包 59,312,119 字节,SHA256 `7CB707E4…4628D`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-14.1448
2026-08-13 22:16fix: 微信通道仍"暂时无法连接" — 补齐腾讯官方 iLink 客户端标识请求头
v1540 后客户仍反馈无法收发。查证腾讯官方 openclaw-weixin 源码确认:每个请求必须携带 `iLink-App-Id: bot` 和 `iLink-App-ClientVersion`(版本号编码)两个客户端标识头,原代码缺失 → 腾讯服务端对 bot 会话收发拒绝/异常。已补齐并按官方实现对齐 base_info(channel_version 2.0.0 + bot_agent)、sendmessage 顶层 base_info、X-WECHAT-UIN 每次随机、长轮询 40s 超时。— 发布 v2026-08-13.2216(更新包 59,303,853 字节,SHA256 `297C186D…814C`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-13.2216
2026-08-13 15:40fix: 微信通道"暂时无法连接" — 扫码后自动启动收消息 + 回复带 context_token + 会话过期自动提示
客户扫码登录微信后给小黑发消息,微信端显示"暂时无法连接"。根因三层:① 扫码成功后若"启用微信通道"开关未开,收消息轮询不启动;② 回复不带腾讯要求的 `context_token` 被拒发;③ 服务器错误用 `errcode` 字段、代码只读 `ret`,会话过期(-14)被误判成功、永不提示重扫。— 发布 v2026-08-13.1540(更新包 59,276,906 字节,SHA256 `158DEB1F…56BC`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-13.1540
2026-08-12 18:47fix: 长气泡点击查看完整内容 — 修复点击「内容较长」提示无反应
气泡内容被截断时(显示「… 内容较长,点击查看完整内容」),点击气泡文字或点击提示本身均可弹出完整内容便签窗口——此前点击提示会穿透无反应;未截断时点击气泡仍打开聊天窗口。同时加固截断检测、补充排查日志。— 发布 v2026-08-12.1847(更新包 59,226,561 字节,SHA256 `130a6527…8ff8f`),已上传更新源,软件内检查更新即可获取;完整包同步更新至 v2026-08-12.1847
2026-08-12 16:30feat: 自我进化引擎 — 小黑会越用越聪明(后台反思 + 技能沉淀 + 确认门)
借鉴 Hermes Agent 的闭环学习机制,桌宠新增自我进化能力: 1. **后台反思**:每 5 轮对话后异步提炼经验——学到的事实、犯过的错(教训+修正)、可复用的流程,全部沉淀到 `data/evolution/` 2. **技能沉淀**:复杂子任务成功后自动固化为技能(SKILL.md),下次同类任务直接复用;新增 `list_skills` / `view_skill` 工具渐进式加载 3. **技能维护(Curator)**:技能 30 天未用标闲置、90 天归档,运行前自动备份可回滚,防技能库堆积 4. **写入确认门**:设置页「智能功能 → 🧬 自我进化」可开启"写入需确认",反思产物先进入待审批队列,逐条批准/拒绝后才生效 5. **设置页进化管理**:技能库可视化管理(删除/恢复)、已沉淀统计、「立即反思一次」「运行技能维护」按钮 — 发布 v2026-08-12.1630(zip 59,213,710 字节,SHA256 `4713ee2d…edacc`),已上传更新源,软件内检查更新即可获取
2026-08-12 15:30chore: 部署 v2026-08-12.1335 到线上更新源 + 修复 manual_update.bat 不同步
- 排查"更新校验失败"的加固版本(Updater 下载/校验失败自动重试,12:26 条目)与记忆迁移测试版本合并重打包为 **v2026-08-12.1335**(zip 59,150,155 字节,SHA256 `2cbb36e1…0077`) - 已 scp 上传 `deskpet-update.zip` + `version.json` 到 `/var/www/deskpet/`(**先 zip 后 version.json**,避免上传窗口期不一致) - **修复**:服务器 `manual_update.bat` 此前停留在 v0929 旧哈希(`dcbd31ed`),与新版本不
2026-08-12 13:23feat: 旧版记忆迁移功能补自动化测试(场景 9 + --import-only)
记忆迁移功能本体(`src/MemoryImport.h` 等)已于 2026-08-11 落地并在 HEAD 中,本次为其补齐可重复的自动化验证。 - **`src/test_agent.cpp`**:新增场景 9「记忆导入 (MemoryImport)」+ `--import-only` 命令行开关(跳过对话/API 场景,不消耗 token) - **测试覆盖 17 项**: 1. 构造旧版 data 目录(3 文本文件、无 bin)→ 导入 ok、3 文件全部复制 2. `embeddings_q.bin` / `embeddings_a.bin` 自动重算且大小 = 条数×dim×4
2026-08-12 12:26fix: 更新校验失败排查 + Updater 下载自动重试 + 发布 v2026-08-12.1217
用户反馈软件内点击更新显示"X:校验失败(SHA256 不匹配,文件可能损坏)"。 - 诊断时(v2026-08-12.0929)下载服务器 `deskpet-update.zip` 计算 SHA256 = `dcbd31ed…2e`,与当时 `version.json` 声明一致,zip 大小一致;`manual_update.bat` 硬编码 SHA256 也已同步 - 最可能根因: 1. **旧版客户端**(v2026-08-11.1303 之前,无下载截断检测):跨境网络下载 59MB 大包断流截断 → 误报 SHA256 失败,且卡在旧版无法通过软件内更新自愈 2. **发布上传窗口
2026-08-12 09:20feat: 智能体能力五连升级 + 设置页密钥集中 + 官网更新日志
- **`calc(expr)`**:本地递归下降求值(+ - * / 括号),含安全字符校验防注入,结果精确不靠 LLM 心算 - **`clipboard(op, text)`**:剪贴板读/写(read 截断 4000 字符防超限) - **`system_action(action, target)`**:打开网址/应用/文件(`open_url` 限定 http/https 防注入;工具描述要求"用户明确指令才执行") - **`todo_list(op, item)`**:待办清单 list/add/done/remove,持久化 `data/todo.json`(写入失败会报错)
2026-08-11 23:03feat: 写日记与做梦拆分 + 睡觉动画 (绿幕视频抠图)
- **`src/DreamAgent.h` 重构**:原"做梦"拆成两个独立动作 - **写日记** `writeJournal()` → `data/memory.md`(叙事化第一人称记忆,给主人看) - **做梦·整理核心记忆** `dreamCore()` → `data/core_memory.md`(简练事实,给 LLM 用) - 状态文件拆分:`last_journal.txt` / `last_dream.txt` 各自记录上次时间 - **智能触发时机**(替换原"每天凌晨 1-5 点固定触发"): - **写日记** `journalDue()`:有新增对话 + 距上次
2026-08-11 22:16feat: 做梦机制 + 小黑的日记 + 记忆活人感 + 设置页 Apple 风格
1. **新增做梦机制 `src/DreamAgent.h`**:桌宠像人一样在"睡眠"时消化一天的对话 - **日记**(`data/memory.md`):第一人称叙事化记忆,有情绪有细节,给主人看("今天主人夸我可爱,我超开心喵!") - **核心记忆**(`data/core_memory.md`):保持简练,只记事实,给大模型了解自己和用户用(复用 CoreMemoryAgent 整理) - 触发:Scheduler 每天凌晨 1-5 点自动触发(一天一次)+ **退出前兜底**(WM_DESTROY 时若 dreamDue 则同步做梦,20s 短超时只写日记防卡退出) - 状态:`
2026-08-11 19:33feat: 语音电话 MVP (本地 AI 通话)
用户可通过托盘菜单「📞 打电话给桌宠」拨打,接通后多轮连续语音对话,可语音打断、可挂断。 1. **`src/CallWindow.h`(新)+ `assets/web/call.html`(新)**:电话窗口(420×640)+ 通话界面(状态灯/计时/头像光环/挂断按钮) - 通话循环: 接通 → 录音(等用户) → VAD停 → ASR → chatVoice → 可打断 TTS → 继续录音 - 挂断(按钮/X/托盘菜单):停 TTS + 停录音 + 关窗;`g_callActive.exchange(false)` 防重入 - 语音打断: TTS 播放期间并行录音,用户说话(`g_s
2026-08-11 18:02feat: 桌宠时间观念 + 发布 v2026-08-11.1755
桌宠此前只有主动性思考注入裸时间戳,主对话/语音对话的 system prompt 完全没有时间信息(为 DeepSeek 前缀缓存优化被排除)。本次为三个对话入口全部注入时间观念: 1. **`src/Agent.h`**: - 新增 `formatDateTime(ts)`: 语义化时间 "2026-08-11(星期二)17:52,下午"(星期 + 时段: 凌晨/清晨/上午/中午/下午/晚上/深夜) - 新增 `timeAgoDesc(lastTs, now)`: 距上次对话间隔 "刚刚"/"2 分钟前"/"3 小时 25 分钟前"/"2 天前" - 新增 `buildTimeContex
2026-08-11 13:53fix: 完整安装包更新为 v2026-08-11.1303 (官网下载用户修复)
官网下载的完整安装包 `deskpet-full-2026-08-10.2312.zip` 内容过期, 新用户安装后会遇到: 1. **无 version.txt** → 本地版本被读为 "0", 检查更新永远提示下载 2. **exe 为旧版 (719KB, 08-11 08:55 打包)** → 含 POST 405 bug, 点检查更新直接报错无法自动更新 3. **web 资源过期** → 缺 note.html/marked.min.js/mathjax-tex-svg.js, settings/bubble 为旧版 (记忆迁移/便签功能缺失) - 基于旧完整包重建 `release
2026-08-11 13:20fix: manual_update.bat 健壮性加固 (review 后修复)
内置 review 审查后修复 3 处: 1. **杀进程补全**: 增加 `taskkill /IM updater.exe /F` — 用户点过内置更新时 updater.exe 可能挂着, 锁定 zip 内同名文件导致 tar 解压失败 2. **自愈提示**: tar 解压失败分支提示"重新运行本脚本可整体覆盖自愈"; 成功后 `del /q` 清理 51MB 残留 zip 3. **SHA256 自动同步**: `make_release.cmd` [5/5] 后新增 PowerShell 步骤, 将本次打包的 zip_sha256 自动写回 `tools/manual_update
2026-08-11 13:16tool: 手动更新脚本 (绕过桌宠内置下载, 解决跨境大文件断流)
用户更新 v1303 仍报 `SHA256 不匹配`。服务器排查全部正常:version.json `Cache-Control: no-cache` 生效、实测下载 zip 完整且 sha256 与 version.json 一致(a87861bd…)。根因在客户端:本地跑的是旧版本(无截断检测),51MB 更新包走新加坡跨境网络易断流,静默截断 → SHA256 失败 → 永远卡在旧版本,无法自我修复。 - **`tools/manual_update.bat`**:手动更新脚本,放到桌宠目录双击即可 1. 结束桌宠进程 2. 用系统 `curl -fSL --retry 3` 下载更新包
2026-08-11 13:06fix: 更新包下载截断误报 SHA256 失败 + 发布 v2026-08-11.1303
用户"下载并更新"时提示 `校验失败 (SHA256 不匹配, 文件可能损坏)`。实测服务器 zip 与 version.json 的 sha256 一致(curl 下载 51,765,271 字节完整),排除服务器问题。 `HttpClient::downloadToFile` 下载循环中,若网络中途断流(`WinHttpReadData` 失败或提前 EOF),循环正常 break 且**函数返回成功**——被截断的文件继续走到 SHA256 校验,于是报"校验失败"而非"下载失败",且重试无法定位问题。 - 下载结束后完整性检测:当 `Content-Length` 已知时,`downl
2026-08-11 12:55fix: 检查更新 405 错误 + 发布 v2026-08-11.1250
`Updater::fetchInfo` 用 `HttpClient::postJson`(POST)拉取 version.json,而新更新源 desktoppats.efsf.net 的 nginx 静态目录只接受 GET/HEAD → 返回 **405 Not Allowed**。此前服务器验证用 curl(GET)未暴露;旧更新源地址配置不同也未触发。下载 zip 的 `downloadToFile` 本就用 GET,不受影响。 1. **`src/HttpClient.h`**:新增 `getJson(url, timeoutMs)`(GET 请求读响应体,非 2xx 抛 `http
2026-08-11 12:16feat: 长气泡点击查看完整内容 (便签窗口 + Markdown/LaTeX 渲染)
桌宠输出过长时气泡仅显示前 6 行 (CSS line-clamp),用户需点击气泡查看完整内容;完整内容需支持 Markdown 与 LaTeX 渲染。 1. **气泡截断提示** (`assets/web/bubble.html`): - `isClamped()` 临时放开 line-clamp 量取完整高度,检测文本是否被截断 - 截断时气泡上方显示「… 内容较长,点击查看完整内容」小徽章 - 点击分流:文本被截断 → 发 `open-note`(带完整文本)打开便签;未截断 → 保留原行为打开聊天窗口 2. **便签窗口** (`src/NoteWindow.h`,新):置顶便签式窗
2026-08-11 11:58release: 发布 v2026-08-11.1154 (旧版记忆一键迁移) 到线上更新源
1. **更新包**:`tools/make_release.cmd` 生成 `release/deskpet-update.zip`(51,071,205 字节,含新 DeskPet.exe/updater.exe/onnxruntime DLL/web 资源/whisper 运行时)+ `release/version.json`(version=2026-08-11.1154,changelog=旧版记忆一键迁移-向量自动重算,sha256=7e798f6e…) 2. **上传**:scp 到服务器 `192.229.85.183:/var/www/deskpet/`(nginx no-
2026-08-11 11:47feat: 旧版记忆一键迁移 (记忆导入 + 向量自动重算)
旧版本桌宠无法自动更新时, 用户需手动迁移记忆文件; 原方案要求拷贝 5 个文件 (含 2 个二进制向量文件), 容易出错 (行号错位/漏拷)。 - 用户仅需迁移 **3 个文本文件**: `core_memory.md` / `vector_memory.jsonl` / `episodic.jsonl` - `embeddings_q.bin` / `embeddings_a.bin` 不再要求手动迁移: 它们是 jsonl 的派生数据, 导入后由本地 bge embedder 自动重算 (bin 已存在且条数匹配时直接复用) 1. **新增 `src/MemoryImport.h`**:
2026-08-11 09:20feat: 下载官网页面 Apple 风格改版
1. **新增 `website/index.html`**:DeskPet 下载官网源码(此前只存在于服务器,未纳入仓库),Apple 官网风格单文件页面: - 毛玻璃固定导航栏(saturate+blur,含下载快捷按钮) - 深色渐变 hero(浮动猫动画 + 胶囊蓝色下载按钮 + 版本信息) - 浅灰背景 6 卡片特性网格(hover 上浮动效) - 4 步使用说明卡片 + 系统要求 + 深色页脚 - 响应式(3/2/1 列自适应),无外部依赖,低配电脑流畅 2. **内容**:保留原页面全部信息(完整包 `deskpet-full-2026-08-10.2312.zip` 165MB
2026-08-11 09:05feat: desktoppats.efsf.net 下载页面 + 完整安装包
1. `release/deskpet-full-2026-08-10.2312.zip` (165MB, 压缩后):DeskPet.exe + updater.exe + onnxruntime DLL + `assets/` 全部(含 bge onnx 模型 + whisper 模型 188M)+ 模板 config.json(新域名 update_url)+ README.txt 使用说明 2. 排除:用户数据(data/userdata)、测试程序(test_agent.exe)、皮肤中间产物(_work/_raw_ai/备份)——打包时用 `--exclude='./assets/w
2026-08-10 23:14fix: 上报/更新安全加固 (安全审查后修复)
1. **busy 标志永久卡死**:`settings-send-report` 中 `v.at("description")` 在 `g_updateBusy.exchange(true)` 之后、异常被 catch 吞 → 上报与更新功能永久失效。修复:先解析 desc(try 保护)再置位 busy 2. **文件无大小上限**:`deskpet.log`/`episodic.jsonl` 无限增长后全量上传(内存双拷贝)。修复:收集时单文件 >10MB 跳过并记日志;`deskpetLog` 超 1MB 自动轮转 `deskpet.log.1` 3. **episodic.jsonl
2026-08-10 22:48feat: 更新源迁移至 desktoppats.efsf.net + 问题上报系统 + admin 查看
1. **新子域名 `desktoppats.efsf.net`**:DNS 已解析,nginx server block(443 HTTPS Let's Encrypt 证书 certbot 签发 + 静态 `/var/www/deskpet/` + `/api/report` 反代到 admin-portal :3004 + `client_max_body_size 20m`) 2. **更新源迁移**:`version.json` + `deskpet-update.zip` 移至 `/var/www/deskpet/`;新地址 `https://desktoppats.efsf.ne