A Chinese voice assistant for macOS and Windows that integrates speech recognition, LLM-based reasoning, tool calling, and text-to-speech synthesis. Supports local Whisper ASR, cloud-based Xfyun ASR, Claude/DeepSeek via OpenAI-compatible API gateway, and MCP tool integration.
HoloJarvis exhibits significant definition quality gaps. While 17 tools are defined with schemas and descriptions, most descriptions are brief (avg ~60 chars, well below the 194-char baseline for A+ tools). Parameter descriptions are sparse or missing entirely. Many tools lack enum constraints for string parameters (e.g., control_music 'action', system_power 'action', set_timer lacks bounds). No output schemas are documented. Error handling is minimal, most tools return simple success strings without recovery guidance. The codebase shows platform-specific implementations (macOS/Windows) but tool definitions do not expose this complexity or constraints to the LLM. Security concerns: run_shell accepts arbitrary commands with minimal guardrails; send_wechat and other UI automation tools lack permission gates or audit trails.
控制音乐播放(播放、暂停、下一首等)。
删除含某关键词的长期记忆。
获取当前时间和日期。
用 wttr.in 查天气(无需 API key)。
列出目录内容(给多步文件任务用)。
把文件/文件夹移到废纸篓/回收站(比 rm/del 安全,可恢复)。
打开一个应用程序,例如 微信、浏览器、备忘录/记事本、计算器、音乐。
在默认浏览器打开一个网址。
Missing enum constraints on string action parameters. control_music, system_power, and other tools accept free-form 'action' strings without declaring valid options (play|pause|next|previous for music; lock|sleep for power). LLMs will hallucinate invalid values.
No output schemas documented. Tools return plain strings or lists without declaring field types, structure, or what downstream tools can expect. LLMs cannot plan multi-step chains or extract structured data reliably.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
截取当前屏幕,把图片回传给大脑,让它"看"屏幕并总结/回答。返回的是一个内容块列表(含 image),会作为工具结果直接喂给 Claude 视觉。
把关于用户的一条事实/偏好写入长期记忆。
执行一条系统命令并返回输出(多步任务的万能手段)。macOS 走 shell(zsh),Windows 走 PowerShell。危险/批量/删除类操作应先经用户确认;删除请用 move_to_trash 而非 rm/del。
给微信联系人发消息。原理:用 UI 自动化操作 Mac 版微信——激活窗口 → Cmd+F 搜索联系人 → 回车打开会话 → 粘贴消息 → 回车发送。中文用剪贴板粘贴以保证可靠。需要"辅助功能"权限,且微信已登录。Windows 上走 winops.send_wechat。
设置一个定时器,在指定秒数后播放提示音和消息。
设置系统音量,范围 0 到 100。
控制系统电源状态(锁屏、休眠)。
截取当前屏幕并保存到桌面。
在浏览器里搜索某个关键词。
run_shell tool accepts arbitrary shell commands with minimal validation or confirmation. No dry-run, no permission gate, no audit trail. Agents can execute destructive commands (rm -rf /, format disk) without safeguards. Critical security gap.
Parameter descriptions are sparse or missing. set_timer 'message' param has a description, but most other params lack guidance on format, range, or constraints. E.g., set_volume 'level' lacks min/max bounds; list_directory 'path' lacks format guidance.
No error recovery guidance. Tools return success/failure strings without actionable next steps. E.g., 'open_app' returns 'no app found' but does not suggest search_apps or list available apps. Agents cannot self-correct.