Agent!:macOS 原生 AI 智能体
用原生 Swift 编写的 macOS AI 智能体,接入 23 家 LLM 与端侧 Apple Intelligence,可自主编码并操控任意 Mac 应用。
- 浏览
- 1
- 访问
- 0
- 下载
- 0
- 版本
- v1.1.97.297
- 平台
- macOS
详细介绍
项目简介
Agent!(AgentiLoop Agent)是一款 100% 原生 Swift 6.4 / SwiftUI 编写的 macOS AI 智能体。它把 23 家 LLM 提供方(Claude、Codex、OpenAI、Gemini、Grok、Mistral、DeepSeek、Hugging Face、Qwen、MiniMax、OpenRouter、Ollama(云端与本地)、vLLM、LM Studio 等)以及端侧 Apple Intelligence 接进一个自主任务循环。它不只是回答问题,还会真正动手:读取代码库、修 bug、构建 Xcode 工程、提交 diff、通过 Accessibility API 操控任意 Mac 应用、以普通用户或 root 身份执行 shell 命令、用 iMessage 把结果发给你,还能被一声「Agent!」唤醒。
没有 NPM、没有 Electron、没有订阅、没有遥测。可以自带 API Key、完全本地运行,或直接免费用 Apple Intelligence。
主要功能
- 自验证任务循环:推理、执行、观察结果并自我纠错;在
goal_state条件被标记并附上证据之前,任务不能宣称完成;可选开启 critic 先审查 diff。 - Agentic 编码:读取代码库,用字符串替换式 diff 修改代码,原生构建 Xcode 工程(错误可点击),管理 git,把仓库索引成可移植的 JSONL repo-map。每次编辑都会快照,可一键回滚或整任务
rewind_task。 - 桌面自动化:通过 Accessibility API(AXorcist)以元素为单位操控任意 Mac 应用,带模糊自动重试;同时支持 NSAppleScript、JXA 和 51 个 ScriptingBridge 应用桥接。
- AgentScript:运行期编译 Swift dylib 并在进程内
dlopen,脚本删除后进入.Trash可恢复。 - 特权执行:通过 Launch Agent 以当前用户身份执行 shell,或经你一次性授权的 Launch Daemon(SMAppService + XPC)以 root 身份执行。
- 语音:说「Agent!」加任务内容,使用端侧
SFSpeechRecognizer,静默约 2.5 秒后自动执行并循环监听。 - iMessage 远程控制:在 iPhone 上发「Agent! next song」即可操控,仅限已批准的发送者。
- 网页自动化:内置 Safari 自动化(JavaScript + AppleScript),可选 Selenium 与 Playwright MCP 做跨浏览器操作。
- 子智能体:最多 3 个并发(6 个只读)隔离智能体,支持邮箱式消息传递与单独指定模型。
- MCP:在 Settings → MCP Servers 粘贴 JSON 或填表添加任意 MCP 服务器,工具以
mcp_<server>_<tool>形式出现,支持 stdio 与 HTTP。 - 标签页、历史、记忆、计划、技能:每个标签页有独立项目目录与日志,持久化用户记忆,多计划清单会出现在每次提示中。
- 回退链:遇到 429、超时或网络失败时自动切换到下一个已配置的提供方。
安装与使用
-
从 Releases 下载
.dmg或.zip,拖进「应用程序」;也可以用 Homebrew:brew update && brew install --cask agentiloop-agent -
打开 Agent!,它会自动完成初始配置。
-
进入设置选择 AI 提供方并填入 API Key,然后直接输入想要完成的事即可。
官方发行版都由 CI 构建并经 Apple 签名、公证和 stapling,因此 Launch Agent 与 Launch Daemon 助手总能正常注册。
想改源码时再从源码构建:
git clone https://github.com/AgentiLoop/agent.git
cd agent
./build.sh Release
注意事项
- 需要 macOS 14.6 或更高版本,同时支持 Apple Silicon 与 Intel。
- 从源码构建有两种方式:Xcode 里设置 Development Team 后运行
Agent!scheme(可正常注册助手);或只用 Xcode Command Line Tools 跑./build.sh。后者是 ad-hoc 签名,Launch Agent/Daemon 助手不会注册(SMAppService 需要 Team ID),但 LLM 循环、各工具、Accessibility、AppleScript、shell 和 MCP 仍可用——需要助手就直接装官方签名发行版。 ./build.sh的参数区分大小写:./build.sh为 Debug,./build.sh Release为 Release。- iMessage 远程控制需要为
chat.db授予完全磁盘访问权限。 - 想跑本地模型,消费级硬件(64–128GB Apple Silicon + Ollama)目前只有 GLM-4.7-Turbo(32B)能装下;追求低成本可用 Z.ai 的 GLM-5.3。
- 若拉取代码后出现莫名的
BUILD FAILED,先清理陈旧缓存:./build.sh clean && ./build.sh。
本作品整理自 GitHub 开源项目 AgentiLoop/Agent,原作者 @AgentiLoop。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v1.1.97.297当前版本
修复 macOS 27.2 上主窗口无法拖动的问题,改为启用 isMovableByWindowBackground,拖拽窗口背景即可移动;同时调整工具栏布局,状态项靠左、操作按钮靠右,中间使用原生弹性间隔。
评论