Go to file
JOJO 8dda2dae66 feat: 自定义权限引导窗口
- 新增 PermissionGuideWindow 替代 NSAlert 权限引导
- 辅助功能用 AXIsProcessTrusted() 实时检测
- 输入监控因 macOS 15 API 限制标记为手动确认
- 每项权限有「打开设置」按钮跳转系统设置页
- 轮询刷新,辅助功能就绪后可关闭窗口启动
2026-05-01 02:24:54 +08:00
Agent fix(agent): 多模态工具过滤 + memory 新类型 + UI 优化 2026-04-30 21:09:08 +08:00
Dependencies/DynamicNotchKit feat: Agent 模式重大更新 — 稳定多轮对话、流式刘海、模型管理、交互优化 2026-04-29 16:42:46 +08:00
scripts feat: 朗读功能、弹窗优化、Node.js 打包、Prompt 更新 2026-04-29 18:22:14 +08:00
skills feat: RecordingPanel 宽度自适应 + 打包 DMG 2026-04-25 16:34:33 +08:00
Sources feat: 自定义权限引导窗口 2026-05-01 02:24:54 +08:00
.gitignore fix: Agent 配置路径统一到用户目录,修复工具异常和权限错误 2026-04-29 20:16:20 +08:00
agents-md-writer.skill feat: RecordingPanel 宽度自适应 + 打包 DMG 2026-04-25 16:34:33 +08:00
AGENTS.md docs: 更新 AGENTS.md 和 README.md,反映 Better Siri 改造 2026-04-30 18:21:39 +08:00
Makefile feat: 朗读功能、弹窗优化、Node.js 打包、Prompt 更新 2026-04-29 18:22:14 +08:00
Package.swift feat: Ask AI 刘海弹窗输出模式 2026-04-28 23:18:13 +08:00
README.md docs: 更新 AGENTS.md 和 README.md,反映 Better Siri 改造 2026-04-30 18:21:39 +08:00
VoiceInput-20260425.dmg feat: RecordingPanel 宽度自适应 + 打包 DMG 2026-04-25 16:34:33 +08:00

VoiceInput

macOS 菜单栏语音输入应用 —— 按住 Fn 键录音AI 帮你处理。

功能

三种模式(双击 Control 切换)

模式 图标 功能
Input 语音输入 🎤 语音转文字 + LLM 纠错 → 注入光标
Assist AI 助手 💬 语音提问 → AI 回复(弹窗 + 可选朗读)
Agent 个人助手 🤖 Better Siri — 多轮对话 + 记忆系统 + 工具调用 + 流式输出

Agent 个人助手亮点

  • 🧠 记忆系统:自动记住你的偏好、习惯、待办,跨对话持久化
  • 🖥 Mac 原生集成:充分利用 osascript、系统命令等 macOS 能力
  • 🎤⌨️ 统一弹窗:语音/打字输入使用同一刘海界面,按 Fn 即弹出
  • 📝 语音自动发送:说话内容自动填入输入框并发送(可关闭)
  • 💬 对话持久化对话自动保存启动时恢复token 计数跟踪
  • 🔄 自动新建对话token 超限时自动开启新对话(阈值可配)
  • ⚙️ 可定制身份:设置 AI 助手名字、语气、对你的称呼
  • 🔧 工具调用:读写文件、执行命令、网络搜索等

其他亮点

  • 🎤 按住 Fn 说话:全局监听,长按录音松开注入
  • 📝 流式识别Apple Speech Recognition 实时转录
  • 🌐 多语言:简中 / 繁中 / English / 日本語 / 한국어
  • 🪟 刘海弹窗AI 回复在 DynamicNotch 弹窗展示,支持复制和继续对话
  • 🔊 语音朗读macOS 原生 TTS 朗读 AI 回复Assist/Agent 可独立开关)
  • 🎚 实时波形5 条 RMS 驱动的球形波动画

系统要求

  • macOS 14+
  • 辅助功能权限(监听 Fn 键)
  • 输入监控权限Fn 键长按检测)
  • 麦克风权限
  • 语音识别权限

快速开始

make build   # 编译 + 生成 .app
make run     # 构建并启动
make dmg     # 生成分发包(自动清空 API Key

首次运行需授权辅助功能输入监控两个系统权限。

使用

  1. 点击任意文本输入框
  2. 双击 Control 切换到想要模式
  3. 按住键盘左下角 Fn / 🌐
  4. 说话,胶囊窗口显示实时转录
  5. 松开 Fn → 文本注入Input/AI 回复弹窗Assist/Agent

点击菜单栏图标可切换语言、模式或配置 LLM。Agent 模式下可从菜单进入助手设置记忆管理

三种模式详解

Input语音输入

语音转文字 → LLM 纠错(可选)→ 注入光标。适合日常输入。

AssistAI 助手)

语音提问 → LLM 回复。可选择直接注入刘海弹窗展示。 弹窗模式下可开启朗读AI 回复自动语音播报。

Agent个人助手 / Better Siri

语音或打字输入 → 多轮对话 → 工具调用 → 流式输出。 Agent 被设计为个人 Mac 助手,会自动记住你的偏好、习惯和待办, 熟练使用 macOS 原生能力(如 osascript、系统命令帮你完成任务。

记忆系统自动工作,跨对话持久化:

  • 你说"记住明天下午3点开会"→ Agent 记下待办
  • 你说"我不喜欢蓝色"→ Agent 记下偏好
  • 你下次问"给我推荐一个壁纸"→ Agent 自动避开蓝色

内置 Node.js 运行时,无需额外安装。

配置

模块 配置方式 存储位置
Input LLM 菜单栏 🎤 Input LLM → Settings UserDefaults
Assist LLM 菜单栏 💬 Assist LLM → Settings UserDefaults
Agent LLM + 助手设置 菜单栏 🤖 Agent LLM → Settings / ⚙️ 助手设置 ~/Library/Application Support/VoiceInput/
记忆管理 菜单栏 🧠 记忆管理 ~/Library/Application Support/VoiceInput/memory/

Agent 支持多模型配置,在 Settings 中添加/编辑/删除。覆盖安装不会丢失配置。

构建

make build      # Debug 构建
make release    # Release 构建
make run        # 构建并启动
make install    # 安装到 /Applications
make dmg        # 签名 + 创建 DMG自动清空 API Key
make clean      # 清理

项目结构

Sources/
├── App/           # AppDelegate + 菜单栏控制器
├── Core/          # 按键监听、语音识别、LLM、Agent 桥接、弹窗管理
├── UI/            # 浮动窗口、波形、设置面板、Agent 弹窗、记忆管理窗口
└── Utils/         # 配置持久化

Agent/              # Node.js CLI智能体运行时
├── bin/node        # 内置 Node.jsarm64
├── prompts/        # System prompt
├── src/            # bridge.js + 工具实现(记忆/身份/文件/命令/搜索等)
└── node_modules/   # npm 依赖

许可

MIT