清理废弃模块并完善测试基础设施

This commit is contained in:
2026-07-17 23:49:45 +08:00
parent d0d1de4d00
commit 90262aaf6d
102 changed files with 1711 additions and 8175 deletions
+8 -33
View File
@@ -1,6 +1,6 @@
# QtDesktopPet
一个基于 **Qt 6 Widgets / C++17** 的 Windows 桌面宠物项目。它提供透明桌宠窗口、PNG 序列帧动画、多状态切换、托盘控制、AI 对话、本地提醒、天气查询、简单文件操作和本地应用启动等能力。
一个基于 **Qt 6 Widgets / C++17** 的 Windows 桌面宠物项目。它提供透明桌宠窗口、PNG 序列帧动画、多状态切换、托盘控制、AI 对话、AI 原生联网、本地提醒和天气查询等能力。
> 当前仓库仍处于活跃开发阶段。角色素材、图标和音效的再分发权限需要在正式公开发布前单独确认。
@@ -31,30 +31,13 @@
- Open-Meteo Forecast API
- Open-Meteo Geocoding API
- 默认城市、公网 IP 定位兜底、多候选提示
- 本地文件操作 v1:
- 读取文本文件
- 列出文件夹
- 复制、备份、重命名
- 写操作前二次确认
- 本地工作区 Agent v1b:
- 用户选择工作区后扫描并建立内存索引
- 搜索文件名、搜索文本、读取工作区文本文件
- 项目结构摘要和文件内容总结
- 独立 Agent 窗口展示文件结果、文本命中、上下文、任务对话和详情预览
- 支持右键菜单、托盘菜单和默认 `Alt+A` 呼出窗口
- 打开工作区内普通文件、打开文件夹、显示文件所在位置
- 不执行命令,不创建/修改/移动/删除文件
- 应用启动 v1:
- 聊天触发打开本地应用
- 支持已登记应用、开始菜单快捷方式和用户手选 `.exe`
- 启动前二次确认
- Windows 发布脚本和 Inno Setup 安装器脚本。
## Platform
当前主要目标平台是 Windows 10 / Windows 11。
项目中已有部分跨平台基础代码,但托盘通知、开机自启动、应用发现和安装器体验目前按 Windows 优先实现。
项目中已有部分跨平台基础代码,但托盘通知、开机自启动和安装器体验目前按 Windows 优先实现。
## Tech Stack
@@ -83,8 +66,6 @@
│ ├── assistant/ # Intent routing and command dispatch
│ ├── character/ # Character package loading and animation
│ ├── config/ # Config persistence
│ ├── fileops/ # Local file operations
│ ├── launcher/ # Local application launcher
│ ├── notification/ # Notification dispatch
│ ├── reminder/ # Reminder parser/store/scheduler/sounds
│ ├── state/ # Pet state machine
@@ -93,9 +74,8 @@
│ ├── ui/ # Widgets and main pet window
│ ├── util/
│ ├── weather/
│ ├── web/ # AI-native web mode
│ └── workspace/ # Read-only local workspace agent
└── tools/ # Packaging and diagnostic scripts
│ └── web/ # AI-native web mode
└── tools/ # Packaging and public-export scripts
```
## Build
@@ -155,7 +135,6 @@ Examples:
- Reminders: `reminders.json`
- Weather config: `weather_config.json`
- Web mode config: `web_config.json`
- Launcher config: `launcher_config.json`
The app writes rotating logs under:
@@ -177,14 +156,10 @@ Important notes:
## Safety Boundaries
The project intentionally keeps local automation conservative:
- File operations require user-selected paths.
- Write operations require confirmation.
- File operations do not execute scripts or commands.
- Application launch only supports `.exe` and Start Menu `.lnk` shortcuts.
- Chat text is not converted into shell commands.
- Startup integration writes only the current user's Windows `Run` entry.
- The application does not read, search, create, modify, move, or delete local files through chat.
- It does not launch local applications or convert chat text into shell commands or scripts.
- Windows startup integration only manages this application's current-user `Run` entry.
- AI and web requests are sent only to providers configured by the user.
## Web Mode