简介
DesktopFriends 是一个开源的 Live2D 桌面宠物应用,让你可以将闲置的旧手机变成可爱的桌面伙伴。
主要特性
🤖 AI Agent 系统
- 自研 ReAct 引擎,从零构建的智能体
- 支持 OpenAI / Claude / DeepSeek / 自定义 API
- 流式响应,逐字输出到聊天气泡
- Markdown 渲染(粗体、代码块、列表)
- Function Calling 控制宠物表情和动作
- 认知系统(内心独白 + 选择性回复)
- 客户端直接调用 LLM API,无需后端中转
🎭 Live2D 支持
- 支持加载自定义 Live2D 模型
- 流畅的动画和表情切换
- LLM 增强的模型分析器,自动识别动作含义
⏰ 时间表系统
- 宠物自主创建每日计划
- 心跳定时器(60秒)到期自动执行
- 用户可以让宠物设置提醒
- 支持每日重复和一次性条目
📱 多设备联动
- 手机端与电脑端均可开启房间(中继服务器)
- 局域网自动发现,搜索房间(mDNS)
- 信息实时同步并共享
🧩 小组件系统
- 时钟 / 相册 / 天气 / 待办事项
- AI Agent 可通过工具调用操控小组件
工作原理
┌─────────────────┐ Socket.IO ┌───────────────────────┐
│ 中继服务器 │ ◄───────────────► │ 应用端 (手机或者电脑) │
│ Relay Server │ WebSocket │ Live2D + AI Agent │
└─────────────────┘ └───────────────────────┘
│
│ 直接调用
▼
┌─────────────────┐
│ Cloud LLM API │
│ OpenAI/Claude/ │
│ DeepSeek/Custom │
└─────────────────┘- 应用端:手机/电脑运行 Live2D 应用 + AI Agent 引擎
- AI 调用:客户端直接调用 LLM API(在设置中配置 API Key)
- 中继服务器:仅用于多宠物间的通信,不经手 AI 请求
- 通信:通过 Socket.IO 在局域网内实时通信