v0.27.0
v0.27.0 — 六个新工具 + 四个工具强化 + 工程加固
新增工具(55 → 61)
create_calendar_event日历日程:AI 帮你安排会议/日程(打开日历预填标题、时间、时长、地点,你确认后保存),无需任何权限get_app_usage应用使用时长:回答「我今天用了多久手机」「哪个应用用得最多」(需「使用情况访问」权限,含引导)unit_convert单位换算:长度/重量/温度/面积/速度/数据/时间,支持「公斤→磅」「摄氏度→华氏度」等中文说法,精确换算search_contacts联系人搜索:按姓名查号码(需通讯录权限,已加授权入口),配合拨号工具一句话打电话list_files/read_text_file文件浏览与读取:查看下载/文档目录中的文件与文本内容(安全白名单目录,≤1MB)
工具强化
- device_info:新增 CPU 核数、内存占用、屏幕分辨率/DPI、充电状态、开机时长
- set_volume:支持指定音量类型(媒体/铃声/通知/闹钟/通话)
- list_installed_apps:显示应用版本号
- get_weather:新增能见度、紫外线指数、降水量
工程与体验
- 界面文案国际化补全:25+ 处此前遗漏的通知/错误提示(含 401/429/超时等错误映射)全部支持中英切换
- 安全加固:网页读取拦截内网地址(SSRF 防护);提醒 ID 改用原子生成器(消除同毫秒冲突);外部分享文本长度限制
- CI 上线:GitHub Actions 自动跑单元测试与双版本构建,每次提交自动验证
SHA-256:
- full:
1e1925c30a4270823e18d397a1dd73ab7ccae07fd314158eca46ac160ee90d29 - lite:
3d80bd4df47925c8e47aa2dd49c4d320da3bb7b593200a541bcb7641cc0a3742
v0.27.0 — Six new tools + four upgrades + engineering hardening
New tools (55 → 61)
create_calendar_event: the AI schedules events for you (opens the calendar pre-filled with title/time/duration/location; you confirm and save) - no permissions neededget_app_usage: answers "how much phone time today" / "which app did I use most" (Usage access required, with guidance)unit_convert: length/weight/temperature/area/speed/data/time, including Chinese phrasing like 公斤→磅, with exact factorssearch_contacts: look up phone numbers by name (Contacts permission with a new Settings entry); pairs with the dialer toollist_files/read_text_file: browse and read files in Downloads/Documents (safe allow-listed directories, ≤1MB text)
Tool upgrades
- device_info: CPU cores, memory, screen resolution/DPI, charging state, uptime
- set_volume: stream selector (media/ring/notification/alarm/call)
- list_installed_apps: shows app version
- get_weather: adds visibility, UV index, precipitation
Engineering & UX
- i18n completion: 25+ previously hard-coded notifications/errors (including the 401/429/timeout error mapping) now follow the language setting
- Security hardening: SSRF guard blocks private-network URLs in web fetching; reminder IDs use an atomic generator (no same-millisecond collisions); shared-text length capped
- CI online: GitHub Actions runs unit tests and both flavor builds on every push
SHA-256:
- full:
1e1925c30a4270823e18d397a1dd73ab7ccae07fd314158eca46ac160ee90d29 - lite:
3d80bd4df47925c8e47aa2dd49c4d320da3bb7b593200a541bcb7641cc0a3742