macOS 实战:用 Swift + AppleScript 实现全局快捷键直达 ChatGPT / Claude / Gemini

摘要: 每天在浏览器翻标签页找 AI 47 次,在终端 cd 路径启动 Claude Code 37 次------这些重复操作累积起来消耗大量注意力。本文介绍如何用 Swift + AppKit + AppleScript 实现一个 macOS 菜单栏工具,通过全局快捷键 ⌥Space 一键发送消息到任意 AI,附完整技术方案。

背景

昨天数了一下自己的操作:浏览器里找 AI 标签页 47 次,终端里 cd 到项目路径 37 次。每次只花几秒,但一天下来就是 84 次注意力中断。

痛点一:Web AI 切换效率低。 订阅了 ChatGPT、Gemini、Monica 等多个 AI 产品,每次使用都需要切到 Chrome 翻标签页。工作场景分散在 IDE、终端、文档等应用中,频繁切换浏览器打断工作流。

痛点二:Claude Code 启动流程繁琐。 Claude Code 是目前最强的 AI 编程助手,但每次启动都是「打开终端 → cd 到项目路径 → 输入 claude」。项目多了路径记不住,每天 cd 几十次。

这两个操作单次耗时不长,但日积月累消耗大量注意力。

解决方案

GroAsk 的核心思路:把所有 AI 的启动路径缩短到一个快捷键。

功能一览

功能 说明
⌥Space 全局唤起 在任何应用中按快捷键弹出输入框
多 AI 统一入口 Tab 键切换 ChatGPT / Claude / Gemini / DeepSeek 等
划词即问 选中文本按快捷键,自动填入并发送给 AI
Claude Code 一键启动 图形化选择项目目录,自动在终端打开
本地桥接 AppleScript 操控本地浏览器和终端,无数据上传

技术实现

技术栈: Swift + 纯 AppKit(非 Electron)

Web AI 通道: AppleScript 异步队列定位 / 打开 Chrome 标签页 → 注入 JavaScript 脚本填入文本 → 模拟发送操作。每个 AI 网站的注入脚本单独维护,适配各站 DOM 结构。注入脚本支持服务端热更新。

CLI 通道: 检测本地终端环境(Terminal.app / iTerm2),自动拼接 cd + claude 命令执行。支持终端别名自动补全。

隐私设计: 不接触任何对话内容,消息通过 AppleScript 直接交给用户本地浏览器或终端处理。

开发过程

两周完成,一人开发,Claude Code 辅助。从 Apple 开发者注册到前后端部署全部独立完成。Claude Code 生成了约 70% 的代码,我负责架构设计和用户体验。

适用场景

  • 每天使用多个 AI 工具,需要高频切换的开发者
  • Claude Code 用户,不想每次手动 cd 到项目路径
  • 想体验 Claude Code 但被命令行门槛挡住的用户

目前完全免费,macOS 专属。


免费下载:groask.com/zh/

AppleScript 操控浏览器这块坑不少,有做类似方案的朋友欢迎评论区交流。

相关推荐
counterxing2 天前
最近发现一个 Mac 工具,有点像把 Raycast、语音输入法、截图和录屏塞到了一起
macos·ai编程·claude
AI工程效率栈3 天前
AI 帮你补异常处理时,新人最容易犯的错:把失败悄悄变成成功
gpt·chatgpt
凌奕6 天前
让你的 AI 编程助手「偷懒」:50k Star 的 Ponytail,让 Agent 少写一半代码
chatgpt·agent·claude
元Y亨H9 天前
MacBook Air 开发神器:IDEA 与 PyCharm 极简安装及环境配置
macos
yuanyxh10 天前
macOS 应用 - 纯对话生成
前端·macos·ai编程
AI创界者12 天前
PilotTTS 一键整合包(Win/Mac):8G 显存畅跑,实测解锁情绪与副语言的精准控制
人工智能·macos·aigc·音视频
星落zx12 天前
Spring Boot 多模型集成:优雅调用全球主流大模型
人工智能·spring boot·chatgpt
AirDroid_cn12 天前
系统终端与iTerm2字体看起来不一样?macOS Sequoia统一渲染指南
macos
爱读书的小胖12 天前
无偿分享ChatGPT Image 2画图网页与并发绘图python程序【Ai绘图】
开发语言·python·chatgpt
码农小旋风12 天前
Claude Code 基础用法大全:对话、分析、修改、测试、Git 和工作流
人工智能·git·chatgpt·claude